...

What Is User Stories In Agile? And Techniques To Split Them

Picture of Sujith G
Sujith G
What Is User Stories In Agile And Techniques To Split Them
Table of Contents

User stories are single line requirements in the form of a story of what an end user wants and why. An ideal user story format followed by the industry is “As a , i want , so that . The reason why agile requirements are in the form of user stories is fairly simple – we need to get feedback from the users and we need to get the feedback as early as possible. However, when it comes to a practical scenario, teams tend to pick user stories which are too big to deliver or even showcase in a sprint.

There are a lot of practical antipatterns when it comes to writing stories and implementing them.

Are your teams doing any of the below mentioned points in your sprints?

  1. Stories getting spilled to the next sprint because it is too big?
  2. Taking tasks from big stories to fill the capacity of the current sprint but committing to deliver the story in a future sprint?
  3. Dividing a story and creating a story based on skill set? (Development story, backend story, frontend story, testing story etc)

If yes, you have landed on the right page, because this blog aims at explaining

  • What is a User story and what are its characteristics?
  • INVEST story writing
  • Vertical and Horizontal slicing of a user story
  • Why do we have to split a user story into smaller pieces?
  • Some sample techniques to split the story with examples

What is a User Story?

User Story is a simple/brief one line requirement written in a simple language from a customer / user’s point of view. It has 3 parts to it

  • Persona
  • Demand
  • Purpose

An Ideal user story is in the form of “As a , i want , so that < What is the purpose?>

Examples

  1. As a , i want to , so that
  2. As a , i want , so that i can

Characteristics of a User Story

A user story is a requirement which

  1. Always has a business value associated with it. There are always reasons why a requirement is born, it can be based on consumers feedback, competitive advantage or to generate more revenue.
  2. Will Help teams get feedback. A user story , when converted to a software should always present itself as a point which can get feedback as quickly as possible. Feedback can be of different levels, is it what my consumer wants? Is it how my consumer wants? Does this add value to the product?
  3. Triggers a conversation. A user story with enough information should trigger a conversation between a PO and the development team. There has to be common understanding between the teams and the POs in terms of what the PO wants or what the teams need to develop. And user story is the starting point which should trigger a conversation
  4. When Delivered, it is usable by someone. Delivering an API or a UI screen or writing a login will not help teams to get valuable feedback from a business standpoint. So a user story has to be written in a manner that there is something usable by the end user when delivered
  5. Is an Increment to your product. Since agile is a incremental and iterative model, a user story when delivered adds up to the product list of capabilities when delivered

INVEST Story Writing

Writing a good user story comes with a lot of practice and experience. However, INVEST is one of the most recommended techniques for writing a user story. A PO has to keep in mind the below mentioned points while writing a good user story

  • A User story is INDEPENDENT of other stories. A story can be worked upon in any priority in the sprint. We should not rely on finishing a less valuable story to start more Valuable story
  • A user story strikes a conversation between the teams and the stakeholders. Scope can be NEGOTIATED by the dev teams and product owner
  • A user story is VALUABLE to the end user or the business. When the user story is delivered, user can give feedback or the company can see some business improvements
  • A user story has enough details so that the development team can ESTIMATE
  • A user story is SMALL enough to be tested and completed in one sprint.We will not wait for 2-3 sprints to get feedback
  • A user story is TESTABLE to check with completeness of the sprint

Breaking / Slicing a User Story

Checking if we are in the right direction and changing based on the needs is one of the main idea behind agile ways of working. And one way to do that is to get constant feedback from the customer, consumers or the product team.