Introduction to Agile Methodologies

7,525 views

Published on

An introduction to agile methodologies. Most slides require the audio narration to make sense though.

Published in: Business, Technology

Introduction to Agile Methodologies

  1. 1. Introduction to Agile Methodologies Siddharta Govindaraj Silver Stripe Software Pvt Ltd siddharta@silverstripesoftware.com http://www.silverstripesoftware.com/blog/
  2. 2. 1. Time to market and quality are more important than ever before 2. Requirements stability is a thing of the past
  3. 3. Program Managers want to improve software delivery in this ever changing environment
  4. 4. Traditional processes are too rigid to address these concerns US Army Photo, NASA logo from website
  5. 5. Agile software development is creating new ways of developing and delivering software Photos by Simon Baker
  6. 6. Scrum Extreme Programming Feature Driven Development Lean Software Development DSDM Crystal Image by Mary R Vogt
  7. 7. We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more.
  8. 8. Lets compare traditional and agile approaches to software development 1. Requirements 2. Scheduling 3. Quality
  9. 9. Do you really know that you are building the right software? 1. Requirements 2. Scheduling 3. Quality
  10. 10. 1. Requirements 2. Scheduling 3. Quality
  11. 11. 1. Requirements change midway or can be unclear 2. There is only one person who has any clue what the software should do (and it's usually not you) 1. Requirements 2. Scheduling 3. Quality
  12. 12. Traditional Processes... Try to restrict change Try to create predictive plans Agile Processes... Try to embrace change Try to be adaptive 1. Requirements 2. Scheduling 3. Quality
  13. 13. How well do you know the current state of the project? 1. Requirements 2. Scheduling 3. Quality
  14. 14. Traditional processes are structured in phases Requirements Design Coding Test Deploy 1. Requirements 2. Scheduling 3. Quality
  15. 15. Agile processes are structured by feature R D C T D 1. Requirements 2. Scheduling 3. Quality
  16. 16. Traditional Processes... Harder to measure progress Agile Processes... Easier to measure progress 1. Requirements 2. Scheduling 3. Quality
  17. 17. What is the quality level of your project? 1. Requirements 2. Scheduling 3. Quality
  18. 18. Traditional processes do testing at the end of the project (it's too late!) 1. Requirements 2. Scheduling 3. Quality
  19. 19. Agile processes embrace continuous testing, integration and reviews 1. Requirements 2. Scheduling 3. Quality
  20. 20. Practices like pair programming, unit testing, continuous integration and automated tests keep quality level high 1. Requirements 2. Scheduling 3. Quality
  21. 21. Can companies adapt to the new market?
  22. 22. New requirements present new opportunities
  23. 23. Agile software development enables companies to take advantage of these opportunities
  24. 24. Epilogue Being agile is a mindset that you have, not a set of practices that you do
  25. 25. Some Practices To Discuss . Timeboxed iterations . Co-located teams . Frequent releases . Team focus . Retrospective . Small teams . Regular feedback . Cross functional teams . On-site customer/expert . Pair programming . Open workspace . Appropriate documentation . Self organising teams . Refactoring . Truck factor . User stories . Feature prioritization . Burndown charts . MoSCoW prioritization . Daily standup meeting . Adaptive scope . Agile (velocity) estimation . Test driven development . T-shirt estimation . Automated testing . Delphi estimation . One click build . Planning poker . Continuous integration
  26. 26. That's It! Thank You! Siddharta Govindaraj Silver Stripe Software Pvt Ltd siddharta@silverstripesoftware.com http://www.silverstripesoftware.com/blog/

×