Acceptance Criteria
Definition
Acceptance Criteria are the conditions that a software product must meet to be accepted by a user, a customer, or other stakeholder. They are a set of statements, each with a clear pass/fail result, that specify both functional and non-functional requirements.
Why It Matters
Acceptance criteria define what "done" means for a user story. They remove ambiguity and ensure that everyone on the team has a shared understanding of what the feature should do before development begins.
Contextual Example
For a user story "As a user, I want to log in with my email and password," the acceptance criteria might include: 1. Successful login with correct credentials redirects to the dashboard. 2. Login with incorrect password shows "Invalid password" error. 3. Login with an unregistered email shows "User not found" error.
Common Misunderstandings
- Acceptance criteria are often written in a "Given/When/Then" format, which can then be used to drive BDD tests.
- They should be defined before development on the story begins.