A User Story Map is a representation of a set of user stories along 2 dimensions:
At the top of the hierarchy is the Epic.
An Epic is a large activity that has user value, such as “Buy a Plane Ticket.” Some prefer to use the user story format to create epics, but to me it really does not matter. We just want to use a phrase or sentence that captures the spirit of what we want to accomplish.
Next, you have the workflow itself, which is divided into themes.
A theme is a collection of related stories, and the themes roughly correspond to workflow steps necessary to fulfill the value outlines in the Epic. Here is an example, using plane ticket purchases:
Buy a Plane Ticket
- Flight search
- Shopping cart options
- Checkout/payment options
- Fulfillment options
- Post-sale options
“Buy a Plane Ticket” is the epic, and the epic is broken down into a number of themes, such as “flight search” and “shopping cart options.”
Each theme is then broken down into a set of stories that are arranged in priority order. The items near the top of the priority are more likely to be implemented first. The others are more likely to be implemented later. The top layer of the stories represent the minimal marketable features.
A good story map:
- Shows us the flow of activities from the users’ perspective
- Informs architecture/infrastructure needs
- Outlines user stories’relationship to each other
Step 1: Outline the major goals (epics).
These are your highest level of user value. To come up with these major goals, think like a non-technical user. Users tend to describe applications in broad non-technical easy to understand terms that represent value.
- Facebook lets me stay in touch with family
- Mint helps me with budgeting
- Evernote allows me to take notes anywhere
These epics are the same language you would use to describe the functionality to your mother or a friend who doesn’t work in the technology industry.
Step 2: For each epic, outline the user flow from beginning to end.
Start by outlining the steps. Sometimes this is difficult. After you create a step, ask yourself, “Then what happens?” This will get you to the next step. Do the flow first before diving into the stories.
Step 3: For each theme, outline and prioritize the user stories associated with that theme.
After you have outlined the steps, start thinking about the different ways to accomplish that step. Those will be your stories. For each story, consider “what happens if… ” scenarios, that will deepen the user story list. There will be some stories that are obvious high priority, and others that will not. Often during story mapping new stories appear from looking at the problem from a different angle (horizontal and vertical).
Treat the map as a living artifact
Congratulations, you now have a story map! Story maps are very useful to create at the beginning of a project, and helpful for release planning. Like all Agile artifacts, story maps are living artifacts. Make sure you revisit the story map every few sprints to add/update stories, and to reflect new stories and new lessons from project execution.[activecampaign]