User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product...

19
User Stories for Your Product Backlog Mike Cohn April 14, 2008 ® © 2003–2008 Mountain Goat Software ® Mike Cohn - background 1 2

Transcript of User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product...

Page 1: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

User Stories for YourProduct Backlog

Mike CohnApril 14, 2008

® © 2003–2008 Mountain Goat Software®

Mike Cohn - background

1

2

Page 2: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 2003–2008 Mountain Goat Software®

® © 2003–2008 Mountain Goat Software®

Ron Jeffries’ Three Cs

Source: XP Magazine 8/30/01, Ron Jeffries.

3

4

Page 3: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 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

Page 4: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 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

Page 5: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 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

Page 6: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 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

Page 7: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 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

Page 8: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 2003–2008 Mountain Goat Software®

Decorated roles

® © 2003–2008 Mountain Goat Software®

User role modeling

15

16

Page 9: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 2003–2008 Mountain Goat Software®

® © 2003–2008 Mountain Goat Software®

17

18

Page 10: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 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

Page 11: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 2003–2008 Mountain Goat Software®

An example

Clearly an epic

Epics??

® © 2003–2008 Mountain Goat Software®

An example

21

22

Page 12: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 2003–2008 Mountain Goat Software®

Finally, add the Conditions Of Satisfaction

® © 2003–2008 Mountain Goat Software®

Another example

Clearly an epic

Epics??

23

24

Page 13: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 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

Page 14: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 2003–2008 Mountain Goat Software®

Start with epics and iterate

® © 2003–2008 Mountain Goat Software®

Or start with a mindmap

27

28

Page 15: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 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

Page 16: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 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

Page 17: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 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

Page 18: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 2003–2008 Mountain Goat Software®

What if we had stories instead?

® © 2003–2008 Mountain Goat Software®

The product

35

36

Page 19: User Stories for Your Product Backlog - Mike Cohn · 2015-01-29 · User Stories for Your Product Backlog Author: Michael Cohn Created Date: 3/23/2008 2:35:00 PM ...

® © 2003–2008 Mountain Goat Software®

Mike [email protected]

(720) 890 6110 (office)(303) 810 2190 (mobile)

37