Story Mapping - Get the Big Picture

Published on Jan 12, 2016

Please contact me if you'd like to re-use this deck! Happy to share and support you in using this cool technique :)

At it's heart; Story Mapping is a system view, and an MVP plan, and enhancement plan... and a release plan.. and and and; the list goes on.

Originally designed in 2005 by Jeff Patton; this recognised and widely used method will help teams at any stage of development visualise their complete project and then develop milestones or releases to suit the cadence of their sprints or iterations. The technique also allows architects, developers and business people to be on the same page with their understanding of progress through the development of a feature or service.

As a tool to create a clear overview of the stages of development, including what's finished and what's not; it's incomparable, easy to set up and fast to update - No Electronics Required!

PRESENTATION OUTLINE

Story Mapping

get the big picture

I am @miss_ _haley

Agilst | scrum professional | massive nerd
I am your friendly neighbourhood agile happy person.
I have been working with development teams in IT and beyond for 13 years, and been a specialist in scrum, agile, and website e2e implementation a further 8 years.

You can find more at:
https://about.me/hyperaktiv

What the hell?

.. is story mapping?

..it's many things

  • system overview
  • mvp planning tool
  • dependency early warning system
  • release plan
  • enhancement plan
  • feature/epic plan
The beauty of a story map is that you can create one at any stage during your project or app development.

This is of particular relevance to any Architect, Project manager, Product owner/manager, or Team faced with complex multifaceted application development.

It's easy to get lost in the detail of a whirlwind project. Mapping out the functionality of a service, product or system helps to expose many of the unknowns that usually would only crop up once detail planning and implementation starts.

IT's a big picture

it's a current snapshot of your product or service
Photo by Adam Melancon

A brief history

2005 - right now

Originally designed in 2005 by Jeff Patton; this recognised and widely used method will help teams at any stage of development visualise their complete project, and then develop milestones or releases to suit the cadence of their sprints or iterations.

too many words

ESSENTIALLY, it's how you slice it.
A good map has many levels of detail
**Summary:** lots of tasks done in support of a bigger goal.
**Functional:** I’d expect to complete this task before taking a break.
**Sub-Functional:** smaller things done in support of a bigger tasks.
Photo by jev55

well that's nice

..and I need this why exactly?
Photo by Ksayer1

What's it good for?

  • website planning
  • application planning
  • communication between business units
  • getting everyone on the same page
  • identifying risk/dependencies
  • Easy prioritization of work to be done
  • combine with fast sizing method like t-shirt sizing to estimate time

so let's break it down

Define / arrange / slice

  • start with the users
  • go step by step through your system
  • group like activity
  • be ruthless when slicing!
Most important here is to think like your customer... Not Dave from management. Your users are the people who will be benefitting from the work and ideally; we're looking to get to the balance point of "Just enough" work to create them an excellent experience, without having to build all the features on the requirements list.

So think of their journey.
How are they introduced to the site, or app?
What actions do they need to accomplish in order to convert into a paying customer?

Leaving the house

live fire exercise
Photo by Nanagyei

form like voltron

get into groups of 4-6
Voltron Rules.
Photo by W10002

Step 1

5 MIN : GETTING UP TO GO TO WORK (IDEAL WORLD)
**Brainstorm**
1 task or step per note

Take 5 mins to think about what you would do on an average or ideal day to wake up and get to work/school/Saturn 16...

step 2

talk to your team, present and arrange
Spend a while presenting your day... one at a time if you like or in a full team collaboration.

Arrange the activities from left to right starting with waking up (or whatever came first for you).
Photo by DailyPic

step 3

holy sh*t!! is that the time????
**Emergency!!**
Now imagine that your alarm didn't go off.

What would you remove from your nice normal "with the time to do it" series of activities in order to make it to work on time?
Photo by id-iom

step 4

move non-essential activities down one layer
Ok your day is officially ruined.

You have 10 mins to make it to work/school/Saturn 16!!

What activities do you drop in order to get out the door and make it on time?

Move these non essential activities down one layer.
Photo by ericskiff

The "map" arranges user activities, or system architecture along the horizontal axis in rough order of priority (or "the order in which you would describe activities to explain the behaviour of the system").
Down the vertical axis, it represents increasing complexity of the implementation.

This slide is pretty self explanatory, really...

Step 5

group it - epic/feature/alternatives/exceptions
Break down high goal level tasks into:
• Sub-tasks
• Alternative tasks
• Exceptions
• Details
Down in the details of the map, it’s OK to include details about what UI might look like or what the system might do in the background.
Photo by Horia Varlan

step 6

order your new groups from most to least important
Photo by Kasaa

step 7

slice and dice
**MVP**
Use release slices to identify small experiments, minimal viable product releases, or a “walking skeleton” version of your product.

Think of the classic agile "Bicycle vs Ferrari" metaphor.

**Release Slice**
Use a tape line to identify slices of tasks that users might use your software for to reach their goals. The smallest number of tasks that allow your specific target users to reach their goal compose a viable product release.
Photo by Rob Hirai

use tape

its fun... and hey presto; MVP! ..or release 1
Photo by Richard Elzey

mvp > enhancement

think in terms of layers of detail
A good example of this is a the timeless and well loved "Forgotten Password"

**MVP**
an email that sends you your username and password in plain text.

**Release 1**
An HTML email that sends your Username and password in plan text (but it looks pretty and keeps Marketing happy).

**Release 2**
An HTML email that sends you a Link to reset your own password. Can be used multiple times.

**Release 3**
An HTML email that sends you a one-time Link to reset your own password.

... see where i'm going with this?

Each layer adds complexity to the feature in bite-sized chunks, but still delivers value to the user.
Photo by Horia Varlan

MAINTENANCE

how to keep it relevant

1. don't hide it

put your map where it you can see it
Photo by mgjefferies

2. update

WHEN YOU MAKE CHANGE TO YOUR BACKLOG
Photo by drewgstephens

Things to consider

dude, wait, what?
Photo by cbille

what ifs.....

  • difference between 1st time, and existing product
  • type of product or service
  • multi-team / scaled scrum
  • actors or roles in the system
  • UX and ui design

Story mapping using online tools

There are myriad ways you can map things, and if you have distributed teams it might be worthwhile to consider using an online tool for your mapping.

Here are some options

Summary

  • go through your system fro a user perspective
  • identify the actions
  • arrange into minimal system & enhancements
  • use tape/lines to delineate between MVP and subsequent releases
  • keep it fresh

Questions?

no such thing as silly questions; just unasked ones!

Thanks!!

VIELEN DANK! CHEERS MATE! ARIGATO GOZAIMASHITA! MERCI! DZIEKUJE!
Photo by Javlamusik

Books and resources