Co-ordination Support for Managing Progress of Distributed Agile Projects
1. Co-ordination Support for Managing Progress of Distributed Agile Projects Sultan Alyahya, Wendy K. Ivins, W. A. Gray (Cardiff University, UK) ICGSE 15-18 Aug 2011
2. Contents Tracking Progress in Agile Development Co-located Projects Distributed Projects Current Agile Progress Tracking Systems The Holistic Approach Discussion
3. Tracking Progress in Agile Development “WORKING SOFTWAREIS THE PRIMARY MEASURE OF PROGRESS” (Agile Manifesto Principles)
4. Tracking Progress in Agile Development Implementation ≠ “Working Software” Measuring progress of tasks producing code ≠ Measuring Progress in Agile
5. What Affects “WORKING SOFTWARE”? Unit Testing (UT): Un-tested Code causes defects. Continuous Integration: Code must be built & integration-tested to make AT. Acceptance Testing (AT): Failed AT means produced code work improperly. Source Code versioning: Creating, modifying & deleting code affect progress.
9. Tracking Progress of Distributed Agile Projects Temporal Distance Geographical Distance Socio-Cultural Distance Less Communication Weak Co-ordination
10. Current Agile Progress Tracking Systems Rally, TargetProcess, VersionOne .. etc provide detailed information about iterations’ tasks/stories. Static, receive progress information from team members only
11. Current Agile Progress Tracking Systems There is an inconsistency between the progress information shown in the tracking system and the real software produced.
21. The Holistic Approach- Process Models A set of change process models, covering all the technical activities. providing co-ordination support including: identifying the potential sources of progress change checking progress constraints finding and notifying affected team members reflecting progress change in the tracking system
22.
23. Discussion The Holistic Approach helps team members in minimising the inconsistency between the progress information shown in the tracking system and the real software produced. It can potentially reduce the testing bottlenecks at the end of each iteration and release. (>2/3 of agile community do not use any automated AT tools, VersionOne, Dec 2010 ).