While we have been dilly dallying moving to agile practices over last few years, early this year we decided that our small product team needs to be fully agile over next 6 months. The last 8 months of transformation has helped us all see whether Agile is as agile as it is made out! We saw 40-50% increase in team velocity over waterfall for the same team!
Waterfall focuses on a release that spans across define, design, develop and verify to develop multiple features in an almost assembly line manner. Agile divides the features into user stories (as if sub-feature) and each of these user stories is defined, designed, developed and verified within one or more iterations by a dedicated scrum team. We discovered that this difference between waterfall and agile manifests to accelerate velocity through following three sources:
A scrum team is functionally complete team that focuses on a few user stories and works towards their completion or achieving the ‘Definition of DONE’ during an iteration or few. For this team, any question that stands as an impediment to DONE becomes a high priority task, not a to-do list item. A dedicated, complete team focused on user story means it gets a detail attention for UI, development, quality and integration, thus reducing rework (which is common when large teams work on large sized efforts).
Thus a focused, dedicated scrum team is the heart and soul that ensures agility of Agile and therefore the first source!
In Agile, the user stories get fully developed and delivered in iterations, while in waterfall, we had to wait until multiple iterations are rolled in a release to have a single feature delivered. Thus agile scales down its focus from features to take an ‘a la carte’ approach of developing user story. This focus on user stories as opposed to feature, adds to project agility as the second source.
Those poor souls harassed by ghost of waterfall projects know well that it is the rework at the end that really burst the project deadlines. The incremental approach of agile provides the opportunity for early customer reviews and hence early inclusion of change requests and early rework, thereby keeping ghost of rework in-check! We also saw, that early feedback seems to invigorate teams to get it DONE and serves as the third source of agility!
Thus, the agility comes from dedicated scrum teams, focus on user stories and less rework due to early feedback! This of course starts from team attitude! Attitude of scrum team to get stories DONE with high velocity and superior quality, with a healthy attitude towards feedback!