User Stories

What is a user story?

Describes functionality that will be valuable to the user. They consist of

    • written description of the story used for planning and as a reminder
    • conversations about the story that serve to flesh out the details of the story
    • tests that convey and document details and that can be used to determine when a story is complete

Some general guidance:

It is better to have more stories than to have stories that are too large.

User stories contain the expectations of the users. These are best captured in the form of acceptance tests.

The customer team, rather than developers, writes the user stories. User stories are written in business language. This way the business can prioritize the stories for inclusion into iterations and releases.

Project's initial stories are often written in a story writing workshop. They can also be written at any point during the project. All the stories are then estimated.

The customer team and the developers decide on the iteration length. Usually one to four weeks. The same iteration length is to be used for the duration of the project. By the end of each iteration the developers will be responsible for delivering fully usable code for some subset of the application.

Developers come up with the velocity - the amount of work they are able to complete per iteration.

See User Story Template for example and brief description.

User Stories, Epics, and Themes

For purposes of estimating larger sets of user stories, we can write one large user story. This is sometimes called an epic.

In addition to that, set of related user stories can be bound together and treated as a single entity. This set of user stories is referred to as a theme. An epic, by its very size alone, is often a theme on its own.

Reference: page 53, Mike Cohn, Agile Estimating and Planning, Prentice Hall 2010

Other

There is a multitude of interesting articles out there. Some of them are listed here.

    • Introducing User Stories (link), from Agile Modeling
    • New to User Stories? (link) from Scrum Alliance. Comparing requirements, use cases, and user stories.
    • Patterns for splitting user stories (link).
    • Sudoku sizing of user stories (link)
    • Adjectives in User Stories (link) explains how to add non-functional requirements in a user story.

References and Links