User stories are a popular agile method to develop requirements and help project teams achieve customer satisfaction. Instead of abstract technical details, user stories put the human user or consumer of the project front and centre. In this article, you will learn how to develop effective agile user stories and how to use them in projects. Let’s dive in and explore how to make the most of this new technique.
What Is An Agile User Story?
An agile user story describes a user accomplishing their goal rather than the technical details of how a system works. Typically agile user stories use a three part structure that combines a goal with steps. Some authors use the term “user story” and “use case” in the same sense. I see the many difference in the fact that user stories emphasize a person’s interaction. Here are a few examples of agile user stories that could be used for various projects.
- E-Commerce: As an sporting goods customer, I want to order replacement clothes easily so I can be ready for my next game on the weekend.
- Mobile Banking: As a busy professional, I want to make quick payments on my smart phone during commutes so I can relax at home.
- Cell Phone Service: As a business traveler, I want to have steady service during travel so that I can focus on business.
- Online Map Service. As a tourist, I want to quickly navigate through new cities so I can enjoy myself.
As the examples above show, there are common patterns in user stories. First, they are short (the examples above are a single sentence). Second, they describe a specific action that is easy to visualize and understand. Third, the examples conclude with a benefit statement. These three components help developers, project managers and others involved in the project easily get into the shoes of the end user.
Agile User Stories Vs Traditional Requirements
Agile user stories emphasize the customer and the benefit they are seeking to achieve. Here are some of the advantages of using user stories to supplement or replace traditional business requirements. Consider the following benefits of using agile user stories on your projects.
1. Set Better Priorities. In project planning, users and customers will typically ask for a large number of requirements. By asking for this input in user story form, it is easier to discern the true priorities.
2. Guide Project Decision Making. Efforts to collect requirements are never perfect and change is part of the project management profession. With robust user stories to refer to, the project team will have a reference point to guide their decision making.
3. Improved Technical Flexibility. User stories focus on outcomes rather than means. This emphasis helps the project team imagine a variety of technical solutions instead of using familiar technology alone.
While user stories are an exciting concept, they may not be suitable for every situation. The traditional requirements process is helpful for a number of situations such as regulatory projects. If a government agency issues new regulations with firm deadlines, there is relatively limited scope for imagination. In those situations, on time and precise delivery is valuable. In addition, technical requirements may need to be developed if the project team includes third parties who are far removed from the end user or customer. In those cases, detailed requirements will help
5 Ways To Improve Performance With User Stories
Let’s look at a few specific situations where creating and using user stories improves project performance.
1. Increase Customer Involvement. Scott W. Ambler recommends asking users or customers to write user stories rather than developers. That is excellent advice! For that exercise to have value, the project team will introduce and explain the user story concept first.
2. Analyze User Stories For Supporting Requirements. Earlier in this article, we had a mobile banking user story. This story needs to be further developed and refined into specific features and service levels for the project team. For example, the project manager may include a capacity requirement (e.g. “the application will process 1 million transactions per hour without errors”). The testing lead may include several testing scenarios (e.g. test using three different smartphones, test using different browsers and other cases).
3. Validate The User Story With A Prototype. The Lean Startup concept created by Eric Ries is a great way to test early and test often. Seek to create a simple prototype of the product and ask users to attempt to use it. In most situations, you will receive more useful feedback when users have a working prototype to use.
4. Manage Scope By Using A Small Focus. As the INVEST model for user stories states, a key best practice is to write a user story as a small concept. Keeping the user story brief makes it possible to build out the user story in a short period of time.
5. Focus on testable concepts. As we learned from the scientific method, the ability to test an idea is valuable. By developing a user story that is easy to test, the project team will improve performance.
Agile User Stories Resources
The user story concept in agiles dates back to the late 1990s. You can continue your training in this topic by exploring the following resources.
Published in 2004, this book provides an overview of the user stories concept. The book’s examples and author come from the software industry. The book also covers how to use and develop user stories for acceptance testing. This book is best suited for project managers who work on software development projects.
In this blog post, we learn best practices from Netguru. My favorite insight from the article: “We always urge others to remember that user stories are not a contract – they are usually hints or reminders of features for the team and clients to negotiate and collaborate to clarify the details when the time of development nears.”
In this 9 minute video – part of a series of videos – you will gain further guidance on how to write a user story. The video builds on concepts from agile, scrum and the International Institute of Business Analysis.