In this article, we will learn what User Story is and how to write one. User Story plays a major role here. It is the part of the Agile process where instead of writing comprehensive requirements, we write a short description of a feature.As the Agile Manifesto says ‘Working Software’ Over ‘Comprehensive Documents’.
What is User Story?
User Story is a short and simple description of the feature or requirements of the project. Generally, user stories are written on sticky notes or index cards as a user or role-based perspective.User Story Template
As a < type of user or role >, I want < some goal > so that < some reason >.The template identifies 3 questions – “Who”, “What”, and “Why”. If the team doesn’t know these three answers, it means they don’t understand the story, and if they don’t understand the story, then it’s difficult to split it well.
In the above card, you can see the format. Each story has a Story Id, Story Title, Format, Acceptance Criteria, Priority, and Estimate points to complete the task.The 3 Cs of Story
- Card – User stories are written on the Card, just having enough description of the requirement.
- Conversation – Stories must be conversational, i.e., a collaborative conversation facilitated by the Product Owner with the team. This is an in-person conversation.
- Confirmation (Acceptance Criteria) – The acceptance criteria is used to determine when the user story has met the goal of the user.
A good user story uses the “INVEST” model.
- Independent – Reduced dependencies so easier to plan
- Negotiable – Collaborative effort for detailing
- Valuable – Provides value to the customer and business
- Estimable – Small enough and split well for team to estimate
- Small Enough – Can be completed in less than a week by the team
- Testable – Good acceptance criteria
User Story ExampleAs a User, I want to be able to enter my personal information for registration, so that I can register and browse my web application dashboard.Acceptance criteria
- The user needs to enter the data for mandatory fields, identified by *(asterisks).
- A user needs to enter a valid email ID and mobile number.
- If the user clicks “Save,” then the data should be saved in the tables with a success message.
- If the user clicks “Reset,” the data entered by him/her is refreshed and the fields are cleared.
SummaryUser stories are not high-level documents because, in agile development, documentation is not compulsory. A user story is a collaborated effort intention of which is to foster the collaboration.