Concept: Definition of Done

The Definition of Done is a simple list of activities (writing code, coding comments, unit testing, integration testing, release notes, design documents, etc.) that verify than a backlog item or increment is Done.  It is used to:

  • assess when work is completed on a product backlog item or the product increment
  • ensure transparency

A development organization may have standards or conventions for the Definition of Done.  Scrum Teams may add additional qualifications. 

Scrum Team members must have a shared understanding of what it means for work to be completed.  If multiple teams are working on the same product or system release, then all development teams must mutually agree on a definition of "done“ so that when their work integrates results in product increment that is potentially releasable.

As teams mature and improve their ability to complete work within the sprint it is expected that their “Definition of Done” will expand to a more stringent standard for higher quality

In practice, many teams are still working towards a potentially shippable state.  Such teams may have a different DoD at various levels:

  • Feature (story or product backlog item)
  • Sprint (collection of features developed within a sprint)
  • Release (product increment)