How to evaluate your user stories using the INVEST criteria

How to evaluate your user stories using the INVEST criteria

Product
Strategic planning
February 9, 2023
author
Diego Machado
Listen to this article:

User Stories are a popular technique for capturing the functional requirements of a digital product. The goal of User Stories is to provide a clear and concise description of the desired behavior from the end user's perspective. As User Stories play a crucial role in the development process, it is important to ensure that they are well-crafted and correctly written. One of the ways to do this is by using the INVEST criteria.

The INVEST criteria is a widely accepted method for evaluating the quality of User Stories. It provides a set of guidelines for writing stories that are independent, negotiable, valuable, estimable, small, and testable. It helps ensure that User Stories are easy to understand, estimate, and develop, which can lead to a more efficient and effective development process.

History of the INVEST criteria

The INVEST criteria was first introduced by Bill Wake in his 2002 book "Extreme Programming Explored." It was created to help software developers write high-quality User Stories that would make the development process more efficient and effective. Over the years, the INVEST criteria have evolved and become widely adopted in the agile development community.

INVEST is an acronym for Independent, Negotiable, Valuable, Estimable, Small, and Testable. These are the six key components of the INVEST criteria that must be present for a User Story to be considered high quality.

What is the INVEST criteria?

The INVEST criteria provide a set of guidelines for writing high-quality User Stories. Here is a brief explanation of each component:

  1. Independent: User Stories should be written so they can be developed and tested independently of other stories. This allows for greater flexibility in the development process and helps to avoid unnecessary dependencies.
  2. Negotiable: User Stories should be written to allow for negotiation between the development team and the customer. This helps ensure that the final product meets the customer's needs.
  3. Valuable: User Stories should provide value to the end user. This value can be in the form of a new feature, an improvement to an existing feature, or a bug fix.
  4. Estimable: User Stories should be written in a way that allows the development team to estimate the amount of effort required to complete them.
  5. Small: User Stories should be small enough to be completed within a single iteration of the development process. This helps ensure that the development process remains focused and efficient.
  6. Testable: User Stories should be written to allow testing to be performed at the end of the development process. This helps ensure the story is complete and meets the customer's requirements.

Examples of correctly written User Stories

Here are a few examples of correctly written User Stories that adhere to the INVEST criteria:

1. As a customer, I want to search for products by category so that I can find the products I am looking for more easily.

This User Story is independent, negotiable, valuable, estimable, small, and testable. It provides value to the end user by allowing them to search for products more easily. It can be estimated by the development team and can be tested at the end of the development process.

Save Time, Money & Stress

Unlock Success: Transform Your Idea into a Winning App with Our Free Discovery Guide

Get guide now

2. As a salesperson, I want to view a list of my customers so that I can keep track of my customer relationships.

This User Story is independent, negotiable, valuable, estimable, small, and testable. It provides value to the salesperson by allowing them to keep track of their customer relationships. It can be estimated by the development team and can be tested at the end of the development process.

Examples of incorrectly written User Stories

Here are a few examples of User Stories that do not adhere to the INVEST criteria:

1. As a customer, I want the website to have a new layout and design so that it looks more modern.

This User Story is not independent as it requires changes to be made to the entire website. It is also not easily estimable as it is too broad and could require significant effort to complete.

2. As a salesperson, I want to view all of the company's financial information so that I can make better business decisions.

This User Story is not negotiable as it requests access to sensitive information. It is also not easily testable as it requires access to sensitive financial information.

The INVEST criteria is a helpful tool for evaluating the quality of User Stories. By following the INVEST criteria, you can write high-quality User Stories that will help you create a better product for your customers.

We also understand that as a business owner, you may not have the time or experience to dedicate yourself to planning your software project. That is why we offer a done-for-you approach in the form of our Discovery Service, where we handle all these steps for you.

Using this service can reduce the risk of doing a software project by 70% because we will help you catch issues before spending on development. Additionally, there are two extra benefits. First, you will experience working with us for a month at a lower cost allowing you to find out if you like the experience and if we are a match for working together. Second, assuming you enjoyed the experience and decide to proceed with development, we will credit what you paid for the discovery service as part of the total payment for the project. It's a risk-free approach that can help ensure the success of your project.

author
Diego Machado