Establishing the acceptance criteria
Acceptance criteria are conditions that the software must meet in order to satisfy and be accepted by the users, customers, and other stakeholders. Each criterion could be functional, non-functional, or performance, and could simply be recorded in a checklist or bullet-ed format.
For example, the following could be acceptance criteria for US-002:
- There should be a message after the registration field if user has not yet entered any detail. (Functional)
- The “Submit” button should be disabled while there are still errors. (Functional)
- Error messages should be in red font. (Non-functional)
- Form fields, success/error messages, buttons, and links should comply with the Site Design Standards. (Non-functional)
- The entire page should load in 10 seconds or less. (Performance)
Alternatively, user stories can also have their acceptance criteria in a “Given-When-Then format”, as used in Behaviour-Driven Development:
Given <scenario/precondition>, when <action to be performed>, then <expected result>.
Using one of the checklist items above, we can write an acceptance criteria in the “Given-When-Then” format as follows:
- Given that I am a new user, when I enter a unique username, then I should see a success message “This username is available.” beside the username field.
- Given that I am a new user, when I enter an existing username, then I should see an error message “This username is already taken.” beside the username field.
It’s important to note that acceptance criteria only help in ensuring that developers, testers, and everyone else involved are on the same page in delivering user stories. These do not substitute the tests being written by testers; rather, they partially serve as a basis for the tests.
Conclusion
Creating user stories should involve the product owner, Scrum team (consisting of analysts, testers, developers, etc.), and most importantly, users. Different perspectives and experiences are needed in order to come up with INVEST-able user stories. Testers have the mindset that can help the team understand the user’s needs and determine the test-ability of user stories.
<– Continue Reading –>
Our Book Recommendations
We found these books great for finding out more information on Agile Scrum:
Master of Agile – Agile Scrum Tester With 59 Seconds Agile (Video Training Course)
Introductory Offer: Free Course
Master of Agile – Agile Scrum Tester With 59 Seconds Agile (Video Training Course)
What is this course?
This ‘Master of Agile – Agile Scrum Tester With 59 Seconds Agile (Video Training Course)’ provides an in-depth understanding of the Agile Scrum Tester roles and responsibilities
You will explore the Agile Scrum project life-cycle, including how an Agile User Story is created, to how we know when it is ‘done’
This course is aimed at those with or without prior knowledge and experience of the Agile values and principles
During this course you will learn the tools needed to succeed as an Agile Scrum Tester
What will you learn?
You will gain an in-depth understanding of the Agile Scrum Tester roles and responsibilities, and you will be able to
- Fully understand the role of the Agile Scrum Tester
- Understand the roles involved in an Agile project
- Create an effective Product Backlog
- Effectively participate in Scrum Meetings such as the Daily Stand-up, Sprint Review and Retrospective
- Identify the roles involves in the Scrum Team
- Fully understand the role of the Agile Scrum Developer
- Understand the roles involved in an Agile project
- Create an effective Product Backlog
- Effectively participate in Scrum Meetings such as the Daily Stand-up, Sprint Review and Retrospective
- Identify the roles involves in the Scrum Team
What topics are covered within this course
You will cover the following topics during this course:
- An Introduction to Agile Project Management (Tester)
- The 12 Agile Principles (Tester)
- Introduction to Scrum (Tester)
- Scrum Projects (Tester)
- Scrum Project Roles (Tester)
- Quality in Agile (Tester)
- Acceptance Criteria and the Prioritised Product Backlog (Tester)
- Quality Management in Scrum (Tester)
- Epics and Personas (Tester)
- Planning in Scrum (Tester)
- Scrum Boards (Tester)
- User Stories (Tester)
- The Daily Scrum (Tester)
- The Product Backlog (Tester)
- Review and Retrospective (Tester)
- Validating a Sprint (Tester)