What is a good feature or user story template?
A user story is an agile development term that describes a product feature from the perspective of the end-user. User stories help product managers clearly define software requirements so the development team understands the desired outcome of the new functionality.
A good user story template captures the “who,” the “what,” and the “why” of a feature in a simple and concise way. This sentence is often written in the everyday or business language of the end user to convey what they want or need to do.
The structure for defining user stories is outlined below:
As a [type of user], I want to [perform some task] so that I can [achieve some goal].
Let’s use an example company called Fredwin Cycling to define a user story based on the structure above. Fredwin Cycling provides a social fitness application that connects athletes and promotes friendly competition. Here is an example of a user story for functionality that shows cyclists the location of their friends on a map:
As a cyclist, I want to track the location of my friends so that I can join them on rides.
It is important to validate user stories through a conversation with end users. Conversations enable a richer form of information gathering to ensure that requirements are correctly understood and communicated to the broader team.
A user story template should also include conditions of satisfaction — or acceptance criteria — that clarify the desired outcome. This information helps the development team understand how to build the new functionality and test that it meets the end user’s requirements
Many teams use a structured approach for defining acceptance criteria. Here is a simple template to guide the writing of acceptance tests:
Given that [some context], when [some action is carried out], then [a set of observable outcomes should occur].
Using this formula reduces misunderstandings with the development team by ensuring that user stories are implemented correctly. Let’s use the Fredwin Cycling user story we created earlier to show an example of acceptance criteria written from the perspective of the end-user:
Given that the cyclist wants to ride with friends, when they check the map view then show them the location of other cyclists in their social network.
You can use the template below to capture your user stories and acceptance criteria:
The templates provided in this guide offer a quick way to capture customer requirements without having to create a formalized requirements document. You should continuously gather user stories from end users and prioritize them in your product backlog. This helps you respond faster to customers’ needs and minimize the administrative overhead of maintaining lengthy documents. As your product backlog grows, you will likely need different types of templates to organize your user stories.
SAFe feature template
You can create more complex templates that include additional information about each feature. For example, organizations that implement SAFe find it useful to capture important details such as the benefit hypothesis, nonfunctional requirements, and cost of delay.
Here is a template you can use to define features based on the SAFe methodology:
Thematic user story template
Many teams find it helpful to set themes so you can quickly identify user stories that relate to the same topic. For example, you might have multiple stories that relate to the goal of improving the performance of a specific area of an application. This work might involve making many small improvements that collectively deliver significant performance improvement. The work itself does not need to be completed in a specific order and each story independently provides some benefit to the end user.
Here is a template you can use to capture multiple user stories and organize them by theme:
Epic user story template
Epics provide another way to group user stories. Epics are typically used to represent large user stories that cannot be delivered in a single iteration but collectively deliver a particular outcome. For example, if you are building a new login page, you could split the work into smaller, discrete chunks of value that are delivered over the course of multiple iterations.
Here is a template you can use to show how user stories relate to epics:
Capturing user stories is a continuous process throughout the lifecycle of a product. Well-defined user stories ensure clear communication between the product and engineering team that results in delivering new functionality that customers love.