share

The task has been finished (except it's not): meet Definition of Done (DoD)

"Almost done, but..."—and then weeks spent on squeezing out bugs, polishing, reworking, and updating documentation. Déjà vu, anyone? Without a clear definition of what is considered done, the team (most probably each member!) and the customer live in different worlds.

The Definition of Done (DoD) is a list of criteria by which a task is considered complete. Not just "the code has been written," but "the code is there, covered with tests, reviewed, deployed, and verified." That is, ready for use, no surprises. The Definition of Done is a critical part of transparency that aligns everyone and helps to avoid misunderstandings. 

Definition of Done

Why everything falls apart without DoD:

  • Tasks are stuck in the "almost done" status
  • Sprints are not closed, and the velocity is barely known
  • The team believes that the feature is ready, but the customer never saw it
  • The team is arguing about who should have done what

An example of a simple DoD:

  • Code is written
  • Unit tests are done
  • Code review has been passed
  • Uploaded to staging
  • Checked by QA
  • No critical bugs
  • Documentation has been updated

How to implement DoD:

  1. Discuss DoD with the team (at a retro session or project start)
  2. Consider the specifics—for internal tools and production services, DoD may differ
  3. Record it in the project space (Confluence, Wiki, Notion) so that everyone can see and follow

 

The Definition of Done reminds me of the rules of a game. Without them, a project turns into a neverending football game: we run and kick, but no one knows how to score a goal.

Let's discuss your project

Best Upwork agency 2015, 2016, 2018
Member of the Clutch 500
Top automation testing companies
Top 50+ Ukraine Based Mobile App Development Companies In 2020
Top iPhone and iOS mobile app developers 2020

related posts