Scrum is often referred to as a better way of building products. It is a framework within which people can actually address their complex problems and at the same time be productive and creative to deliver the highest value products. It helps people, teams, and organizations to generate value.
Acceptance criteria generally keep developing. They are basically a different set at the start of work, but then as the work progresses it keeps developing, and more and more is then discovered about the future or the end result. We can understand this through simpler examples. Let’s imagine, you’re going to get a study table built for yourself. You list your specifications to the carpenter and tell him the following:-
- I want a study table of size 24″ X 12″ X 48″.
- I want it to be of oak wood.
- I want it to be tan-brown in color.
- I want the legs to be outward.
- I want five drawers on the right side.
- I want a cup holder on the top left.
Now, these are the acceptance criteria for you for this particular table that you’re getting customized. However, after a few days, the carpenter tells you that oak wood is not available and with the given height 5 drawers can be made, you won’t be particularly happy about it, but you’ll make your adjustments accordingly and develop and grow from that situation which is the acceptance criteria.
Done criteria are not developing in the process. They are specifics given and are needed to be met. So, taking the example from above, one must say –
- The table must be of size 24″ X 12″ X 48″.
- It must be of oak wood.
- It must be tan-brown.
- The legs must be outward.
- There must be five drawers on the right.
- There must be a cup holder on the top left.
In this case, if these needs are not met, one might not buy the table. If at least ninety percent of these demands are met only then the person might buy it.
Difference between acceptance and done criteria in Scrum
The definition of ‘done’ in Scrum master training applies to the entire product increment. It doesn’t apply to an already backlog product item. ‘Done’ is not applied to multiple levels, just the increment. The test descriptions of product backlog items usually prove their completeness when ‘done’.
According to the definition of ‘done’, in terms of Scrum, no highly defective item or critical item will be accepted. For example, ‘code coverage has to be at least 70 percent or ‘all web pages are supposed to be loaded within 2 seconds.’
On the other hand, the acceptance criteria would be something like- ‘the password must not be less than 8 and no greater than 12 characters, contain at least one uppercase, one lowercase, and at least one number.’
We should think of ‘done’ at the macro level and ‘acceptance’ at the micro level.
In simpler words, we can also say that ‘acceptance criteria’ is not obligatory. It’s not invalid. But at the same time, ‘done criteria’ can be said to be obligatory. There are ‘musts’ and ‘haves’ in ‘done criteria’.
Of course, according to the situations we have to, at many times, tailor the rules and regulations. It’s not binding, the Scrum is not a religion, it provides a framework to work with, but if there are few situations where the definitions need to be tailored according to the situations, it should be done.
The key difference is the scope between these two things. ‘Done’ covers non-functional or quality factors. ‘Acceptance’ spells out the functionality.
Although acceptance criteria is not a definite part of Scrum, it still does compliment the done criteria while working on an outcome. Together, both these things ensure you deliver a product with functionality that your customers need and also more importantly, at a quality that both the customer and you’ll be proud of. Acceptance criteria belong to one particular feature or feature, but they can be decided later on and they can also keep developing. Done criteria are defined and set before development begins at all.
Acceptance criteria serve the purpose of clarifying business requirements that are needed to meet user satisfaction. It applies to specific product backlog items since it clarifies one item. The product owner then accepts the criteria and the development team side by side understands it. The acceptance criteria are negotiable between the product owner and the development team. It’s not necessary that acceptance means that done criteria are also met. Acceptance criteria are conditions of satisfaction product owners tell when he asks for a particular requirement. The purpose of acceptance criteria is mostly to ensure agreed-upon or contractual quality. They are also often found upon the level of the product backlog item.
Done criteria serve the purpose of making an unambiguous understanding of what all is needed before any product backlog item can be declared complete. It is uniformly applied to all product backlog items. The development team also owns the definition of done and it is understood and agreed by the complete Scrum team. Done criteria do not change frequently, it is not expected to change during the sprint. Meeting the done criteria means meeting the acceptance criteria. Done criteria have conditions that are expected to be met for all requirements/ product backlog items. Definition of done creates transparency for the team’s shared understanding of what is needed to be done with any item. It basically identifies factors that are mandatory for the increment to be reached. The purpose of done criteria is to ensure that there is usability and also quality on the level of increment. This is so that the integrated increment can be used to test for the quality and value and get any constructive criticism or feedback.