3 steps to define the Definition Of Done
According to the Scrum Guide:
The purpose of each Sprint is to deliver Increments of potentially releasable functionality that adhere to the Scrum Team’s current definition of “Done”.
Development Teams deliver an Increment of product functionality every Sprint. This Increment is useable, so a Product Owner may choose to immediately release it.
For a scrum team to deliver the product which can be used by the end users , they need to answer the following
- How the team has decided that the developed functionality ready to be shipped?
- What will give the Product Owner confidence to make the decision for immediate release?
- What are the standards or the basis of which team can minimize the risks?
- What if the potentially shippable feature is not addressing what has been committed to organizational or team level or both?
- How the quality has been ensured?
Answering above will not solve all the problems but it will help you move in the right direction. Define and follow Definition of Done. It will not only help to improve transparency but will also help to make decisions in a timely manner. If people are not agreed on common goals and standards, it can lead to confusion.
That’s why agreeing on the “Definition of Done” is of critical importance to achieving a consensus on when projects and features are actually called complete.
How to define the Definition of Done?
Regardless of the Acceptance Criteria that could be varied according to the specific needs of the customer, you should have base quality criteria that ensure your product is “ready to be served to your customer”.
Following three main steps can help you define a Definition of Done
DoD can be a combination of following
1. Organizational level standards
2. Engineering process
3. Quality standards
The criteria that need to be checked against the larger goals, needs, and conventions of the company. If its a banking firm all the features must provide secure transactions to customers at all times. Or if it's a service providing company to hundred or thousand customers at a single given time, then introducing new or change is a feature , should not compromise the performance.
Depending upon the organization, the DoD could include
- Security testing done
- Performance Testing Done
- Security cleared
- Legal requirements met
2. Engineering practice
The DoD representing the engineering practices could help developers serve their energy in the right direction (they might be defined on the organization or squad level). Examples include
- Design documentation completed
- Unit/integration tests written and passed
- Code is peer-reviewed
- Design Principles
3. Quality standards
DoD can also help to limit the risk of misunderstanding and conflict between the development team and the customer or product owner from the quality standpoint (they also might be defined on the organization or squad level)
- The Definition of Done needs to limit the cost of rework once a feature has been accepted as “done”. Examples include
* All or critical feature level bugs resolved
* All or critical regression bugs resolved
* Technical debts carryover percentage
- All the test cases have written and passed (Manual or automation or both)
- End to End test cases have passed after deployment
- Feature reviewed and approved by the Product owner
- Design feature reviewed by designer
DoD might need to be rewritten on the basis of a project but you shouldn't be needing to update it on the basis of the feature or functionality of the same project.
The evolving Definition of Done
The team’s Definition of Done will not remain the same throughout the life time. It will need a revisit depending upon the changes on the organizational level or a project level. As the team matures and works together, they will learn to improve and implement best practices, processes and procedures, which will lead to iterating the Definition of Done to produce more valuable and quality features.
It’s therefore important that the team gets regular opportunities to revise the definition of done and the most suitable ceremony to do this is in the sprint retrospective meeting.
For any kind of suggestions, feedback or queries, please feel free to comment or contact me on my email address firstname.lastname@example.org