User stories are short, simple descriptions of a deliverable told from the perspective of the user. Creating user stories helps the team develop a solution that is always centered around the user’s needs and overall experience.
You also learned that epics are a collection of user stories. Think of the concept of user stories in terms of books or films. A story is one single narrative, while an epic is a set of several related, independent stories. Each story tells a specific chronicle, while an epic gives a high-level view of the overall arc.
User stories
The driving factor behind every Scrum project is putting the customer first. User stories are a key component of ensuring that customers are satisfied with the product. A team writes a user story from the perspective of the user. Not only do user stories provide insight into what goals the user wants to achieve, but they enable collaboration, inspire creative solutions, and create momentum by giving the team a small win when the stories are developed.
When writing user stories, you will need to include the following elements:
- User persona. What is your user like? What is their relation to the project? What goals do they have?
- Definition of Done. This refers to an agreed upon set of items that must be completed before a user story can be considered complete.
- Tasks. What are the key activities needed to complete the user story?
- Any feedback already provided. If you are adding features to an existing product and you have already received feedback from customers on a past iteration, make sure to consider this feedback.
I.N.V.E.S.T.
Your user stories should meet the I.N.V.E.S.T. criteria:
- Independent: The story’s completion is not dependent on another story.
- Negotiable: There is room for discussion about this item.
- Valuable: Completing the user story has to deliver value.
- Estimable: The Definition of Done must be clear so that the team can give each user story an estimate.
- Small: Each user story needs to be able to fit within a planned Sprint.
- Testable: A test can be conducted to check that it meets the criteria.
Let’s imagine you are working on a project for a local library. The library hopes to launch a website so that customers can read reviews before they check out books from the branch. The typical template for a user story looks like this: As a <user role>, I want this <action> so that I can get this <value>. Therefore, an example user story for this situation might read: As an avid reader, I want to be able to read reviews before I check out a book from my local branch so that I know I am getting a book I am interested in.
Epics
An epic’s purpose is to help manage related user stories. In this post, Mike Cohn, the inventor of the term “epic” as it relates to Scrum, describes epic as a “very large user story” — one that could not be delivered within a single iteration and may need to be split into smaller stories. The team should discuss together and reach a shared view of how to write and capture their user stories and epics. Keep in mind, epics are just larger user stories that are there to help organize the project.
Let’s imagine you are creating user stories and epics based on the previous example. User stories may include customers wanting to read reviews of books on the website or wanting to add books to their cart. These user stories could fall into the “website creation” epic.
Another user story could be that customers want to walk into the library and easily find the non-fiction section. This would fall under the “organization of the physical space” epic.
So rather than those various user stories appearing in a list together, they are organized into sections, or epics.
It’s important to note that while the Product Owner can write user stories and epics, a Developer can also write them as long as the Product Owner remains accountable for the Product Backlog item.
Key takeaway
Epics allow you to keep track of large, loosely-defined ideas, while user stories are a much smaller unit of work, inspired directly from the end user or customer. Both user stories and epics help teams ensure they are delivering value to the customer.