Crayond Blog

What Is A User Story And Why Is It Essential?

What is a user story?

A user story is the requirement of the user and why do they need it. Most often when the sales team tries to close deals with prospects, they get a varied list of requirements from the user. If your software has that particular feature, you sell it to your prospects. If you don’t, then the sales team tries to understand how that particular feature will help the customer. Later, that request passes on to the product team, who evaluate the idea and decide if adding that particular feature to the software will bring additional revenue. This is how features go into the priority bucket.

As an entrepreneur,  you can make use of user stories to enhance a product idea. Let’s say your idea is to develop an email campaign software. Generating a fictional story will help you identify what exactly you need to build. This helps you identify the pain points of customers using other campaign products. Developing a product with this knowledge can help you in various aspects such as positioning, development and growth.

User story
Source – Agilemarketing.net

In short, a user story should translate the customer’s requirements and formulate planning. 

User stories are written from the user’s point of view. Every user story should inform the reader of the user type (role of the user), their intention and the benefit of using the feature.

Here is a sample of what a user story should basically describe:

As a <user role>, I want <the feature/intention> so that <benefit>

The “user role” defines the user persona and answers the question of who will be using the feature. The “intention” tells you what is needed. And, the “benefit” section will help you understand the value that the feature adds to the customer. 

For instance:

As a project manager, I want to schedule tasks, so that it automatically gets assigned to my team members once they complete their current task. 

This is a basic description. You can further get the details about the specifications, acceptance, etc. This information will be needed when your developers are building the feature.

Considering the above example, you might want details on how the scheduling of tasks should happen, how should it be distributed among the team members, how often should this happen, do you want to override the setting, etc.

Generally, a user story should be short and crisp that it would fit into an index card. 

A good user story should tick all of the boxes mentioned below:

  • Is it short?
  • Is it simple?
  • Does it cover the user’s perspective?
  • Does it explain the value or benefit it adds to the end-user
  • Does it contain more than one piece of functionality? If so, break the user story such that it covers only one. 
  • Does it contain the acceptance criteria for the MVP?

Why do you need a user story?

When it comes to agile software development, people come first. What they need is the selling point of your software. With user stories, you are placing the end customers of your product at the center of your development. This will help you develop products or features that your existing customers and similar personas will need. Having a user story helps your development team understand what they are building and why do your customers need it. This will also help them bring in more ideas to the table. 

Imagine the same thing without user stories. Your development team will assume that your customers need a feature and will spend all their time building it. Whereas in reality, your customers might actually;ly not even require it. 

User stories are one of the mandatory components of an agile program. They help in building a user-focused framework. 

User stories have quite a large number of benefits, but they majorly help you:

  • Focus on the customer
  • Eliminate the static approach of development and prioritize features that will help customers.
  • Focus on solving problems immediately for the customers.
  • Collaborate better with your team and have a common goal 
  • Create a momentum within your team in finding ways to solve the user’s problem. 

Concept of user stories

Any user story comprises of 3 stages, commonly known as the 3 C’s.

  • Card
  • Conversation 
  • Confirmation
User story
Source – wibas.com

Card

The card is the description from the customer. It is about 2-3 sentences and helps you find out the intent and the benefits the user will possibly procure if the feature is developed. It helps you understand the value as mentioned earlier in the blog.

User story
Source – mountaingoatsoftware.com

Conversation

The conversation is what happens once you get the intent from the customer/prospect. A decision to develop the product cannot be made just with the description that you get from the user. For a feature to be built, you will need a lot of input from the stakeholders. It is important to facilitate a discussion with the user, development team, product owner, etc. This conversation should add value and put forth the facts for implementing or suspending the project. The conversation should be documented for future reference.

User story
Source – agilefellow.com

Confirmation

This is the confirmation that you give the end-user that the story is implemented. This is usually done through acceptance tests where the user tests for the satisfaction of the product. The team evaluates the perfectness of the feature and checks if there is room for improvement or growth. If so, the idea is discussed with the user to see if it will be helpful for them.

User story

How to Identify requirements for a User Story?

If yours is a full-grown product with a good customer base then chances are high that you will get multiple requests for features. This means that you will get multiple use cases day in and day out. But, not all user stories can be converted into features.

User stories need to be analyzed to see which one can be converted to a feature immediately. A meeting with the stakeholders will help in shortlisting the features based on priority. Once you discover the user stories, it opens room for more analysis. It helps you prepare a requirement specification and plan accordingly.

Here is how you identify the requirements of a user story:

  1. Understand the needs of a customer by talking to them.
  2. Make user stories.
  3. Talk to your development team and jot down the requirements.

How to write a user story?

User story
Source – Smartmicros.com

User stories are majorly given by customers. But, there are instances when you will have to create one on your own. Say when your product is in the early stages of development, where you do not have active customers yet. Here is how you do it:

1. Validate customer/user needs

When creating semi-fictional characters for your product you need to clearly understand your buyer personas. For instance, if you are selling a help desk software, then your buyer personas will be support agents. Next, you need to have a clear understanding of the issues that they will be facing. This is the first step to solving the problem. You should know what they do and how they do it in order to solve their problem. This is the crux of the project. If this is not done correctly, then chances are your product might not prosper, no matter how great your user stories are.

So, if you have a relatively new product, you can understand your target personas by conducting interviews with your users. You need to ask the right questions to get the right answers. Find out your customer’s pain points and work towards easing that. 

As a next step, you need to devise solutions for the problems that your target users are facing. These solutions can be discussed with target customers to see if it will help them.

2. Create Epics

An epic is a high-level structure of the feature/product you are building. It helps you sketch the key features without diving much into the details. Epics contain multiple user stories associated with it.

Here is an example:

If you are planning to create a feature to send invoices, your customers might

  • Want to add attachments
  • Send them as inline
  • Edit the terms and conditions
  • Maintain the same terms and conditions for every email
  • Add signature manually

3. Involve developers

Once you have the first two steps sorted out, you need to bring in the developers into the picture. This is important because they have written the code for the product and only they will be able to analyze and tell you the effort that will go into developing it. This will help you understand and improvise the features. For instance, let’s say some of your customers want to have the same terms and conditions for every mail that they want while some want to edit it every time. Enabling a setting that says “use the same terms and conditions in the future” will help the first set of users. If the same setting is disabled then customers can add new terms and conditions for every mail that they send. 

It might look simple, but the work behind this can only be estimated by the developer. Therefore it is essential that they are involved in the process. 

10 tips to creating great user stories

Here are the top 10 tips to craft a perfect user story that will help the product grow:

  1. Put your customers/users first.
  2. Use the correct personas if you are creating semi-fictional stories. 
  3. Cross-check the requirements with similar users.
  4. Collaborate with the customer-facing teams when you create fictional user stories.
  5. Keep the stories concise.
  6. Group the stories to an epic.
  7. Check with the teams for enhancements.
  8. Add acceptance criteria for every user story.
  9. Post your stories in a place that everybody in your organization has access to.
  10. Grill the stories until you get all the information you need.

The lifecycle of a User Story

User story

Every user story will go through 6 stages. 

Pending

In this stage, you have the user stories with you. These user stories are a mere description of what the customer requires. You have no detailed analysis of the requirements, UX or UI design, no logic, etc. It is a short and naive description written on a card or a sticky note. This user story should be taken into the discussion to see if it has any future.

To-do

In this phase, you have discussed the problem statement with the stakeholders. You have a vague idea of what is to be done. But, it is subject to more analysis and requirements from the stakeholders. The User story can either be taken up immediately or kept aside due to the availability of resources. 

Discussing

In this state, there is communication established between the end-user and the development team. The end-user confirms if the requirements are understood correctly by the development team. The development team define the acceptance criteria and work on it. Wireframes and visual mockups are created in this phase and submitted to the end-user. This helps the team to understand how the customer feels about the product or feature. 

Developing

The actual development happens in this phase. This is the longest stage of the lifecycle. The development team understands the existing code and devises methods to alter it such that it can accommodate the feature. A good developer will ensure that the code is easy enough to build enhancements on the feature that they are developing.

Confirming

This is where the alpha and beta testing happens. The developed product is enabled for the customer to test. Once the customer starts working on the feature, the team will be able to identify functional bugs, if any. The user will have to confirm if all their requirements are met in this phase. 

Finished

Once the user confirms that the product is fulfilling all their requirements, it moves to the finished state. This is the end of the user story. The feature is made available for customers with similar personas. 

Bottom line 

User stories lead you to building products that your customers will love. Therefore great caution should be taken in choosing and implementing the right story. Any user story that you write should be independent, negotiable, valuable, estimable, small and testable. 

  • Independent – Changes made to one story should not affect the other story.
  • Negotiable – The story should contain the essence of the requirement but not the contract on how it is solved.
  • Valuable – It should convey the value it adds to the user
  • Estimable – The development team should be able to estimate the time it will take to build the feature. 
  • Small – It should be granular enough to finish in one sprint.
  • Testable – It should have a clear acceptance criterion to test the feature.

User stories help you increase the brand value of your product which in turn helps you generate more revenue. If you haven’t thought about user stories until now, this is the right time.

Hope you found this information useful. Let us know what you think in the comments section below.

Head over to our blogs section to find more such reads.

Add comment