This guide is DEPRECATED, here is the updated version.
Have you ever thought of what a user would do with your application?
No matter how well-architectured the app you built is, if it brings no value to users, chances are, no one will use it.
In simple terms, user stories are brief, informal descriptions of a software feature told from the perspective of the users. These answer the "who," "what," and "why" of a single task/functionality in an application.
As a(n) <user type>, I want to <function> so I can <benefit>
As a customer, I want to view the list of menu items, so I can easily choose what food to order.
The user type answers the "who," the function refers to the "what," and finally, the benefit explains the "why" in a user story.
- helps ensure that a functionality brings user value
- follows Agile/Scrum core principles
- makes it easier to organize software functionality, as it leaves out implementation details
- allows team members of different expertise and backgrounds to plan an application more easily
- encourages conversations rather than simply handing out document details
- simple to prioritize and reorder, especially for product backlog items
- easily understood by both clients and developers
- does not explain the "how?"
- does not involve nonfunctional requirements (e.g. fault tolerance, performance, usability, modifiability)
- user stories are not substitutes to business requirements
- the lack of implementation details means that the processes could vary a lot from team to team
- can be misunderstood and misused
- can lose its original essence/purpose (especially in companies and teams that are "agile" only for compliance purposes)
From here on, I will most likely utilize user stories before I begin coding my application. Even if I don't write them down, it helps a lot to keep in mind the perspective of a user when building an application and planning its features.
- User Story Guide by Mike Cohn - Great resource on Agile.
- How To Create a Perfect User Story Step by Step Guide - Beginner-friendly guide on writing user stories.
- A Short Introduction to the Scrum Framework by Jim Medlock - Not about user stories, but is a well-written introduction to the Scrum framework.
This post only expresses my thoughts and opinions (based on my limited knowledge) and is in no way a substitute for actual references. If I ever make a mistake or if you disagree, I would appreciate corrections in the comments!
Feel free to reach out to me in other media!