DoD Criteria is a set of Quality Measures that is applicable to all items before they can be called as Increment. A clear definition of Done is critical because it removes ambiguity from requirements and helps the team adhere to mandatory quality norms. An initial DoD is prepared during the first Sprint and then the DoD evolves as the product progresses. The Quality Measures (DoD) usually go through an iterative process where the Quality measures become more and more stringent. A Product Backlog Item is considered done when it is demonstrated to and approved by the Product Owner who judges it on the basis of the Done Criteria.
Example of Done Criteria Project : Designing the new Website Done Criteria · The design is approved by the Technical Division · The prototype is approved by the Customer · Security to be approved by Security Team |
Definition of done is crucial to a highly functioning Scrum Team. The following are characteristics that you should look for in your team’s definition of done. Verifying that your team’s DoD meets these criteria will ensure that you are delivering features that are truly done, not only in terms of functionality but in terms of quality as well.
DoD is a checklist of valuable activities required to produce product.
Definition of Done is a simple list of activities (writing code, coding comments, unit testing, integration testing, release notes, design documents, etc.) that add verifiable/demonstrable value to the product. Focusing on value-added steps allows the team to focus on what must be completed in order to build software while eliminating wasteful activities that only complicate software development efforts.
DoD is different than an Acceptance Criteria
Acceptance criteria is for each and every functionality. DoD is overall quality criteria which may include one of the item as “Acceptance Criteria met”. Thus DoD is applicable to a set of items, whereas, Acceptance critera is applicable for a item.
Minimum DoD as an Organizational DoD
The Minimum DoD is the Quality Measure defined by the organization at a minimum. For example the minimum of the organization could be
- Each item has to meet its own acceptance criteria
- User Documentation has to be completed
- Organizational compliance documentation related to CMM has to be completed
DoD is jointly decided between PO and Developers
DoD is an agreement. Each agreement has two sides. In Scrum, the PO and Developers should jointly decide the DoD. DoD cannot be a unilateral decision of PO or developers.
DoD may Iterate
It is possible that DoD may iterate. That means, based on feedback, it may evolve and may become stronger. Generally, the Scrum Team discusses during the Sprint Retrospective if the DoD needs to evolve for the next Sprint. The new DoD is then taken as an input into the Sprint Planning for next Sprint.
There may be different set of DoD for different groups of items
It is possible that same set of criteria may not be possible to be applied for all the items in the Product Backlog. The items may be grouped together and a set of criteria may be applied to a set of items. For example, lets say that we are working on stock market system and there are two workstations to be developed. One is a trader workstation which is to be used by 1 million traders and an Administrator work station which may be used by 20 administrators. Let us consider the DoD here.
DoD for Trader WS |
DoD for Administrator WS |
Acceptance criteria to be met |
Acceptance criteria to be met |
User Documentation to be completed |
User Documentation to be completed |
Performance Testing to be completed |
|
Security Testing to be completed |
Weaker DoD may identify undone work later on
Many teams prefer to start with a Minimum DoD to start with and not complicate with too many Quality measures in the DoD. This is a reasonable approach. However, the teams must understand that when the DoD becomes more stronger as the time goes, new undone work may get identified for the already completed work.
For example, lets say that team starts with the DoD for the above Trader Workstation as
DoD for Trader WS |
Acceptance criteria to be met |
User Documentation to be completed |
After the first release of the software, lets say, it is realized that the Performance testing needs to be added to DoD and the DoD needs to be made more stronger. So now the stronger DoD would be
DoD for Trader WS |
Acceptance criteria to be met |
User Documentation to be completed |
Performance Testing to be completed |
Then one must identify the undone work associated with already completed work and the Performance Testing needs to be done for the already completed modules.