How to write a good user story

To view the article on Medium click here.

Have you ever looked at the task in front of you and thought

“How am I ever going to get this done, it’s huge?”

Or been with a team of people and considered

“How can we figure out an action that everyone agrees on?”

I have been in those shoes and it’s not fun, however, there is a solution.

User Stories!

One of the best unkept secrets of the agile world.

A user story is a bite-sized unit of work in an agile framework, designed to get people discussing what needs to get done. Instead of unconsciously writing them down on the famous yellow post-it notes and moving on.

In my mind, it’s a way of providing context for a piece of work and just so you know they don’t only need to be used in software development it could be for anything!


What makes a good user story?

Now you’re talking my language. A user story is typically broken down into 3 steps:

  • As a <Persona>

  • I want to <An action>

  • So that <I get something in return>

In simple terms think of it as the who, what and why. It does not have to be written in this manner, however, the structure provides a level of clarity that everyone can understand. The beauty of a story is that it should paint a picture, for the reader, of that particular feature. This allows a conversation to be had regarding the alignment of the story, whether it’s too big, too small and where it needs to be prioritised.

User stories ≠ tasks

Remember user stories are not tasks. Tasks are the implementation of what actually needs to be done, user stories are the conversation starter.

Don’t dive into the details

Not diving into the detail at the start is the key to success with user stories, simplicity is the solution. Anyone that reads the story should not have to worry about buzzwords or jargon.

Use Epics

Epics are high-level stories which are useful for grouping smaller stories under which can be also valuable for looking at the big picture of your problem.

Refine

Talk to your colleagues or peers on the project regarding the context and see if the story is too broad. If so it may need to be split into smaller stories.

Common Problems with User Stories

Excessive ‘So that’

The main details of the story are likely to be found before the ‘why’ part. When the writer of the story includes the main action in the ‘so that’ section it’s easy to miss the real need that’s being addressed.

Example:

  • As a <Google Keep user >

  • I want to <save my list>

  • So that <later I can save a copy or print it>

Problem:

The issue here is that the value statement is too complex for what should be a simple task.

Improvement:

  • As a <Google Keep user >

  • I want to <save, copy and print my list>

  • So that <I can edit it later>

The need is now not misplaced but the story is too big! It will have to be broken down into separate smaller stories of save, copy, print and email.

Further Improvement:

  • As a <Google Keep user >

  • I want to <save my list>

  • So that <that I can edit it later>

  • As a <Google Keep user >

  • I want to <copy my list>

  • So that <that I can send it to a friend>

  • As a <Google Keep user >

  • I want to <print my list>

  • So that <that I can stick in on my fridge>

The previously large story has now been separated into smaller useable user stories!

Rigidity

Don’t worry about the constraints of budget, cost, time or feasibility these leave little room for creative, better solutions. Remember that you are trying to paint a picture from the user’s point of view. Anything could be possible!

Example:

  • As a <Google Keep user>

  • I want to <have my shopping lists in black and my daily notes in blue >

  • So that <that they are easily differentiable>

Problem:

There may be better solutions that leave more flexibility for the user.

Improvement:

  • As a <Google Keep user>

  • I want to <have my shopping lists in different colours>

  • So that <that they are easily differentiable>

Parakeet Value

This is when the story’s “so that” phrase is repeating the story’s “I want” phrase. The real goal of the story is not clear.

Example:

  • As a <Google Keep user>

  • I want to <locate my previous shopping lists>

  • So that <I can see all the lists I have>

Problem:

The story does not explain its value.

Improvement:

  • As a <Google Keep user>

  • I want to <locate my previous shopping lists>

  • So that <I can reuse a list in the future>

Writing better stories will help keep your conversations from losing their focus and bring an unparalleled level of transparency to what you are trying to work through.

Happy writing!

Do you think that user stories will supercharge your work? Let me know in the comments or drop me a message on any of the following social networks, I would love to hear from you! — Facebook, Instagram, LinkedIn, Twitter, Youtube