In an agile process, the main focus must always be on the end-user. And understanding what their requirements are and how they can be fulfilled occupy front and center in the agile framework process. To help do that, organizations use user stories.
Let’s get started with user stories, by answering the question: what exactly is a user story?
What Are User Stories?
A user story or agile/ scrum user story is a tool that’s used in agile software development and product management to represent the smallest unit of work in the framework. It provides an informal, natural language description of a feature of the software or product from the end-user perspective.
The ‘end-user’ in this scenario doesn't necessarily refer to external end-users in the conventional sense. They could be internal customers or colleagues within your organization that depend on your team’s output, and also provide the development team an understanding of the value of what they’re building and why they’re doing it. They’re usually recorded on index cards, post-it notes, or project management software.
Why Are User Stories Important?
Highest Value Delivered
User stories help the team focus on the small and immediate needs of the customer. This dramatically helps by providing early returns, reducing the investment of the organization and significantly increasing the ROI.
With a clear understanding of what needs to be done, teams can work together to provide creative and innovative solutions to the customer’s needs
Brings the Users Closer
To understand the user, the team can connect directly with them, to understand their perspective, issues faced opportunities, and other things that need addressing.
Project Building Blocks
Eases the addition or removal of features from the product.
The index cards, post-it notes which the user stories are written on are visible to everyone. This enables an easier understanding, collaboration, and fast decision making. And since everything is transparent to everyone, there’s a considerable reduction in the amount of risk the team encounters.
INVEST-ing in User Stories
Widely accepted around the world, the acronym INVEST represents criteria or checklist that can help assess the quality of a user story.
The user story must be self-contained to ensure it can be released without relying on another
The user story mustn’t be written like a contract. Only understand the essence of the user’s requirement, opening space for conversations
Value is delivered to the end-user
The user story should be able to estimated to prioritize them and to fit them into sprints
The user story must be in a way that can be completed in a span 3-4 days
A pre-written criteria must confirm the user story
How to Write User Stories?
Agile user stories are usually simple sentences of the following structure:
“As a [role], I [want to], [so that].”
Here’s how each of the component in this sentence looks like:
The role represents a human being that would be interacting with the system. The want to or action refers to the behavior of the system. This action is mostly unique for each user story. So that refers to the real word result or benefit, which is external to the system and is non-functional. It is possible for many stories to share the same benefit statement.
For example: As a customer, I want to be notified when I receive an email, so that I can respond immediately.
Here’s another instance: As a manager, I want to track my subordinates’ progress, so that the organization’s business goals are met.
The 3Cs of User Stories
These help to keep the purpose of the user story in perspective. Let’s have a look at each of the Cs.
This is a placeholder that represents the user story in its raw form. It summarizes a detailed requirement; these details are still to be determined. The card has the following format: “who(role)”, “what(action)” and “why(benefits)”
This represents the discussion between the users, the team, the product owner, and other stakeholders to determine how the intent can be implemented. At this point, the card is adjusted based on understanding taken away from the conversation. Although usually verbal, it could also be supported by documentation and other automated tests
This represents the conditions that need to be satisfied to determine whether the story fulfills the intent and some other more detailed requirements.
Now, let’s have a look at the lifecycle of an agile user story.
Lifecycle of a User Story
At this stage, after communication between the user and the project team, user stories are found. These stories are their most basic forms and do not have anything more than a small description of the user’s needs. At this point, all it does is act as a reminder of the need for further discussion regarding the user’s need.
Based on discussions with stakeholders, user stories that need to be addressed in the coming weeks are decided, and put into sprints. Detailed discussions take place later though.
At this stage, the end-user will confirm the requirements and define the acceptance criteria. With UX, wireframes or storyboards are used to show the end-user a preview of the feature.
Once clarified, the development team will design and implement features that can fulfill user requirements.
The end-user confirms the user story. To confirm the feature, they could be given access to a testing environment or an alpha version. Confirmation will be based on the acceptance criteria discussed earlier.
At this stage, the user story is considered to be completed. If the user has a new requirement, regarding a new feature or an enhancement to the existing feature, a new user story would be created for the next iteration.
How do you represent all of this? The answer is user story maps.
User Story Map
A user story map is a way for representing and arranging user stories into a model to understand the system’s functionalities, identifying the system's backlog, and effectively planning releases to deliver value to users.
User story maps will have the following advantages:
- You can manage a backlog with the help of a leveled structure
- Your needs can be catered to with a collaborative approach
- You can manage activities and tasks, divide them into epics (which are large bodies of work that can be broken down into smaller tasks) and user stories
- User activities and tasks can be arranged and prioritized, to refine them into related user stories or epics
- Every team member can be kept on the same page with user story maps being available online and remotely.
Gain deep insights into the highly popular Agile Scrum project methodology with the Agile Scrum Master Certification Training! Check out the course now.
Now that you’ve been introduced to User Stories, you can move on to other important concepts of Agile by checking out our Agile Scrum Master Certification Training Course. In the course, we cover how agile can be implemented, different agile methodologies, scrum concepts and much more in detail. The course will also enhance your ability to develop and deliver quality products to customers.
And in case, you have any questions, let us know in the comment section below, and our experts will get back to you.