Your SlideShare is downloading. ×
0
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Agile NCR 2009\Agile Project Management - Facing the Challenges of Distributed Development using Agile

1,495

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,495
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
58
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Agile Project Management - Facing the Challenges of Distributed Development using Agile - Mayank Gupta
  • 2. Time for Introduction <ul><li>Working w ith GlobalLogic India </li></ul><ul><li>Practicing Agile for last 3 years </li></ul><ul><li>Certified CSM, CSP, OCP and ISTQB professional </li></ul><ul><li>Published Articles in Scrum Alliance &amp; CM Journal </li></ul><ul><li>Blog - http://thought-reader.blogspot.com/ </li></ul>
  • 3. Agenda <ul><li>Food for thought </li></ul><ul><li>Agile – Does it work? </li></ul><ul><li>Distributed Agile – Issues and success factors </li></ul><ul><li>Distributed Scrum styles </li></ul><ul><li>How to keep the rhythm </li></ul><ul><li>Engineering solutions </li></ul><ul><li>Examples and case studies </li></ul><ul><li>Questions </li></ul>
  • 4. Food for thought <ul><li>The question isn’t whether Agile can be applied to Distributed projects or not </li></ul><ul><li>It’s more! </li></ul><ul><li>Can Distributed projects afford not to apply Agile practices? </li></ul>
  • 5. Agile – Does it work? <ul><li>Everybody says that Agile works for ideal scenario </li></ul><ul><li>Small teams </li></ul><ul><li>Collocated teams </li></ul><ul><li>When customer is available to team all the time </li></ul><ul><li>What about real scenario? </li></ul><ul><li>Big teams </li></ul><ul><li>Globally distributed teams </li></ul><ul><li>Large projects </li></ul><ul><li>When real customer is not available to the team </li></ul>
  • 6. Distributed Agile <ul><li>Large/distributed projects are very high risk </li></ul><ul><li>Standish chaos report </li></ul><ul><ul><li>31.1% projects get cancelled before they get completed </li></ul></ul><ul><ul><li>52.7% projects get completed but cost almost double of their original estimates </li></ul></ul><ul><ul><li>16.2% projects are completed on time on budget </li></ul></ul><ul><li>Today&apos;s prevailing trend – geographical </li></ul><ul><li> diversification </li></ul><ul><li>Exponential Demand for complex functionality along with ease of use, scalability, reliability, and maintainability </li></ul>
  • 7. Issues in Distributed development <ul><li>Strategic – resource management, best practices </li></ul><ul><li>Project and process management – synchronizing work between all locations </li></ul><ul><li>Communication – Lack of effective communication mechanisms </li></ul><ul><li>Cultural – conflicting behavior, processes </li></ul><ul><li>Technical – Incompatible data formats, schemas etc </li></ul><ul><li>Security – Ensuring confidentiality and privacy </li></ul>It is a communication problem
  • 8. Success Factors – Distributed Agile <ul><li>Success of Distributed agile substantially depends on real-time collaboration </li></ul><ul><ul><li>Avoid depending heavily on the use of E-mails for knowledge sharing! </li></ul></ul><ul><ul><li>Wiki and Collaboration systems gaining popularity </li></ul></ul><ul><ul><li>IM tools, NetMeeting, and video conferencing enable effective collaboration </li></ul></ul>
  • 9. Success Factors – Distributed Agile (cont…) <ul><li>Robust and Scalable engineering platform to enable: </li></ul><ul><ul><li>Real-time Collaboration and transparency </li></ul></ul><ul><ul><li>Re-usability and Refactoring </li></ul></ul><ul><ul><li>Collective Code Ownership </li></ul></ul><ul><ul><li>Continuous Integration </li></ul></ul><ul><ul><li>……… .etc. </li></ul></ul>
  • 10. Distributed Scrum Styles <ul><li>Type A: Isolated Scrums </li></ul><ul><li>Type B: Distributed Scrum of Scrums </li></ul><ul><li>Type C: Totally Integrated Scrums </li></ul><ul><li>Reference - Distributed Scrum: Agile Project Management with Outsourced Development Teams - By Jeff Sutherland, Anton Viktorov, Jack Blount </li></ul>
  • 11. How to keep the Rhythm <ul><li>Daily Scrum Meeting </li></ul><ul><ul><li>Adjust meeting time to meet all time zones </li></ul></ul><ul><ul><li>Overcome language issues </li></ul></ul><ul><ul><ul><li>Write the answer of three scrum questions and distribute the answers by email before the Scrum meeting </li></ul></ul></ul><ul><ul><li>Local teams can have their separate standup meetings as well </li></ul></ul><ul><ul><li>Publish audio recording of meetings </li></ul></ul><ul><ul><li>Video conference </li></ul></ul>
  • 12. How to keep the Rhythm (cont…) <ul><li>Release/Sprint planning </li></ul><ul><ul><li>Fly key people to one place (Release) </li></ul></ul><ul><ul><li>Share pictures of planning charts (Sprint) </li></ul></ul><ul><ul><li>All team members participating </li></ul></ul><ul><ul><li>Video conference between sites (Sprint) </li></ul></ul><ul><li>Release/Sprint Review </li></ul><ul><ul><li>One session for all teams </li></ul></ul><ul><ul><li>Web Conferencing </li></ul></ul><ul><ul><li>All team members participating </li></ul></ul><ul><ul><li>Video conference </li></ul></ul>
  • 13. It is all about planning <ul><li>Team Structure </li></ul><ul><ul><li>Key challenge: process management, work synchronization </li></ul></ul><ul><ul><li>Cross functional teams at all locations </li></ul></ul><ul><ul><li>Scrum masters at all locations </li></ul></ul><ul><ul><li>Use Scrum of Scrum (SoS) </li></ul></ul><ul><ul><li>use Scrum of Scrum of Scrum (SoSoS ) </li></ul></ul><ul><ul><li>Scrum Masters reporting daily to SoS and to SoSoS </li></ul></ul><ul><li>Proxy product owners </li></ul><ul><ul><li>Architects as proxy product owners </li></ul></ul><ul><ul><li>Link between product owner and delivery team </li></ul></ul><ul><ul><li>Break down User story into requirements </li></ul></ul>
  • 14. It is all about planning (Cont…) <ul><li>Identifying dependencies </li></ul><ul><ul><li>After each sprint planning </li></ul></ul><ul><ul><li>Scrum masters meeting to resolve dependencies </li></ul></ul><ul><li>New distributed scrum teams </li></ul><ul><ul><li>New scrum teams for </li></ul></ul><ul><ul><ul><li>Documentation, </li></ul></ul></ul><ul><ul><ul><li>Integration </li></ul></ul></ul><ul><ul><ul><li>Validation </li></ul></ul></ul><ul><ul><li>Documentation team participation in all planning meetings </li></ul></ul><ul><ul><li>Integration scrum team responsible for nightly build, auto deployment </li></ul></ul><ul><ul><li>Scrum team “validation” taking care of the user scenarios &amp; engaging real customer in validation process </li></ul></ul>
  • 15. Work Organization: Sample success pattern
  • 16. Creating an Integrated Tracker <ul><li>Ability to properly derive test cases from raw requirements </li></ul><ul><li>All tasks need to be mapped, inter-linked, and driven by its priority </li></ul><ul><ul><li>Writing use cases, test cases, code reviews, etc. </li></ul></ul><ul><li>Requirement mapping also necessary for test results, defects, and code changes </li></ul>
  • 17. Processes - Continuous Integration <ul><li>It is essential that code repository is centralized and unified tools are used </li></ul><ul><li>Automated Schedule builds – preferably daily </li></ul><ul><li>Traceability to requirements to builds </li></ul>
  • 18. Sprint health check <ul><li>Reference - Distributed Scrum: Agile Project Management with Outsourced Development Teams - By Jeff Sutherland, Anton Viktorov, Jack Blount </li></ul>
  • 19. High Visibility on Project Status - Metrics Test Cases Test Cases - Status
  • 20. Product Dashboard as Information Radiator <ul><li>Distributed Agile needs a common view assembling product engineering processes together </li></ul><ul><li>A Product Dashboard provides a holistic view of lifecycle </li></ul><ul><ul><li>Reconciles information from requirement management, test case management, issue tracking system, etc. </li></ul></ul><ul><ul><li>No manual consolidation of information </li></ul></ul><ul><ul><li>Provides great transparency from all perspectives </li></ul></ul><ul><ul><li>Real-time visibility into the progress </li></ul></ul><ul><ul><li>Role-based dashboard boosts productivity of the distributed product teams </li></ul></ul>
  • 21. Video Conference <ul><li>Biggest contributing factor in distributed development </li></ul><ul><li>Brings meaningful and effective communication </li></ul><ul><li>Better video conferencing tools would decrease the need of travelling </li></ul><ul><li>Use video conference for </li></ul><ul><ul><li>Daily scrum meetings </li></ul></ul><ul><ul><li>Release planning meeting </li></ul></ul><ul><ul><li>Iteration planning meeting </li></ul></ul><ul><ul><li>Sprint Review </li></ul></ul>
  • 22. Daily Scrum Meeting Audio Or/And Video Conference
  • 23. Case Studies <ul><li>IDX (now GE Healthcare) – 567 developers, many locations </li></ul><ul><li>IDX Web Team Scrum 1996-2000 </li></ul><ul><li>– Burlington, VT </li></ul><ul><li>– Boston </li></ul><ul><li>– Seattle </li></ul><ul><li>Factors accelerating the IDX hyperproductive Distributed Scrum </li></ul><ul><li>– Scrum organizational pattern </li></ul><ul><li>– Engineering practices </li></ul><ul><li>– Daily meeting of distributed team </li></ul><ul><li>– Tools (direct connection to Microsoft development) </li></ul><ul><li>SirsiDynix and StarSoft used Scrum in globally distributed environment </li></ul><ul><ul><li>developing a Java application with over 1,000,000 lines of code. </li></ul></ul><ul><ul><li>a distributed team of 56 Scrum developers working from Provo, Utah; Waterloo, Canada; and St. Petersburg </li></ul></ul><ul><ul><li>At 15.3 function points per developer/month, this is one of the most productive projects ever documented. </li></ul></ul>
  • 24. GlobalLogic Case Study <ul><li>The purpose of the project was to develop a framework for a company in digital audio production (audio processing) </li></ul><ul><li>Started in April 2008 and still continuing </li></ul><ul><li>Distributed team working from various locations (in total 3) </li></ul><ul><ul><li>11 in Ukraine, 4 in US, 1 in UK </li></ul></ul><ul><li>How we did it? </li></ul><ul><li>ScrumMaster trained all members on agile practices, on estimation techniques, traveled in initiation phase </li></ul><ul><li>Daily Scrum meetings of all developers from multiple sites </li></ul><ul><li>A wiki page was created to document the impediments faced </li></ul><ul><li>Hourly automated builds from one central repository </li></ul><ul><li>Centralized Information radiator (dashboard) depicting burn down chart, value chart, and other pie chart reports </li></ul>
  • 25. Continuous Integration
  • 26. Continuous Integration
  • 27. Project Dashboard Project Dashboard view, containing Defect aging report Burn down chart Defect mean time to resolve Defect Turn around time Post release defects trend report
  • 28. Conclusion <ul><li>Agile would help you to actually address the problems created by the distance instead of making them worse </li></ul><ul><li>Meaningful communication and collaboration are the key factors </li></ul><ul><li>One Scrum meeting a day is necessary which should include all team members across geographies. </li></ul><ul><li>This would improve productivity, reduce project risk, and enhance software quality. </li></ul>
  • 29. References <ul><li>Distributed Scrum: Agile Project Management with Outsourced Development Teams </li></ul><ul><ul><li>At Agile 2006 International conference </li></ul></ul><ul><ul><li>By Jeff Sutherland, Anton Viktorov, Jack Blount </li></ul></ul>
  • 30. [email_address]

×