No one wants to spend hours on an assignment only to find out that what they made is not actually what the product manager was looking for. Two tools that prevent this problem are acceptance criteria and the Definition of Done (DoD).
While both spell out the standards that a piece of work must adhere to in order to succeed, the two types of requirements have different roles in helping your team succeed. Keep reading to learn the difference between acceptance criteria vs. Definition of Done and how to create them.Â
What are acceptance criteria?
Acceptance criteria are requirements for a specific user story, feature, or product backlog item. The product owner is in charge of them, though they can and should collaborate with any relevant stakeholders and the team of developers when they create them.Â
Acceptance criteria should give the team a clear picture of what they need to create in their work, keeping everyone aligned on that goal. These criteria help the team know if their work is on track or off course and whether the product owner, external clients, or other stakeholders will be satisfied with the end result.Â
For example, say the development team needs to complete the following user story: âAs a user, I want to be able to reset my password so that if I forget it, I can still access my account.âÂ
When the dev team is ready to begin work on this user story, the product owner might set the following acceptance criteria:
-
If a user enters incorrect credentials, they will get an error message.Â
-
Users will be able to see and click on a link to a page that helps them reset their password.
-
After resetting their password, users will get an email notification that their password was changed.
With these requirements in place, the dev team knows what the product owner is looking for, and they can proceed without any confusion.Â
What is the Definition of Done (DoD)?Â
While acceptance criteria are specific to each product backlog item, DoD is more akin to a checklist that you use for every piece of work you complete to ensure it meets the teamâs quality standards and is ready to ship. The goal is that everyone on the team understands that a piece of work is not complete until it meets the agreed-on standards, and the DoD gives the team an easy way to check that nothing has fallen through the cracks.Â
While the dev team needs to create and document their own DoD, it will probably include standards in the following areas:
-
Code quality: The team should have a standard for ensuring tidiness in the coding.
-
Testing and peer review: Each piece of work needs to prove that itâs up to snuff.Â
-
Security: Whatever your companyâs policies around security, you need a benchmark to show that the piece of work will follow them.
-
Integration: The code should work with the existing system without creating problems.Â
-
Ready for deployment: The piece of work should be shippable and ready to go before considered finished.
-
Documentation: Donât forget to document whatever your fellow developers will need about the work you completed.Â
What is the Definition of Ready (DoR)?
Donât mix up Definition of Ready with Definition of Done. While theyâre both checklists that team members need to complete, DoR is used as you start a new user story, feature, or other piece of work. Itâs the criteria you must meet to ensure that the work you do is a good use of the teamâs time and resources.
For example, DoR could include standards on how well-defined and achievable the projectâs goals are, what the acceptance criteria would be, if you have the resources and staffing you need to finish what you start, and what a realistic timeline would look like.Â
In other words, Definition of Ready is what you go through to prepare to start something new, while Definition of Done is what you do to mark work as totally complete.Â
How to create acceptance criteria
When youâre ready to create acceptance criteria for a product backlog item, hereâs how.
1. Get the teamâs input
Start by getting the right people in the room. Youâll need the product owner, developers, QA team members, and any other stakeholders who are affected by the product backlog item. When you collaborate on the acceptance criteria together, then the dev team has a better chance of producing something that satisfies everyone.