User stories are refined using acceptance criteria before they are implemented. Acceptance criteria are sets of acceptance tests a user can perform to verify that the given user story was implemented as agreed. These tests are defined before implementation starts, and provide a detail specification to developers what to implement. Because of amount and level of detail, acceptance criteria are captured as late as possible before implementation start.
Acceptance criteria are often captured as abstract descriptions of expectations (e.g. “Should not allow duplicate user name”). However, illustrating these expectations with examples can remove ambiguities and help building a shared understanding. Examples can be given in different ways and formats, depending on the type of aspect an acceptance criteria describes:
SpecLog allows capturing acceptance criteria and examples for requirements as plain text and images.