Definition of Done

By Allen Jay Bercero

The Definition of Done (DoD) is a shared checklist of everything that must be true for a piece of work to count as genuinely finished and potentially releasable. Crucially it is team-wide: the same bar applies to every backlog item, so “done” means the same thing to everyone, with no hidden “well, it’s done except for the tests.”

The DoD is the antidote to the “it’s 90% done” problem, where work is called finished while testing, review, or documentation quietly isn’t.

Also known as

DoD · (informal) “done done”

Don't confuse with

  • Acceptance criteria: those are per-story conditions (does this feature do what was asked?). The DoD is the team-wide quality bar for all work (tested, reviewed, documented, deployed…). A story can meet its acceptance criteria and still fail the DoD.
  • Definition of Ready (DoR): the mirror image. DoR says a backlog item is ready to start; DoD says the work is finished. Opposite ends of the same item’s life.

In plain English

One shared checklist that answers “is this actually finished?” the same way for everything the team builds.

What’s typically in it

A DoD is a short, team-agreed checklist. Common entries:

  • Code written and peer-reviewed.
  • Unit and integration tests written and passing.
  • Meets the team’s coding standards.
  • Documentation updated.
  • Merged and deployed to a staging or test environment.
  • No known critical defects.
  • Relevant non-functional requirements met (e.g. a performance budget).
  • Accepted by the Product Owner.

Teams keep it short enough to actually apply to every item, every time.

Where it comes from (and why it isn’t only Scrum)

Scrum formalizes the DoD: the 2020 Scrum Guide makes it the commitment attached to the Increment, the quality standard an increment must meet to be releasable. But the idea is used across agile, including Kanban and general team practice. It is not Scrum-exclusive.

Levels and evolution

  • A DoD can exist at several levels: per story, per sprint or increment, and per release (a release DoD often adds heavier checks like a security review).
  • The team owns it and strengthens it over time as its skill and automation grow (for example, adding “load-tested” once load testing is automated).

See also

References

  • K. Schwaber and J. Sutherland, The Scrum Guide (2020), “Commitment: Definition of Done.” https://scrumguides.org