What is Definition of Done?
Once the Product Owner gets the client’s expectations across to the developers, the requirements are ‘prepared’ to be selected into a Sprint. That is to say, the developers must provide their estimate for a user story, acceptance criteria must be met and so on. It varies widely. This is called the Definition of Ready. However, we also need the specific criteria to regard the requirement as “Done”, and this is called the Definition of Done that I will elaborate on today. Additionally, it’s sometimes called done-done by agile practitioners since both development and testing are done.
To cut a long story short, The Definition of Done is a set of criteria that must be met to regard the requirements complete and finished. DoD is one and the same for all the requirements of the project.
“For each selected Product Backlog item, the Developers plan the work necessary to create an Increment that meets the Definition of Done.”
Scrum Guide 2020
If there are many Scrum Teams working on the project, they need to have a joint DoD. In other place, the Scrum Guide reads: “The Definition of Done is a formal description of the state of the Increment when it meets the quality measures required for the product.” So, DoD helps us to identify when the Increment is over and done with.
DoD and acceptance criteria
For some obscure reasons, these two tend to get conflated, but they’re totally different things. Acceptance criteria are something you can see on the flip side of the user story card. Thanks to them we determine if the story has been successfully implemented. So, they specify if the work satisfies the client’s needs. It only focuses on business needs without giving particular procedure how to achieve them. DoD, on the other hand, specifies when our work is complete. Acceptance criteria refer to a single requirement, while DoD relates to all of them.
DoD is improved all the time
If the organization doesn’t provide the Definition of Done itself, the Scrum Team needs to come up with it alone. DoD should be specific, focused on the completion of the requirements. Just as Product Backlog it’s refined and improved as the process goes along. Over time, as more is learnt about the product the team’s work is more synchronized. This makes it possible for DoD to be improved as well. The problem is DoD might mean a different thing for everyone. Therefore, team members must share a common understanding of it. This causes transparency to increase. SG says that if a PBI doesn’t meet DoD, it can’t even be presented during the Scrum review. In this case, it gets back to product backlog for future improvements.
“Done” means “shippable”
So the Developers should demo what meets DoD. “Done” means that’s it’s completely finished and can be released without having to put more effort into it. Of course, it doesn’t mean the product cannot be given other features. After the Sprint expires, the Team present their “Done” work during th Review. The product might be released onto the market, but it might as well keep being worked on. The Scrum Team amends its DoD during the Retro.
Components of DoD
To sump up what has been said, Definition of Done is a common understanding of expectations that a current Sprint must meet in order to be released. But, what must be done for the requirement to be “Done”?
“Done” entails development, tests, product integration as well as documentation. The documentation might concern technical, user maintenance issues. As for the tests, you need to consider which test must pass unit, functional, performance (load), security or user experience.