Thursday, July 28, 2022

Requirement Analysis - Writing good user stories

Photo by Jason Goodman on Unsplash

The Agile Framework calls for perfect user stories. When we say ‘perfect’, can user stories be perfect? Well, they don’t have to be ‘perfect’. They have to be easy to understand. 

Here are some tips: 

1) Write User Stories from the point of view of a user: Understand who are the prospective users and learn why they want to use this product. Interview the users, do some research first. Writing user stories based on speculation and theory never helps. 

2) Personas: What are personas? Personas are imaginary characters created based on the users who would be using the product. Personas usually comprise of a name, picture, characteristic, attitude and a goal. For example. ‘This is Ron. Ron wants an app through which he can order a variety of food from different restaurants and not just one restaurant. This helps in understanding the functionality of the product better. Templates for personas can be found online.’ 

3) User stories should be created collaboratively: There should be a detailed discussion between the product owner, scrum master, development team and the testing team. By taking ideas, feedback and Data from the teams involved, user stories can be created better. 

4) Keep the user stories simple and short: The key is to focus on answering these questions: 
a) As a user, I want…………… 
b) So that I can get……….. 

5) Focus on solving the problem of the user. 

6) Write in first person. It is easy to understand when we write in first person. 

7) Write the Epic first including even the minutest of details. Then break it into user stories. 

8) Ensure the user stories fit well in such a way that one user story can be completed in one sprint. 

9) Do not forget the acceptance criteria. Focus on the following acceptance criteria: 
a) Try to ensure that user stories are independent. 
b) User stories should be short (concise). 
c) User stories should be negotiable. 
d) User stories should be valuable. 
e) User stories should be estimable. 
f) User stories should be testable.