Define acceptance criteria in testing – what are they, and how do you go about creating them? In this article, we’ll look at the guidelines for acceptance criteria, how they relate to user stories, and acceptance criteria best practices.
When you’re developing software and mobile apps, it’s important to make sure you define your expectations as early as possible in the process.
If you don’t, you run the risk of creating a piece of software that is poorly made and that your target audience just doesn’t want to use.
And if your target audience isn’t interested in your product, your startup isn’t likely to last very long.
One of the ways you can define expectations is through the use of acceptance criteria.
Not sure of the benefits of acceptance criteria in testing? Don’t worry. In this guide, we’ll show you what acceptance criteria are and how you can use them when creating your software.
Today we will talk about:
- Acceptance criteria: definition;
- Who is responsible for the acceptance criteria?
- The benefits of using acceptance criteria for your startup;
- Define acceptance criteria examples;
- Acceptance criteria templates;
- Guidelines for writing acceptance criteria;
- In summary: the power of acceptance criteria in testing.
Let’s start with a definition of what acceptance criteria are and how they are used.
Acceptance criteria: definition
Define acceptance criteria are the conditions that a piece of software must meet to be accepted by a user. The concept of acceptance criteria is a critical part of the Agile methodology.
By ‘user,’ we mean a customer or system – it depends on the type of product you are creating.
Now at this point, you might be thinking: ‘I thought you were all about the lean startup methodology rather than Agile at You are launched?’ And you would be right; we believe that the lean startup has many more advantages than Agile when it comes to the complex needs startup have.
However, acceptance criteria can help startups get to market sooner and ensure that developers focus on what customers want to see. This means we think that the concept of acceptance criteria makes an excellent addition to the lean methodology!
Acceptance criteria are used alongside user stories. You create a user story and then determine the acceptance criteria that will mark your user story as complete when validated and signed off. We’ll go into a little more detail about how acceptance criteria and user stories work together later on.
The good news is that acceptance criteria are very flexible, and you can use them to fit your business needs and product requirements. There are a few criteria you need to bear in mind though.
Acceptance criteria need to be:
- Simple and to the point so as many people as possible can understand them;
- Binary – they need to be pass/fail;
- Can be measured in some shape or form;
- Are open to interpretation – meaning there are several ways they can be completed;
- Technology agnostic – they need to work regardless of the browser or phone the user has;
- Focused on the end result – not the approach. Acceptance criteria need to be focused on your customers and their goals.
Who is responsible for creating the acceptance criteria?
Anyone can define the acceptance criteria for a piece of software. However, we recommend that it is done by someone who is not involved in the development process, like a product manager or possibly even yourself. This means the acceptance criteria are independent and not influenced by what the development team wants the product to do.
Whoever is responsible for the acceptance criteria, the criteria need to be well-communicated and simple to understand. We’ll go into a bit more detail about how to create solid criteria later in this article.
The benefits of using acceptance criteria for your startup
The critical advantage of acceptance criteria is they help identify what your user wants rather than what you think they want. This can be the crucial difference between your product succeeding and your product failing.
The secondary advantage is that acceptance criteria ensure that everyone on the project knows what needs to be done. Given that one-third of projects fail because of poor communication, it’s incredibly important to ensure the whole team is going in the same direction.
Acceptance criteria will help you and your development team:
- Understand what conditions need to be met and how they will be met
- Identify risks and put measures in place to mitigate against them
- Ensure everyone is on the same wavelength – from developers to product managers. Think about it this way… if you hired a developer with no prior knowledge of your business or software, they should still be to understand and work on your software
- Avoid scope creep – you can focus on the criteria defined at the start of the project and easily say no to anything that doesn’t add value
Acceptance criteria and MVPs – how do they work together?
If you’re looking to create a minimum viable product (MVP) to help you get to market sooner, acceptance criteria are a must.
Acceptance criteria mean you can focus on the features that your target audience wants to see, meaning you can cut out the fluff. Plus, as acceptance criteria are great for reducing scope creep, you can launch quickly ahead of your competitors.
Acceptance criteria examples
Now you know a bit more about acceptance criteria – how do you use them to help develop your software?
The first step: creating a user story
The first part of the acceptance criteria process is to write a user story. A user story is a short sentence that focuses on the user, the feature they want to see, and what they ultimately want to achieve.
User stories typically follow the following structure:
As a [user type], I want [a feature] so I can [achieve a goal/satisfy a need]
So, for example:
As a shopper, I search for a list of products so I can choose the one I want to buy
How many user stories do you need to have in place? You’ll be likely to need multiple user stories for each product, depending on the functionality. We’ve found that five to ten are typically enough but don’t panic if you have more or less.
Try creating a user story for your software or product now – keep it simple and relevant to what your customers want to see.
The second step: defining your acceptance criteria requirements
When you have your user story in place, you can create your acceptance criteria. Acceptance criteria are typically either:
- Scenario-based – how to complete a particular action
- Rules-based – what parameters a user will come up against
The good news is that there are no right or wrong ways to create acceptance criteria – as long as the criteria work for your team, and everyone is in agreeance.
Some startups write their acceptance criteria down as a checklist, while others use a Given/When/Then (GWT) sequence. Again, go with the option that works best for your team. As a rule of thumb, checklists are easier to put together, but a GWT framework will give you more specific criteria.
Taking the user story described in the first step, your acceptance criteria using a checklist could be:
- Users can access the website;
- The user can search for a specific product;
- Users can click on a thumbnail image for more information.
Using the GWT framework, it could be:
- Given that I’m on the website
- When I search for the product I want to buy
- Then I can find all the products that fit my requirements
Your developers can then work through the list, validating the individual points and signing off the user story when all the acceptance criteria are complete.
Congratulations, you’re one step closer to creating a piece of software that your target audience will love!
Acceptance criteria templates
If you’re still not sure about how to write acceptance criteria, the good news is there are plenty of templates available online, both free and paid-for.
Just download and adapt to your specific needs.
- Acceptance criteria template on the Aha! website;
- The acceptance criteria template on the Clarity website;
- Acceptance criteria template on the Powerslides website.
Guidelines for writing acceptance criteria
Writing acceptance criteria for the first time can seem daunting, but once you get the hang of it, you’ll be using them on all of your projects.
Here are some of our top tips for making the most of acceptance criteria in your software development process.
1. Start early (but not too early)
You need to have your acceptance criteria in place before you start developing your software. That way, all your developers will know what they need to look out for.
However, you need to have a good handle on your product before you put your acceptance criteria together. If you don’t, you could potentially put acceptance criteria into place that are too hard to achieve or that suddenly become irrelevant.
2. Don’t make your criteria too broad or too narrow
Overly specific acceptance criteria may be harder to sign off on, while overly broad acceptance criteria can be too vague. It’s important to get the balance right.
If you have more than five acceptance criteria per user story, look at splitting the story into two. It’s generally better to have more concise user stories than a handful of unwieldy ones.
3. Keep your acceptance criteria simple and jargon-free
It’s important to make sure everyone can understand the acceptance criteria in place, from project managers to investors. This is why it’s best for someone detached from the development team to work on the acceptance criteria.
Clear and to the point, criteria will make it easier for everyone to be in agreement and understand what is going on. It will also ensure there are no incorrect assumptions made.
Using active voice rather than passive voice can really make a difference, as well as focusing on the positive rather than the negative.
4. Use the INVEST model
The INVEST model (created by Bill Wake) can help you write better user stories and acceptance criteria.
As part of the INVEST model, you need to ensure your criteria are:
- Independent. They aren’t dependent on other acceptance criteria and user stories;
- Negotiable. The user story isn’t so prescriptive that there is only one solution;
- Valuable. The criteria will provide genuine value to your customers;
- Estimable. Your developers can understand and implement the user story;
- Small. The criteria are small, easy to check, and will offer fast feedback;
- Testable. You can quickly determine if the criteria have been completed.
In summary: the power of acceptance criteria in testing
The second most significant reason why startups fail is that there is no market need for the product that has been created. This means you need to do all you can to ensure your idea works as it should for your target audience and that there is no ambiguity.
When you’re creating software or a mobile app, acceptance criteria can give you the confidence you need to move forward with your plans.
Remember, there are no hard and fast rules for how to create acceptance criteria. If they lead to a successful launch and mean your customers are happy with the product you’ve created, you know you’ve done a good job.
Need help with your acceptance criteria requirements? You are launched can get you up and running
We specialize in-app and software development and have been working with startups, venture companies, and accelerators since 2014.
We’ve learned a lot about the development process over the years, and we want to share what we know to help your business thrive.