User stories are probably the most popular technique to capture product functionality in an agile context. A story contains a name, a brief narrative, and acceptance criteria. It’s comparatively easy to write, decompose, and refine user stories. But writing good stories can be hard. The following ten tips help you tell powerful stories.
- Focus on the user: As its name suggests, a user story should tell a story about a customer or user employing the product. Write stories from the user’s perspective and employ user roles, such as corporate user, consumer, admin, marketer. The popular story format “As a (user role), I want (function) so that (benefit)” helps you get the focus right.
- Use stories to facilitate a conversation with the team and with the users, the customers and the other stakeholders. A story is not a specification, and it does not replace a dialogue. The opposite is true: Stories capture the essence of a conversation about how users interact with the product.
- Story writing is teamwork: Leverage the creativity and knowledge of the team and the stakeholders to discover great stories. Invite the team to detail the stories to get them ready for the next sprint planning meeting.
- Keep your stories simple and concise: Use language that is easy to understand. Avoid confusing and ambiguous terms and use active voice. Focus on what’s important, and leave out non-essential information.
- Progressively decompose your stories: Start with big, goal-oriented stories (epics), and derive small, detailed stories that are ready to be transformed into a product increment.
- Don’t forget the acceptance criteria: As you decompose epics into smaller stories, remember to add acceptance criteria. Acceptance criteria complement the story’s narrative, state when the story is complete, and ensure that it is testable.
- Consider grouping user stories into themes: Use themes to organise your stories. Each theme is a group of related stories. Sample themes for a mobile phone are email, calendar, voice communication, and organizer, for instance. Themes make it easier to check for completeness and consistency, they structure your product canvas or product backlog, and they facilitate prioritisation.
- Use paper cards: Paper cards are not only cheap and easy to use. They also facilitate collaboration; everyone can grab a card and write down an idea. They can also be easily grouped on the table or wall to check for consistency and completeness.
- Keep your stories visible: Stories want to communication information. Don’t hide them on a network drive or in the corporate intranet jungle. Put them up on the wall so that everyone can see them.
- Some things aren’t stories: Don’t feel obligated to describe every single aspect of the product as a user story. For instance, user interface design ideas are often best captured in form of paper sketches.
The following posts provide more information on user stories:
Epics and Ready Stories to write stories at the right level of detail.
Constraint stories to capture non-functional requirements such as performance.
Personas to discover the right stories.
User Story Modelling to describe the relationship between different stories.
Agile Scenarios and Storyboards to discover and explore user stories.
Product Canvas to manage and visualise stories.
You can learn more about working with user stories by attending my Certified Scrum Product Owner training course.