Get 200 Real Life User Stories
Examples Written by Mike Cohn
In my user stories book and in all my training and conference sessions on user stories I advocate writing user stories in the form of:
Something significant and I'm tempted to say magical happens when requirements are put in the first person. Obviously by saying "As a such-and-such, I want ..." you can see how the person's mind goes instantly to imagining he or she is a such-and-such. As for the magic, Paul McCartney was interviewed and asked about why the Beatles songs were so amazingly popular. One of his responses was that their songs were among the first to use a lot of pronouns. Think about it: She Loves You, I Wanna Hold Your Hand, I Saw Her Standing There, I Am The Walrus, Baby You Can Drive My Car, etc. His point was that these helped people more closely identify with the songs.
You can read more about the Beatles' use of pronouns in this article.
Having a structure to the stories actually helps the product owner prioritize. If the product backlog is a jumble of things like:
- Fix exception handing
- Let users make reservations
- Users want to see photos
- Show room size options
... and so on, the product owner has to work harder to understand what the feature is, who benefits from it, and what the value of it is.
I've heard an argument that writing stories with this template actually suppresses the information content of the story because there is so much boilerplate in the text. If you find that true, then correct it in how you present the story. I've seen backlogs in Word that present the boilerplate in grayed text with the unique parts in black. I've created product backlogs in Excel that use column headings to filter out the common text.
Look here, and you'll see what I mean:
|As a/AN||I want to...||So that...|
|moderator||create a new game by entering a name and an optional description||I can start inviting estimators|
invite estimators by giving them a url where they can access the game
|we can start the game|
|estimator||join a game by entering my name on the page I received the url for||I can participate|
|moderator||start a round by entering an item in a single multi-line text field||
we can estimate it
|estimator||see the item we're estimating||I know what I'm giving an estimate for|
|estimator||see all items we will try to estimate this session||I have a feel for the sizes of the various items|
|moderator||see all items we try to estimate this session||I can answer questions about the current story such as "does this include _____"|
|moderator||select an item to be estimated or re-estimated||the team sees that item and can estimate it|
Seriously take a look at the table above before continuing ... I'll wait ... Please, really look at it before reading further.
OK, here's how I bet you read the spreadsheet. I bet that as you read most of the rows you added in the "As a ...," "I want ...," and "so that ..." text, possibly even by looking at the heading as you read across each row. I've experimented by asking people, and this is what most people do. If that text is unnecessary, why do we mentally mouth the words to ourselves or even glance at the heading while reading the row? Perhaps it's not so non-essential after all.
For now, and probably a long time to come, I'll be sticking with the, "As a