Agile development makes elephants dance

2,132 views
2,097 views

Published on

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,132
On SlideShare
0
From Embeds
0
Number of Embeds
594
Actions
Shares
0
Downloads
44
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Agile development makes elephants dance

  1. 1. Agile Development<br />Makes the Elephants Dance<br />Ethan Huang<br />
  2. 2. 敏捷开发 – 让大象跳舞<br />黄方<br />
  3. 3. Ground Rules<br />Mute your cell phone<br />Participate – ask and answer questions<br />3<br />
  4. 4. 博克软件(杭州)有限公司<br />
  5. 5. About Perficient (NSDQ:PRFT)<br />A leading information technology consulting firm serving clients throughout the United States <br />Perficient GDC – the 1st Agile/CMMI 5 company in China<br />1 CST, 3 CSP, 30 CSD, 90+ CSM in GDC<br />5<br />
  6. 6. About me<br />黄方 (Ethan Huang)http://www.linkedin.com/pub/ethan-huang/b/808/9ab<br />Project Manager in Perficient GDC<br />10 + years development/management experience<br />Waterfall, RUP, MSF, Agile/Scrum<br />Certified Scrum Master/Certified Product Owner<br />Certified Scrum Developer<br />Certified Scrum Professional<br />PMP<br />6<br />
  7. 7. Warm up<br />What is your DREAMsoftware development project?<br />7<br />
  8. 8. The REALITY <br />Chaos Report 2009 The Standish Group<br />8<br />
  9. 9. The REALITY <br />9<br />
  10. 10. Traditional Process Lifecycle Models<br />Waterfall<br />Spiral<br />IBM RUP (Rational Unified Process)<br />10<br />
  11. 11. It works!<br />11<br />In some specific industries:<br />Military<br />Space development<br />…… <br />
  12. 12. Traditional process characteristics<br />12<br />Sequential activities<br />Complicated<br />Big design upfront<br />Documentation/workpiece driven<br />Depends on having little changes<br />
  13. 13. It doesn’t work for all the software projects<br />13<br />
  14. 14. What do you feel if you join a project like this<br />14<br />Lasts for 48 months<br />Well defined procedures<br />6 months for “Envisioning”<br />Hires 50 engineers<br />Releases every 6 months<br />1 ton of design documents<br />
  15. 15. Challenges<br />15<br />that I was, am, but I wish would not be facing:<br />Requirement changes everyday<br />Documents are never read by the engineers<br />No workpiece is perfectly done<br />Risks keep increasing over time<br />Bad quality<br />Over budget<br />The project makes team down<br />People are leaving<br />We work 60 hours/week<br />And the client is never, ever satisfied !!<br />
  16. 16. The elephant’s death march<br />16<br />
  17. 17. A real story<br />17<br />A fixed-fee contract – budgeted 350 men/months<br />5 people spent 2 months for the requirement<br />Architecture/design took 2 months<br />The team developed for 5 months<br />Imagine what happened 6 months later in our first demo meeting<br />……<br />
  18. 18. Retrospective<br />18<br />Bad quality<br />Team silos<br />Over budget<br />
  19. 19. Why we fail?<br />19<br />Against changes<br />Heavy up-front design losing the agility<br />Focused on procedures and workpieces, instead of people<br />Lost communication/cooperation/interaction with the client<br />
  20. 20. And it’s happening everywhere on this planet…<br />20<br />
  21. 21. Adaption…<br />21<br />
  22. 22. Agile Manifesto - 2001<br />22<br />http://agilemanifesto.org<br />http://agilemanifesto.org/iso/zhchs/<br />
  23. 23. Agile manifesto<br />23<br />Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a plan<br />个体和互动 高于 流程和工具工作的软件 高于 详尽的文档客户合作 高于 合同谈判响应变化 高于 遵循计划<br />
  24. 24. Agile methodology adoptions<br />24<br />MSF (Microsoft Solution Framework) Process Model<br />XP (Extreme Programming)<br />Lean<br />Kanban<br />Scrum<br />
  25. 25. Agile development characteristics<br />25<br />Iteratively incremental development – time boxed<br />Emergent requirement – embrace changes<br />JIT (Just in-time) planning, design and documentation<br />Cross-functional team<br />Emphasizes face-to-face communication<br />Full transparency and visibility<br />Frequently inspect and adapt<br />Anti management pyramid<br />Simple is beautiful<br />
  26. 26. Scrum overview<br />26<br />
  27. 27. Scrum Framework<br />27<br />
  28. 28. Scrum on one page<br />28<br />
  29. 29. Low-tech tools are preferred<br />29<br />
  30. 30. A real Scrum<br />30<br />Sprint 0 –defined the project, focusing on the short term goal, <br />establish environment, etc<br />
  31. 31. A real Scrum<br />31<br />Sprint 1 – started from the most valuable “User Stories”<br />
  32. 32. A real Scrum<br />32<br />Sprint 2 – the client provided some feedback (changes), re-order <br />our “Product Backlog” and adjust the plan<br />
  33. 33. A real Scrum<br />33<br />Sprint 3 – “velocity” increased, need more work to fulfill our <br />capacity<br />
  34. 34. A real Scrum<br />34<br />Sprint 4 – encountered road blocker, Sprint failed <br />
  35. 35. A real Scrum<br />35<br />Sprint 5 – Team made adaption after “retrospective”<br />
  36. 36. A real Scrum<br />36<br />Sprint 6 – came back to normal<br />
  37. 37. A real Scrum<br />37<br />Sprint 8 – was coming towards to the end…<br />
  38. 38. A real Scrum<br />38<br />Sprint 9 – delivered all the highest value requirements<br />
  39. 39. No specific engineering practices are required<br />39<br />However, we do have some recommendations:<br />Automated Testing<br />Unit Testing<br />TDD (Test Driven Development)<br />TDR (Test Driven Requirement)<br />CI (Continuous Integration)<br />UML & Design Patterns<br />
  40. 40. Success still depends on good project management skills<br />40<br />RID – Risks, Issues, and Dependencies<br />Cost management<br />People management – coaching and mentoring<br />Scope management<br />Scheduling & estimation<br />Quality<br />Communication<br />
  41. 41. Scrum project pyramid<br />41<br />
  42. 42. How Agile saves the elephants<br />42<br />Respect to the changes<br />Short iterations and short term goal<br />Inspect and adapt often<br />Communication and cooperation with the client<br />JIT planning, design and documentation<br />Simple<br />
  43. 43. However…<br />43<br />Agile development is not the silver bullet,<br />Great people make this world different.<br />
  44. 44. Takeaways<br />44<br />Agile development is not just a new way to write code<br />It’s a combination of practices, process and management skills<br />Agile characteristics<br />Scrum framework overview<br />
  45. 45. Thank you!<br />45<br />

×