It is essential that the people in an Agile Feature Team have the same definition of ‘Done’.
'Done' basically means that we have a clear definition of when the Product Owner can say that a story, defect, Sprint or Release is complete.
Basically there are three things that contribute to achieving done status:
- The acceptance criteria on the stories (and differing levels of refinement)
- The Sprint and Release goals
- The standards and guidelines that apply (what RADTAC call the written down non written rules)
All teams will have a level of standards and guidelines that need to be applied to their delivery (teams that are not aligning to any standards or guidelines are normally ‘FRAgile’ and will produce bad software that doesn’t deliver any benefit to anyone). Standards and guidelines to be applied could include, for example:
- Code reviews
- Sox or FSA or NAO (in other words Audit) mandated requirements in regulatory environments
- Architecture and design
- Scaled Agile standards/guidelines that apply to all teams (Programmes, Projects and/or Agile Release Trains)
- Environment the team are delivering too (Live, UAT etc)
- Teams would normally get guidance on the standards and guidelines to be applied either from an experienced coach or from a ‘Knowledge Cube’ (or very typically, both).
Sometimes we see teams that define how they apply the above standards and guidelines as ‘unwritten rules’, in essence the assumption that everyone in the team knows the standards and guidelines that apply and how we apply them. The risk is that actually the team don’t have an agreed understanding of the ‘unwritten rules’ and that they apply them differently.
This can happen within physically co-located teams, however, we see this most with distributed teams. What we mean by a distributed team is anything from people being on different floors in the same office, to people being in different countries.
If the team are applying the ‘unwritten’ rules differently this causes numerous problems, the biggest of these is that fundamentally the team cannot estimate or plan. When people in the team have a different understanding of the ‘unwritten rules’ they will be sizing against different assumptions, and therefore they will give very different size estimates. The interesting thing is that in this situation when two different people give very different estimates they are both right. Ultimately this will cause failure to deliver the Sprint Goal.
What needs to happen is that the team need to plan and estimate against the assumptions and therefore the same ‘unwritten rules’.
We recommend to teams that they produce a very simple and visual demonstration of what standards and guidelines apply, typically on a sheet of paper which is laminated and put on the wall. Then, whenever the team sizes anything, they size against the same ‘written down unwritten rules’ and therefore they are working from the same baseline assumptions.