Overview

Both Scrum and XP rely on User Stories to describe features required for delivery at the end of a Sprint/Iteration, and provide a basis for Time Estimates and Acceptance Criteria. This entry covers what User Stories and Acceptance Criteria are, how to write, and use them.

What are User Stories?

User stories are a short description of a system requirement or feature, understandable for both the customer and developers, without covering technical details. Based on User Stories, developers communicate with the customer to find details about how to implement.

These are short enough so developers can cover roughly 6 in an Iteration. User Stories provide temporary documentation.

User Story Template

User stories consist of 3 short statements:

  • As a: describing the role of the end user. E.g.: As an online shopper.
  • I want: describing the feature. E.g.: I want to be able to pay online.
  • So that: describing why this functionality is needed. E.g.: So that I do not need to use cash.

Story Cards

Stories are written on Story Cards:

  • Title: Short title for the specific feature/requirement
  • User Story
  • Estimate

What are Acceptance Criteria?

Acceptance Criteria provide means for testing, and ensuring that a User Story has been properly implemented. Quick, short paragraphs, without technical details, aiming at helping testers; written on the back of a Story Card.

Acceptance Criteria Template

Acceptance Criteria consist of 3 statements:

  • Given: initial context. E.g.: Given I have chosen items and delivery method.
  • When: event occurs. E.g.: When I am ready to pay for my products.
  • Then: outcome. E.g.: Then process online payment.

References

NOTE: Entry relies heavily on course materials from the 'Agile Methods' class, at Oxford University.