Download
agile software development n.
Skip this Video
Loading SlideShow in 5 Seconds..
Agile Software Development PowerPoint Presentation
Download Presentation
Agile Software Development

Agile Software Development

1 Vues Download Presentation
Télécharger la présentation

Agile Software Development

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Agile Software Development By Kshitij Limaye CSC 532

  2. Current Software Development Situation • Systems are regularly delivered late and over budget • Customer hardly works with developers after the requirements phase. • In radically changing market it is not possible to gather customer requirements that are stable and unchanging • Customer is not always sure of what he wants

  3. Problems with Traditional Processes Concept design Product and feature specifications Coding Testing Response Time DESIGN FROZEN START END Problem: When the market/technology advances at a faster pace than you can respond [3]

  4. Agile Method A method of software development that aims for customer satisfaction through early and continuous delivery of useful software components[1]

  5. Uncertain Environments Stable Environments: Traditional Approach Uncertain Environments: Agile Approach (Iterative) Source [3]

  6. Key Differences • Agile methods are adaptive rather than predictive • Agile methods are people oriented rather than process oriented.

  7. Agile Process Philosophy • Individuals and interactions over processes and tools. • Working software over comprehensive documentation • Customer collaboration over contract negotiations. • Responding to change over following a plan.

  8. Individuals & Interactions • Face to face meetings lead to faster transfer of ideas & quicker response. • Pair Programming • Individual not a replaceable part of system • Team takes technical decisions

  9. Working Software • Source code is most important document. • Working model makes understanding better. • Simplicity approach in XP. • Maintainers normally go through source code first.

  10. Customer Collaboration Vs Contract Negotiations • Preference to fixed price contracts. • Customer on site. • Customer has finer control over the project. • Different kind of business model needed. • Definition of Success

  11. Responding to change • Responding to change than following laid out plan • In predictable processes, difficulty in mapping new requirement to additional cost. • Iterative approach • Teams with onsite customer produce better code.

  12. Examples of Agile processes • Extreme Programming • Crystal • Adaptive software development • Feature driven development • Dynamic systems development method

  13. Implementing Agile Processes • Job profiles will change, so resistance. • Management is also uncomfortable with agile processes. • agile processes decisions are not experimentation.

  14. Conclusion: When go agile? • Uncertain & volatile requirements. • Responsible & motivated developers • Customers who understand and willing to get involved.

  15. References • Manifesto for Agile software development; http://agilealliance.com • New methodology; Fowler; Martin; http://www.martinfowler.com/articles/newMethodology.html • Agile software development: Evidence from the field. Alan MacCormack http://www.agiledevelopmentconference.com/2003/ files/AlanAgileSoftwareJun03.ppt

  16. Q & A