User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product...
Transcript of User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product...
User Stories for YourProduct Backlog
Mike CohnApril 14, 2008
® © 2003–2008 Mountain Goat Software®
Mike Cohn - background
1
2
® © 2003–2008 Mountain Goat Software®
® © 2003–2008 Mountain Goat Software®
Ron Jeffries’ Three Cs
Source: XP Magazine 8/30/01, Ron Jeffries.
3
4
® © 2003–2008 Mountain Goat Software®
Samples from a travel website
so that I save time
booking trips I take
often.
® © 2003–2008 Mountain Goat Software®
Where are the details?
• As a user, I can cancel a reservation.
• Does the user get a full or partial refund?
• Is the refund to her credit card or is it site credit?
• How far ahead must the reservation be cancelled?
• Is that the same for all hotels?
• For all site visitors? Can frequent travelers cancel later?
• Is a confirmation provided to the user?
• How?
5
6
® © 2003–2008 Mountain Goat Software®
Details as conditions of satisfaction
• The product owner’s conditions of satisfaction can be added to a story
• These are essentially tests
® © 2003–2008 Mountain Goat Software®
Details added in smaller sub-stories
7
8
® © 2003–2008 Mountain Goat Software®
Techniques can be combined
• These approaches are not mutually exclusive
• Write stories at an appropriate level
• By the time it’s implemented, each story will have conditions of satisfaction associated with it
® © 2003–2008 Mountain Goat Software®
9
10
® © 2003–2008 Mountain Goat Software®
“The User”
• Many projects mistakenly assume there’s only one user:
• “The user”
• Write all stories from one user’s perspective
• Assume all users have the same goals
• Leads to missing stories
® © 2003–2008 Mountain Goat Software®
Common attributes
11
12
® © 2003–2008 Mountain Goat Software®
User roles
• Broaden the scope from looking at one user
• Allows users to vary by
• What they use the software for
• How they use the software
• Background
• Familiarity with the software / computers
• Used extensively in usage-centered designSource: Software for Use by Constantine and Lockwood (1999).
® © 2003–2008 Mountain Goat Software®
System and programmer users
13
14
® © 2003–2008 Mountain Goat Software®
Decorated roles
® © 2003–2008 Mountain Goat Software®
User role modeling
15
16
® © 2003–2008 Mountain Goat Software®
® © 2003–2008 Mountain Goat Software®
17
18
® © 2003–2008 Mountain Goat Software®
The product backlog iceberg
Sprint
Release
FutureReleases
Priority
® © 2003–2008 Mountain Goat Software®
Stories, themes and epicsUser StoryA description of desired functionality told from the perspective of the user or customer.
ThemeA collection of related user stories.
EpicA large user story.
19
20
® © 2003–2008 Mountain Goat Software®
An example
Clearly an epic
Epics??
® © 2003–2008 Mountain Goat Software®
An example
21
22
® © 2003–2008 Mountain Goat Software®
Finally, add the Conditions Of Satisfaction
® © 2003–2008 Mountain Goat Software®
Another example
Clearly an epic
Epics??
23
24
® © 2003–2008 Mountain Goat Software®
An example
® © 2003–2008 Mountain Goat Software®
Story-writing workshops
• Includes developers, users, customer, others
• Brainstorm to generate stories
• Goal is to write as many stories as possible
• Some will be “implementation ready”
• Others will be “epics”
• No prioritization at this point
25
26
® © 2003–2008 Mountain Goat Software®
Start with epics and iterate
® © 2003–2008 Mountain Goat Software®
Or start with a mindmap
27
28
® © 2003–2008 Mountain Goat Software®
A story-writing workshop
“As a <user role>,I want <goal>so that <reason>.”
Use this template
® © 2003–2008 Mountain Goat Software®
29
30
® © 2003–2008 Mountain Goat Software®
then
“You built what I
asked for, but it’s
not what I need.”
® © 2003–2008 Mountain Goat Software®
Words are imprecise
31
32
® © 2003–2008 Mountain Goat Software®
® © 2003–2008 Mountain Goat Software®
What are we building?1.The product shall have a gas engine.2.The product shall have four wheels.
2.1.The product shall have a rubber tire mounted to each wheel.
3.The product shall have a steering wheel.4.The product shall have a steel body.
Source: Adapted from The Inmates are Running the Asylum by Alan Cooper (1999).
33
34
® © 2003–2008 Mountain Goat Software®
What if we had stories instead?
® © 2003–2008 Mountain Goat Software®
The product
35
36
® © 2003–2008 Mountain Goat Software®
Mike [email protected]
(720) 890 6110 (office)(303) 810 2190 (mobile)
37