What are user stories and their purpose, tips and examples

By Indeed Editorial Team

Published 30 June 2022

The Indeed Editorial Team comprises a diverse and talented team of writers, researchers and subject matter experts equipped with Indeed's data and insights to deliver useful tips to help guide your career journey.

Software users often have unique needs that are to be understood by software developers to help them create accurate and specific features, leading to retention, efficiency and usability. It helps to determine the most beneficial features to the end-users and how team members can employ this feedback to design valuable features. This results in a framework where the desired results are achievable. In this article, we answer the question, 'What are user stories?', define who writes them, the purpose of these stories and tips on writing effective user stories.

What are user stories?

User stories are simple, short descriptions of a software feature, written from the perspective of users or prospective users. It refers to descriptions written by software developers through prospective users' minds, stating what these users hope to gain from the software or feature.

Product managers or team members often make use of sticky notes or index cards to display the user stories, either in the office or digitally stored in product management software. This is to help all members of the team easily remember the purpose of the project and the desired outcomes. By focusing on discussing these features, the team successfully shifts its attention from just writing about what users desire to also discuss them. The user notes enable smooth planning and team discussion.

Related: A complete guide to understanding background checks

Who writes user stories?

There are several people involved in the writing of user stories. They could be from the business sector of software development or even from the development team. Clients, stakeholders, managers, users or development teams contribute to user stories. There exists a difference between how these people create, write and even use user stories.

How do clients, users or stakeholders contribute to user stories?

Clients, users and stakeholders often give feedback on the efficiency and effectiveness of the software. They also give specific details about how they would prefer to use the software. This feedback helps the product owner understand their prospective users better.

Related: How to identify your work values: a step-by-step guide

How do product managers contribute to user stories?

The product managers, often known as the product owners or simply managers, are the ones in charge of writing the user stories. They write these stories and then submit them for review. The written user stories are, therefore, organised and stored into a product backlog, serving as a framework for developing and delivering software features or products.

How do development teams contribute to user stories?

Development teams receive the written user stories from product managers and decide how the tasks are divisible amongst the members of the teams. They also create functionalities that are necessary for the owners to find valuable. In addition, they also sometimes reference the project backlog, adding requirements to the stories, thereby detailing the functions of the software and how the desired results are achievable.

Related: Teamwork skills: definition, types and tips for improvement

What is the purpose of user stories?

User stories are a beneficial aspect of software development. They serve various purposes, helping software developers focus on the users and prospective users of the software or product. These purposes apply to software developers, business managers and users of the software. Other purposes include:

  • enabling product managers to easily prioritise tasks to know which are assignable to development teams

  • providing programmers with a clearer insight into their goals for specific features of the software

  • helping programmers understand how they can easily provide the user with value

  • functioning as a resource that business team members and technical team members can share to create a better platform for the achievement of their goals

  • fostering collaboration, as they define the desired results of the software, and how each member of the team can effectively contribute to ensuring that the goal is met

  • helping team members gain momentum, as it provides them with a sense of progress and direction

  • leading to creative solutions, which come to be during moments of team discussions and brain tasking activities

How to write user stories

Writing user stories can prove tricky and confusing. Here is a step-by-step guide to help with the writing of user stories:

1. Create a template for the stories

This involves creating a template that is consistent and transparent throughout the process. As a developer or project manager, you may want to consider the factors that contribute to the software's functionality and how these factors impact your users. Other factors include the target users, what these users may expect from the software and why these results are important to the users.

A basic template for user stories often begins by defining the person using the software, what the person desires from the software and why they want that software or a particular feature. A common template often takes this form: As a [user of this software], I want [a feature, action, or functionality] so that [the reason for the stated desire].

2. Develop user personas

After creating a stable template for the user stories, the next thing to do is develop a specific but fictional user persona, based on fictional characters that describe the targeted users of the software. Team members may want to identify the user personas based on these qualities: age, gender, lifestyle or income. By identifying user personas, the teams can vividly establish a personal touch whenever discussing the users or prospective users. If the software targets multiple segments, team members can also create multiple personas, each persona for each segment of the software.

3. Define acceptance criteria

Defining the acceptance criteria means defining the conditions the teams are to fulfil in a bid to meet the goals and desired results as stated in the user stories. The acceptance criteria help teams recognise how far is reasonable for them to go with the identified goals and help them realise when they have completed the project successfully. Teams typically refer to completion as when a customer can perform a specific task.

4. Pay attention to user feedback

Developers collect user feedback before they create user stories. One can put together a focus group of people in the targeted demographic, asking them relevant and related questions to the specific software. It also has to do with asking them what they anticipate as features of the software and in what way these features would be beneficial to their lifestyles. After this, the development teams check the feedback to help them understand better what they are working with.

5. Divide stories into small tasks

At this stage, it has become clear what to do and what the goals are. This is where the division of labour comes into play and team members can identify what their specific roles and duties are. This helps teams build momentum and helps them monitor their progress as they advance.

6. Keep all the stories accessible

All user stories are better kept in a place every member of the team can easily access to refer to the goals of the project and monitor their progress. Some team members often prefer to visually see the stories on a designated bulletin board, while others prefer to upload the stories on a digital system, so they can easily access them at all times of the day. Regardless of the team's preference, the stories are to be accessible.

User stories examples

Here are some examples of user stories based on a software user's perspective:

  • As a user, I want the online library to show all the books I have previously read, so I can keep track of my reading list.

  • As a user, I want the search results on a shopping website to bring related items to my search page, so I can easily compare all the options.

  • As a user, I want to see who has viewed my profile on the job hunting website, so I am aware of who my profile attracts.

  • As a user, I want to receive an SMS after making an online reservation, so I can confirm the booking immediately.

  • As a user, I want the photo library system to sort photos automatically, so it's easier to search for a photo I want to find.

  • As a user, I want to go directly to the next level of the video game when I log in so that navigating to the correct level isn't necessary.

Explore more articles