Ans: Ideally, each team should have their definition of DONE at user story, sprint and release level. DONE in agile means that a team should define their commitments to evaluate completion against this definition.
Q: What's the importance of DONE in Agile? Can Agile add much value without having good discipline for DONE?
Ans: DONE = "value" in Agile. If you need your product development process to deliver "value" then you better define "done" for your team. Poor definition of done means poor value in the end.
Q: Is there any standard Definition of DONE (DoD)?
Ans: NO - DoD is a joint team commitment that team agrees to deliver at user story, sprint, and release level. This commitment is specific to the product needs and team agreement. If your organization has multiple Scrum teams then each of these team should have their own DoD. Organization may define DoD guidelines for teams as reference.
Q: Agile is not working for my team. What could be the potential reason for it?
Ans: One of the most common reason of Agile failure is not to have "shared" and "agile" meaning of definition of DONE. For a team, story is DONE as soon as engineer checks in his code. For other team, story is DONE when code passes unit testcases, QA verifies it, and product owner accepts it. This is just a simplified example where two teams get a different value out of the same process. There could be other reasons but roughly half of the teams suffer from "poor" or "no" definition of DONE.
RULE OF THUMB: Main goal of Agile is to deliver a potentially shippable software (value) at the end of each sprint. This means that the team:
- Has a common understanding of what DONE means at user story, sprint, and release level
- Works in a way that deliverables of the team are incremented with each iteration - from release notes to software to technical documentation - by the end of the iteration it is all advanced to the degree necessary to support release.
- Follows agreed discipline
- Delivers potentially shippable product at the end of the sprint
It also means team values:
- Containment of QA to the sprint
- Frequent builds of working code with incremental functionality
- QA testing stories as early as possible so team tries hard to get stories to engineering "done" quickly (minimize story cycle time)
- Inspection of incremental deliverables by Product Owner if they desire
- Minimization of waste & technical debt
What can you do?
- If you never heard about DoD then please learn more about it. You may read articles in the reference section and work with your team to define DONE. A new team (less mature) might have a simple definition of DONE and may be tempted to create lots of tasks to reflect process. A more mature team will have a stronger definition of DONE and will be less tempted to create process-tasks and will focus more on software deliverables.
- DoD is not static. It changes over time. Organizational support and the team’s ability to remove impediments may enable the inclusion of additional activities into the DoD for features or sprints.
- DoD is an audit checklist. It can be used to validate whether all major tasks are accounted for. Also, after a feature or sprint is done, DoD is used as a checklist to verify whether all necessary value-added activities were completed.
- A definition of DONE is only good if it is living and is part of a team's DNA. If the team does not know its DONE by heart then the practice is no good. It would be smart to put a team's "done" in front of it at the beginning and end of each iteration - if only for a moment to remind them & to create an opportunity to upgrade it. Team members should be encouraged to tape the definition to their monitor.
- ScrumMasters may do well to put it in front of the team at Scrum regularly until it sinks in. A Scrum Master should be on the lookout for opportunities to improve a team's DONE. Process problems often indicate a need for an upgrade.
- Agile Rules of Thumb [rules]
- Ken Schwaber defines "done" [video]
- Ken Schwaber on meaning of "done" [audio]
- 10 Scrum Rules [article]
- Scrum Alliance DoD Resources [various articles]
- Practical roadmap for great Scrum [presentation]