Acceptance criteria
In product development, successfully delivered value depends on stakeholders being in agreement.
Acceptance criteria help define expectations and promote transparent communication. They identify the specific needs that a feature must fulfill to be considered fully realized.
Without them, development teams risk starting inefficient sprints, resulting in rework and frustrated stakeholders.
Acceptance criteria and user stories are related but quite different ideas that this article clarifies. Additionally, it examines the qualities of well-written acceptance criteria, how they aid in the development process, and offers helpful advice on creating effective acceptance criteria.
What are acceptance criteria?
Acceptance criteria are a list of conditions an increment of work must meet to be considered complete. They're a collection of clear, short, and testable statements aimed at producing valuable customer outcomes.
Acceptance criteria concern the task's result more than how you arrive at a solution.
What's the difference between user stories and acceptance criteria?
A user story is a means to express a product backlog item (PBI) or, in even broader terms, Value Items, as they are called in Agile Tools. Your team may define and describe Value Items using a method different from user stories, such as "ordinary" tasks.
A user story (a type of Value Item) and acceptance criteria reinforce each other.
Although the acceptance criteria are not fundamental in the Scrum framework, many Scrum and agile teams use them to organize work and achieve positive outcomes. The roots of acceptance criteria are in XP (eXtreme Programming).
Here is an example user story:
As a User, I can add Acceptance Criteria to a Value Item, so that the team can verify if Value Item can be accepted.
And a list of conditions (Acceptance Criteria) as agreed with the team:
And there could be (many) others.
User stories perfectly capture the motivation behind a backlog item for a product, which is crucial for managing the backlog. They communicate the rationale behind the development effort, describe the intended functionality or feature, and summarise the client's needs.
Acceptance criteria set requirements that must be met for an item to be considered complete. By measuring the development process's effectiveness, these standards ensure that the functionality delivered satisfies user needs.
Let's see another example. The user story:
Qualities of effective acceptance criteria
Effective acceptance criteria have several essential qualities that promote transparent communication and a smooth development process.
In a way, you can think of acceptance criteria as sub-tasks, but they must be user-oriented, clear, concise, and verifiable.
User-oriented
Clear
Concise
Verifiable
Adhering to these principles can help you create acceptance criteria that drive effective collaboration, ensure quality, and ultimately deliver products that meet user needs.
Who should write acceptance criteria?
Because we all operate in different businesses, acceptance criteria may not always come from traditional customers. Instead, it may be your product owner's or other stakeholders' criteria.
Some of the options for defining acceptance criteria are:
Recommended by LinkedIn
Product owner: The product owner, who has a solid understanding of customer needs and product vision, is critical in starting the conversation and defining the desired functionality.
The development team's technical experience provides vital insights into the criteria' feasibility and testability. They can recommend acceptable methods for structuring the criteria so that they can be clearly evaluated.
Scrum master: The Scrum master facilitates team discussions and ensures everyone has a voice. They can also help ensure that the criteria follow best practices.
While the product owner may lead the process, the final criteria should be a collaborative effort that considers all stakeholder perspectives. This collaborative approach promotes common understanding and raises the likelihood of creating the desired outcome.
When should we write acceptance criteria?
While we initially identify acceptance criteria during backlog refinement, the finalization should occur just before development starts to ensure alignment with the latest requirements.
The scrum team ensures they work with the most up-to-date information by finalizing acceptance criteria during sprint planning. This collaborative process involves reviewing criteria, addressing questions or concerns, and determining if the work suits the upcoming sprint.
Scrum prioritizes customer satisfaction and delivers value early and often. Acceptance criteria are refined and finalized close to development to ensure alignment with the customer's evolving needs. Traditional project planning may focus more on completing the project within a specific timeframe and budget, potentially leading to less flexibility in responding to customer feedback.
How to write acceptance criteria?
Templates are available online, but Scrum, as a light framework, does not mention the acceptance criteria. It talks about the Definition of Done.
Checklist
Many teams use a bullet list. The list is simple to create and may be included in the user story or any other location where you plan your sprint's work.
Scenario-based template
Given (context or precondition), when (I take this action), then (this will be the result).
Examples of Acceptance Criteria
As a customer, I can add items to my cart so that I can purchase them later.
As an admin, I can view user activity logs so that I can monitor user behavior and identify potential issues.
As a registered user, I can reset my password so that I can access my account.
Avoid common mistakes while writing acceptance criteria
Although there are numerous approaches to tailor acceptance criteria to your organization, there are also typical mistakes that tend to contradict AC's goals:
Use acceptance criteria with Agile Tools
In contrast with many leading project management tools on the market, Agile Tools treats acceptance criteria as a first-class feature.
You do not have to fiddle with custom fields or (buying) plugins; it is there for you to use.
Each criterion is not a simple checklist item, but it also allows you to set a status on every criterion. Currently, it is one of Draft, To-do, In progress, Available, Done, Blocked, and Pass.
Acceptance criteria versus Definition of Done
As you might have noticed from the above animated gif, there is also a Definition of Done section.
If the Acceptance Criteria are for the Value Items, the Definition of Done is "up one level" for the Value Units (products, services, projects, …).
Since the Scrum guide does not mention acceptance criteria but does Definition of Done, there needs to be more clarity when using both terms.
The difference is that the same Definition of Done applies to every Value Item for a given Value Unit.
The Acceptance Criteria are different for each Value Item.
But let's discuss this in another post.
Ignite a new market and craft a strategy with my help | Strategy consultant and board member. Guiding startups and mature companies to better strategic decisions.
1moLong time no see, Borut Bolčina! Welcome back on LinkedIn! Where have you been? 😃