Acceptance Criteria vs Definition of Done: Understanding Key Agile Concepts

Patrick Giwa Avatar

Imagine you’re trying to build a high-quality product that is robust in every inch. Your team aims to embed each feature in the best place that must not fall short on functionality.

When you miss out on acceptance criteria, you’re falling short of how to develop a module best. And, when you miss out on the definition of done (DoD), you can’t see the product in its entirety. 

By using acceptance criteria and a definition of done, your Scrum teams can create high-quality products without fretting.

So, in case you aren’t familiar–what are acceptance criteria and definition of done, let’s dive in!

What is Acceptance Criteria?

Acceptance criteria are checklists for individual user stories. They are the requirements an application must meet to be accepted by a user, customer or stakeholder. In short, acceptance criteria is a group of clear, direct, and testable conditions. When used they ensure positive customer results.

It isn’t a strategic approach to developing the solution but focuses only on the final outcome. The conditions should be met for a module (or feature) to be accepted as complete.

The product owner writes acceptance criteria as a user story before grooming meetings. Prior the work begins, the team must have a understanding of these testable criteria.

In short, it is a small description meeting the requirements from a customer’s perspective.

Sample Example for Acceptance Criteria

Acceptance criteria can be a set of checklist that can be evaluated. Let’s discuss a checklist for shopping cart checkout:

  • Add items to the cart: User must be able to add items to the shopping cart
  • View cart: Users must be able to view items in cart before they checkout
  • Update quantity: Users should be able to increase or decrease quantity and see updates in real time
  • Remove Item: The users can remove items from the cart
  • Billing: Users can input and save their shipping and billing information
  • Cart icon displaying quantity: Cart icon showcases total number of items
  • Checkout: Multiple payment options should be available (credit card, PayPal, etc.)
  • Transaction successful: An confirmation email for order should be sent after a successful transaction
  • Responsive design: The shopping cart works seamlessly across desktop and mobile

What is Definition of Done?

Definition of done (DoD) is a set of checklists that a product increment should meet. It then is approved as ready for end-users. DoD ensures a common ground is reached between team members, even when product increment is huge with multiple items. 

When the team members reach a consent, they can work on the next sprint by reducing rework. 

Definition of done is a collaborative approach that involves product managers, developers, testers, team leads and other key stakeholders.

It acts as a guide for team members to follow to deem a product ready for deployment. This could be actual deployment. Or, for bigger companies, it could be handing over to QA or User Acceptance Tests (UAT) teams.

DoD should be complied by during sprint planning and while assessing product backlog items.

Sample Example for Definition of Done

A DoD can be a checklist that the team follows. Here are sample checklists:

  • Loading: The application should successfully load under 3 seconds
  • It is WCAG AA compliant: The app must be readable to people with disabilities
  • All spellings are in US English: The style should adhere to US English only
  • Documentation for each version is ready: The product has multiple versions, so there should be a doc for each.
  • The app is HIPAA compliant: It keeps data confidential to gain patients’ trust and meet the standard.
  • Customer data is stored using SHA-256 encryption: This hash function certifies data integrity.
  • Code review is done: The code review is done optimally
  • Code quality is optimum: Code quality should be up to the mark
  • Unit test is done: Each module is tested before deriving holistic value
  • Test plan is passing: Test cases pass through rigorous guidelines
  • Automated tests passing: The metric to check automated test is acceptable
  • The feature documentation is updated: It explains each feature in detail
  • Version bump is done: The version is upgraded

When Should You Create Acceptance Criteria vs Definition of Done?

The Product Owner and Development Team discuss and agree on acceptance criteria when planning sprints or refining the backlog. With the help of the particular user story, they assess the outcomes and make updates when they get more information about the project.

On the contrary, the Product Owner and Development Team discuss and agree the DoD in advance of project. It can be assessed for relevancy and effectiveness for each user story. 

What Acceptance Criteria and Definition of Done have in common?

Both acceptance criteria and the definition of done focus on delivering high-quality products. They provide guidelines the team needs to follow for product increment release.

Also, one common element is their usage of user stories to drive successful launches.

Let’s Compare Acceptance Criteria vs Definition of Done

For a person who is just getting started may seem to use the term interchangeably (and they are not at fault). The terms acceptance criteria and DoD do overlap at times. This may confuse even seasoned techies.

For instance, an individual on stackexchange says:

Acceptance criteria are checklists for each user story and DoD is a checklist in the Scrum Guide.

Let’s drill-down into what further distincts them:

FeatureAcceptance CriteriaDefinition of Done
UsageIt is for individual user stories or backlog items. They must meet product development needsIt ensures quality standards are met for product increment
Area of implementationFor individual PBI, e.g., shopping cart, which should suffice certain conditionsApplies to entire product increment to deliver high quality across sprint
StakeholdersThe Product Owner and Scrum Team, with the Scrum Master’s help, discuss and agree on criteria for clarity.Following the Scrum Guide, the Scrum Team defines DoD
DeliverablesIt ensures quality standards for individual story levels. It is supported by code quality and acceptance testing.Quality standards across product by code reviews, unit tests and integration consistency

Challenges in Implementing Acceptance Criteria and Definition of Done

While acceptance criteria and DoD bring value, they must be implemented cautiously. Here are a few roadblocks you should look out for.

  1. Unclear definition: Defining the DoD and acceptance criteria clearly is crucial. If not, it leads to ambiguous understanding and no clear output. 

It’s best to use easy language, list measurable goals, and sketch out both positive and negative scenarios.

  1. Immutable criteria: When the user story lacks flexibility, it creates detrimental value.

To avoid this, focus on key elements. Keep it simple. Allow for feedback and changes. Skim through acceptance criteria and DoD to ensure room for enhancements.

  1. Low teamwork: Without involving all team members the shared understanding isn’t consistent.

So, involve the whole team. Discuss and agree on criteria. Encourage collaboration. Motivate each team member to be equally accountable.

  1. Neglecting non-functional requirements: Do not ignore non-functional requirements. These include performance, security, and user experience.

Implement necessary testing to ensure non-functional elements are ticked.

  1. No enhancements: Revise your acceptance criteria and DoD as and when required.

Get feedback from team and learn from roadblocks to create a better blueprint.

  1. Frequent change in requirements: New project needs may make old criteria irrelevant.

If you work in a model with frequent changes, be ready to adjust your DoD and acceptance criteria.

You can deliver high-quality products by meeting these challenges and fixing the flaws.

Tools for Implementing Acceptance Criteria and DoD

Various tools are used to streamline, track and validate these acceptance criteria and DoD. This drives optimum value out of both.

They include but are not limited to:

  1. Agile lifecycle management tools include PaceAI, Asana, ClickUp, Wrike, Trello, Kanban, and more. These tools increase collaboration and provide insight into project progress.
  2. Documentation tools like PaceAI, Document360, Confluence, Google Docs and more help write and revise DoD and acceptance criteria.
  3. Test automation tools viz. Appium and Selenium, automate tests of acceptance criteria. Other tools include Katalon Studio and Postman.
  4. Version control systems like Git and BitBucket track docs. They make managing acceptance criteria and the DoD easier.

Other tools can refine acceptance criteria and DoD based on usage. They use user story mapping and feedback loops.

Acceptance Criteria and Definition of Done – Your Key To A Successful Product

Acceptance criteria and DoD are the harbinger of a well-built product. Leveraging them is pure gold in terms of value you derive while building and testing your product.

The DoD is a checklist that serves product increments. Acceptance criteria are test scenarios that should be checked for the software to work as planned.

You now know the difference between acceptance criteria and DoD.

In short, DoD is common to all user stories. Acceptance criteria are specific to each. Both must be completed for a user story to be complete.

Use them to empower your scrum team to deliver products meeting your clients’ needs.

FAQs

How do acceptance criteria benefit the development team?

It clarifies to the development team what a user story must meet and avoids miscommunications. This gives the team a concrete goal when a feature should be rendered ‘done’ from the client’s perspective.

Is DoD same for each sprint?

Yes, it defines a common quality standard across all sprints for each product increment.

What if acceptance criteria are not met?

In such a scenario, user story is considered incomplete. It may remain in sprint until resolved or moved to backlog.

Can acceptance testing and DoD be revised during a project?

If the team identifies new requirements or quality standards, they can be revised. While acceptance criteria can be revised with each user story, DoD can be revised to enhance quality across the entire project.

Patrick Giwa Avatar