Acceptance Criteria¶
Acceptance criteria define what "Done" means by describing the conditions that the team should use to verify whether a requirement or bug fix has been fully implemented. You can capture these criteria in the work item. Clear acceptance criteria help with estimating and developing requirements and with testing.
Product owners are the ultimate deciders of the criteria that create customer value.
Tips from the trenches: Start to love and embrace acceptance criteria.
Ask 10 mature agile teams "How do you know when you're "done done"? and you'll get the same answer from each one. . . get serious about writing acceptance criteria.
Acceptance criteria are the handshake between the product owner and the team on what "done done" really means. Until the acceptance criteria are met, the team isn't done with the story. Period. However, the value of acceptance criteria only starts here.
Acceptance criteria provide the stage for some of most meaningful conversations and interactions that can happen on an agile team. On my own team we routinely have some of our best interactions as we start digging into the acceptance criteria for each story on our backlog. Inevitably we all start with our own ideas about what "done" means for a given story.
However, as we begin to discuss the acceptance criteria presented by the product owner what ensues is a series of "ah-ha moments." A shared understanding of the story begins to emerge. A comment one team member might elicit the following response from someone else. . . "Ah-ha, great point. . . I never thought of that."
Regardless of who is being enlightened, the power is in the fact that the product owner and the team are building together a shared understanding of what "done" means for each backlog item. And, this is happening before the team has written a single line of code… before any work has been done… before commitments have been made… and before the sprint has begun.
By collaborating on acceptance criteria the team is minimizing risk and greatly increasing the chance of delivering successfully. I don't think it's a coincidence that the first bullet in the Agile Manifesto states ". . . we have come to value individual and interactions over processes and tools". Agile teams work together. And by working together, they create better software.
Start learning to love acceptance criteria and see if your team isn't more successful delivering software.
—Aaron Bjork, Principal Product Manager, Visual Studio Cloud Services