Upload
steve-rogalsky
View
17.802
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Creating a backlog of user stories is pretty straight forward but it doesn't help you when it comes to decisions like what to build first, how to prioritize and groom the backlog, how to scope and plan the project, and how to visualize progress. The traditional backlog is simply too flat and often too long to help you see the bigger picture and make good decisions. User Story Mapping helps simplify all of these common project issues. By adding a third dimension to your backlog, your team will make better decisions about priorities, scope, and planning while improving your ability to visualize progress. In this practical session I’ll cover the basics of user story mapping before walking you through case studies of how our teams are using this approach and the results we are achieving. I'll show you the before, during, and after pictures from several projects so that you can understand how our maps progress during the projects and how we use them to influence iterative development, promote good decision making, and visualize priorities, plans, scope and progress.
Citation preview
User Story Mapping
in Practice
#Agile2013 / #SDEC13
Story Time!
My First “Agile” Project
Retail costing/pricing system
ItemSearch
ItemMaintenance
FactorMaintance
CostingEngine
PricingEngine
Cost/PricePrototyper
My First “Agile” Project
Retail costing/pricing system
ItemSearch
ItemMaintenance
FactorMaintance
CostingEngine
PricingEngine
Cost/PricePrototyper
A++
My First “Agile” Project
Retail costing/pricing system
ItemSearch
ItemMaintenance
FactorMaintance
CostingEngine
PricingEngine
Cost/PricePrototyper
A++ B+
My First “Agile” Project
Retail costing/pricing system
ItemSearch
ItemMaintenance
FactorMaintance
CostingEngine
PricingEngine
Cost/PricePrototyper
A++ B C
My First “Agile” Project
Retail costing/pricing system
ItemSearch
ItemMaintenance
FactorMaintance
CostingEngine
PricingEngine
Cost/PricePrototyper
A++ B C F
My First “Agile” Project
Retail costing/pricing system
ItemSearch
ItemMaintenance
FactorMaintance
CostingEngine
PricingEngine
Cost/PricePrototyper
A++ B C F
My First “Agile” Project
Retail costing/pricing system
ItemSearch
ItemMaintenance
FactorMaintance
CostingEngine
PricingEngine
Cost/PricePrototyper
A++ B C F F-
My First “Agile” Project
Retail costing/pricing system
ItemSearch
ItemMaintenance
FactorMaintance
CostingEngine
PricingEngine
Cost/PricePrototyper
A++ B C F F- #%&#@*&!
My First “Agile” Project
Retail costing/pricing system
ItemSearch
ItemMaintenance
FactorMaintance
CostingEngine
PricingEngine
Cost/PricePrototyper
A++ B C F F- #%&#@*&!
What to build firstFailed at iterative developmentScoping the project
Prioritizing and grooming the backlog
Planning the project
The goal of this life isn't to be perfect but to be
progressively less stupid
- Marshall Rosenberg
Learning Outcomes
What to build firstEncouraging iterative developmentScoping the project
Prioritizing and grooming the backlog
Planning the project
How user story mapping can help you with:
Visualizing Project Progress BONUS!
Fast forward a little bit…
Another story, this time with a map
Internal Users will:• Search
Submitted Enrollments
• View Submitted Enrollment
• Process Enrollment
External Users will:• Select a
Contract/Group• Enter Personal Info• Select Benefits• Enter Dependencies• View Summary• Submit an Enrollment
Things Users Will Do
• Add Member Details
• Select Dental coverage
• Select Vision coverage
• Display Member Detail Summary
• Show Confirmation Page
• …
Identify User Stories
Identify Priorities.Left to Right; Top Down
Move risky cards to the top
Release 1: Single, No kids, Dental Coverage Only, no Life & Disability
Identify the Smallest Release Possible
Highlight Scope Changes
And now… Take a look at our Project Plan
Visualizing our progress
Green = Done Blue = In Progress
The beginning
Early in the project
Almost Done
All green = Done!
To Summarize…
What to build firstEncouraging iterative developmentScoping the project
Prioritizing and grooming the backlog
Planning the project
Visualizing Project Progress
User story mapping helped us with:
Your Turn
http://winnipegagilist.blogspot.ca/2012/03/how-to-create-user-story-map.html
*We’ll start with the 2nd row
1. [silently] “Things People Do”
Search Email
File Emails
Compose Email
Read Email
Delete Email
View Calendar
Create Appt
View Appt
Update Appt Create
Contact
Update Contact
Delete Contact
2. Read & Remove duplicates
Search Email
File Emails
Compose Email
Read Email
Delete Email
View Calendar
Create Appt
View Appt
Update Appt Create
Contact
Update Contact
Delete Contact
3. [silently] Group
Organize Email
Manage Calendar
Manage Contacts
Manage Email
4. Name your groups
5. Arrange left to right
Organize Email
Manage Calendar
Manage Contacts
Search Email
File Emails
Compose Email
Read Email
Delete Email
View Calendar
Create Appt
View Appt
Update Appt
Create Contact
Update Contact
Delete Contact
Manage Email
Your map may look similar to…
The Stories that maps tell…
#1 Visualization is awesome
#Planning #Scoping #Prioritizing #Grooming
#1 Visualization is awesome
Example: Nice clean board to start.
#VisualizeProgress
#1 Visualization is awesome
After 2 weeks of vacations…
Progress
#VisualizeProgress
#1 Visualization is awesome
But also, a lot ofBlockers & Issues!
#VisualizeProgress
#Scoping
“This visualization stuff, it’s going to be good.”
- CEO/Owner
#VisualizeProgress
#2 Silent Brainstorming FTW
#3 USM (Backlog) as waste?
Nope. Why? Cognitive Ease
#4 Duplicate cards on your iteration/kanban board
instead of
leaving a hole in your map
Duplicated card
Kanban boardUser Story Map
#VisualizeProgress
#5 USM as MVP?
#Planning #WhatToBuildFirst
#5 USM as MVP!
#Planning #WhatToBuildFirst
#6 Good for an project.(Even the easy ones)
At the beginning
#Scoping
Half way done. One new card
#Scoping
Almost done. Still only one new card.
#Scoping
Done. Only one new card.
#Scoping
#6 Good for any project.(Even the hard ones)
At the beginning
#Scoping
After completing the first few stories, we realized this project
was *way* bigger than we knew.
#Scoping
We quickly scaled it down to a version that still (barely) met the minimum project goals
#Scoping
Done!
#Scoping
#7 What to build first is key…
“Most of the time, we can create a horizontal slice of the whole application in one or two
iterations” – Jeff Patton
#WhatToBuildFirst #Iterative
Patterns we’ve used
Objective vs. Subjective
Quality
#WhatToBuildFirst #Iterative
Patterns we’ve used
Pick a subset of users for the first release.
Single with only Dental
#WhatToBuildFirst #Iterative
Ask: “If we went live early, what could we do without in the
first release?”
#WhatToBuildFirst #Iterative
Patterns we’ve used
Patterns we’ve used
Not every task needs to be included in the first relase
#WhatToBuildFirst #Iterative
Patterns we’ve used
Search? Only by ID.
All others later
#WhatToBuildFirst #Iterative
Patterns we’ve used
** Treat the project like a startup ** Look for assumptions
& risks
#WhatToBuildFirst #Iterative
Back to your app.Let’s practice that first slice.
What to build first?
• What are the risks/assumptions for this project?
• What are things we can do without? • What subset of users might we focus on?• Etc…
What small stories would you need to build a horizontal slice of the whole app in 1-2 iterations?
** Write your top 4 **
In ClosingUser Story Maps can help you:- Make better decisions- Visualize progress- Influence iterative development- … Increase your ability to deliver
@SRogalsky
Steve Rogalsky
Thanks! Questions?
http://www.slideshare.net/SteveRogalsky/user-story-mapping-in-practice
LinksMy blog: User Story Map series:- How to create:
http://winnipegagilist.blogspot.ca/2012/03/how-to-create-user-story-map.html
- How to prioritize: http://winnipegagilist.blogspot.com/2013/02/how-to-prioritize-user-story-map.html
- Tips for facilitation: http://winnipegagilist.blogspot.com/2012/12/tips-for-facilitating-user-story.html
Jeff Patton articles:- http://www.agileproductdesign.com/blog/the_new_backlog.html - http://www.agileproductdesign.com/writing/how_you_slice_it.pdf
DotNetRocks podcast:- Show #750: http://www.dotnetrocks.com/default.aspx?showNum=750
This presentation:- http://www.slideshare.net/SteveRogalsky/user-story-mapping-in-practice