Skip to main content

Techniques for using the Definition of Done (DoD)

February 21, 2015

I always spend time during training classes thoroughly covering the concept of Definition of Done, sometimes abbreviated “DoD.” As a concept it’s fairly easy to understand and people generally see the value right away. And in practice, for many teams, this concept is the single biggest game changer for their speed, quality, and process. But I’ve also found that there are many ways to put the DoD into practice, and many techniques for using it during the course of a Sprint. I’d like to share some of those here:

done-sm


  1. Manual Walk-Through. The most basic pattern is bringing up the DoD in the Sprint Review and manually walking through it for each PBI. This has the effect of putting focus on the importance of the DoD, and making it “front and center” for the whole team and stakeholders. This is very important as it establishes an agreement between the Development Team and the PO and other stakeholders that every PBI they show at a Sprint Review will adhere to the DoD.   I highly suggest starting with this pattern to build that trust. However, it is a time consuming activity and quickly grows dry after a Sprint or two. Consider moving on:



  2.  
  3.  

 


  1. DoD checklist. A common technique I see on many Scrum teams is using the DoD as a checklist. The team either pasting that checklist inside each PBI As the team progresses on the PBI, they check off elements of the DoD that they’ve met. It’s now very quick to bring up the PBI in a Sprint Review and show that the checklist is complete.



  2.  
  3.  

 

 


  1. DoD as tasks. Another common pattern is to create a task for each element of the DoD. Similar to the checklist, it ensures we are focused on the DoD item by item. Tasks are sometimes easier to handle than an additional checklist, and most Sprint Backlogs have the concept of “task” already, whether it is stickies on a whiteboard or a tool like TFS.



  2.  
  3.  

 

 


  1. PO Review of DoD. If the team is in the habit of showing PBI’s to the PO during the Sprint, the PO can use that time to ask if the DoD is met. I’ve seen this spawn really good discussions mid-sprint, not only about the DoD but about the PBI’s itself, acceptance criteria, and other clarifications.



  2.  
  3.  

 

 


  1. Be sure to bring up the DoD in each retrospective. Ask what we need to clarify. Ask what we could add to make it more robust. Ask other teams what they have on their DoD that has helped them. I like to see the DoD updated each Sprint, even it’s it’s only a minor clarification, just to make it a habit.



  2.  
  3.  


Finally, there is really only one anti-pattern when talking about Definition of Done. And that’s cheating. Every time you bend the rules, say “good enough,” or forget about the DoD all together, you are taking on risk (and technical debt). I guarantee this will come back to bite you later. The Definition of Done is a really effective tool for ensuring quality, building trust with stakeholders, and producing a pattern of how the team creates product. Go up your DoD game!

 

 

 

 

 

 

 


What did you think about this post?

Comments (9)


Carlos
04:31 pm February 21, 2015

Erik excellent post, but I am a bit confused, I have work with some other people working with scrum and we have issues trying to define what is the difference between an acceptance criteria and a DoD. For example I considered that a DoD is focus in the quality of the product, like "all the unit test run successfully", but some of my colleagues says that "complain with regulations of the PMP" for example.

any comments?


Jaime López
09:50 am February 23, 2015

Hi Erik,

Thinking about the self-organization of the development team I don't understand the first four points. What I mean is that DoD, as Carlos said, has to focus on product quality and not showing it to the stakeholders, these people wants to know about the business value and not the how the product is done technically.

If I'm wrong, sorry me because of my little scrum experience.


Kim Poulsen
01:52 pm February 23, 2015

Think of "Acceptance Criteria" as the functional requirements for some task to be completed. These are the requirements your customers want to see implemented.
The DoD on the other hand is your measurement stick for quality of work. This of this as your non-functional requirements.

The DoD is a live definition and it may change throughout the course of a project. When I took the PO training we also asked about the DoD, and the answer there is that the DoD can contain things like "users are presented to the documentation written", "performance must support 2000 users at once", "downstream integration performed" etc.

A new/young/inexperienced team should start with just a few items on their DoD and build from there. It is no use having a 12 pager manifest without massive automation to support it.

Per PBI you can select parts of the DoD which are irrelevant. Consider though if such things really are functional requirements on individual stories instead.

If some PMP comes along and requires the team to violate the DoD - well resist it or if pressured enough, always remember to create technical debt tasks accordingly to make violations of agreed upon quality visible.


Stefan
07:09 am February 25, 2015

Hi Erik,

I mostly agree with the first four points as I have experienced that, too. The first part of point five is totally right, but I would encourage a change to the DoD ONLY if necessary. As the DoD is a mayor velocity influencing factor you would cut your experience gained from the last sprint every time. That means you won't get better in making forcasts, which will - on a long term - demotivate the team.


Frederik Vannieuwenhuyse
12:30 pm April 30, 2015

Pretty good explanation by Mike Cohn http://www.mountaingoatsoft...


venkata anil kumar
10:46 pm December 24, 2015

I recently started working on SCRUM team, as SCRUM Master. I agree with you that point #1 is little time consuming. And I find point #2 more relevant in my current scenario & highlight teams what aspects are missing and can SCRUM team consider it as done / not done.

For point #3, I think it will cause lot of confusion, as we would be adding it for each Product backlog item selected in a sprint.

#4 - It is quite obvious as with reference to #2, as PO will be part of sprint review.

#5 - Its a good thought and I agree with Stefan to get it changed if necessary.


venkata anil kumar
11:02 pm December 24, 2015

Hi Jaime,

DOD ensure transparency, and creates common understanding says what aspects to be completed, when we say a product backlog item is complete. So, It should reviewed in the Sprint review, as the delivered product backlog items / increment to be accepted by the PO & other stakeholders.

PO & stakeholders are also concerned on quality (unit test code coverage, performance test aspects of code etc) of the deliverable, and they would want those aspects to be included to DOD, to ensure they are met when we say an increment is done.


Mr. DK
04:22 am October 29, 2018

Hi Erik,

Your article is awesome, I really like the idea of DoD as a checklist.
Could you share an example about that?

Thanks,
DK


Jacob Butko
03:14 pm April 5, 2021

Hi Erik,

Can you please help me to understand when the DoD is defined initially? Is it for the entire project, or is it specific to each sprint and conducted during sprint planning, or both?

Thank you!