User story slicing

Post on 19-Oct-2014

843 views 1 download

Tags:

description

A Simple way of splitting user stories into end-to-end pieces that fit into sprints.

Transcript of User story slicing

USER STORY SLICINGSplitting User Stories made easy

As a TravellerI can buy a tripso that I get elsewhere

STEP 1- WHAT HAPPENS HERE?

1.Describe the workflow

Sear

ch

Sear

ch

Sele

ct

Sear

ch

Sele

ct

Pay

Sear

ch

Sele

ct

Pay

Del

iver

STEP 2 - CREATE OPTIONS

For each step, think about possible levels of quality of service (QoS)

1. Try to find the simplest possible first,

2.Then add more sophisticated options

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Cash

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Cash

Bill

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Cash

Bill

Visa

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Cash

Bill

Visa

Quick Loan with payback

plan

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Cash

Bill

Visa

Quick Loan with payback

plan

send ticket by trad.

mail

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Cash

Bill

Visa

Quick Loan with payback

plan

send ticket by trad.

mail

Print ticket

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Cash

Bill

Visa

Quick Loan with payback

plan

send ticket by trad.

mail

Print ticket

email ticket

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Cash

Bill

Visa

Quick Loan with payback

plan

send ticket by trad.

mail

Print ticket

email ticket

STEP 3 -TIME TO SLICE

Start “slicing” stories

1. try to create one vertical, end-to-end slice first

2. Then, define new stories that add functionality by small steps

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Cash

Bill

Visa

Quick Loan with payback

plan

send ticket by trad.

mail

Print ticket in office

email ticket

As a TravellerI can buy one predefined trip, and pay and get my ticket in the office.

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Cash

Bill

Visa

Quick Loan with payback

plan

send ticket by trad.

mail

Print ticket in office

email ticket

As a TravellerI can buy one predefined trip, and pay and get my ticket in the office. As a TravellerI can choose one trip from a list of options, and pay and get my ticket in the office.

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Cash

Bill

Visa

Quick Loan with payback

plan

send ticket by trad.

mail

Print ticket in office

email ticket

As a TravellerI can buy one predefined trip, and pay and get my ticket in the office. As a TravellerI can choose one trip from a list of options, and pay and get my ticket in the office. As a TravellerI can choose one trip from a list of options, pay it using Bill, and get my ticket in the office.

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Cash

Bill

Visa

Quick Loan with payback

plan

send ticket by trad.

mail

Print ticket in office

email ticket

As a TravellerI can buy one predefined trip, and pay and get my ticket in the office. As a TravellerI can choose one trip from a list of options, and pay and get my ticket in the office. As a TravellerI can choose one trip from a list of options, pay it using Bill, and get my ticket in the office.

As a TravellerI can choose one trip from a list of options, pay it using Bill, and get my ticket by mail.

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Cash

Bill

Visa

Quick Loan with payback

plan

send ticket by trad.

mail

Print ticket in office

email ticket

As a TravellerI can buy one predefined trip, and pay and get my ticket in the office. As a TravellerI can choose one trip from a list of options, and pay and get my ticket in the office. As a TravellerI can choose one trip from a list of options, pay it using Bill, and get my ticket in the office.

As a TravellerI can choose one trip from a list of options, pay it using Bill, and get my ticket by mail.

As a TravellerI can choose one trip from a list of options, pay it using Bill, and get my ticket by email.

Sear

ch

Sele

ct

Pay

Del

iver

Simple

Fancy

QoS

One Item

List

Text Search

User optimize

One Item

Several Items,

same type

Several Items,

different types

Reservations as options

Cash

Bill

Visa

Quick Loan with payback

plan

send ticket by trad.

mail

Print ticket in office

email ticket

As a TravellerI can buy one predefined trip, and pay and get my ticket in the office. As a TravellerI can choose one trip from a list of options, and pay and get my ticket in the office. As a TravellerI can choose one trip from a list of options, pay it using Bill, and get my ticket in the office.

As a TravellerI can choose one trip from a list of options, pay it using Bill, and get my ticket by mail.

As a TravellerI can choose one trip from a list of options, pay it using Bill, and get my ticket by email.

As a TravellerI can search trips that match to given words, choose one , pay it using Bill, and get my ticket by email.

As a TravellerI can search trips that match to given words, choose many , pay it using Bill, and get my ticket by email.

THE WHOLE PROCESS

1. Describe the steps of the workflow

2. For each step, think about possible levels of quality of service (QoS)

1. Try to find the simplest possible first,

2. Then add more sophisticated options

3. Start “slicing” stories

1. try to create one vertical, end-to-end slice first

2. Then, define new stories that add functionality by small steps

THINGS TO REMEMBER

• Aim to end-to-end slices

• The simplest possible solution is often more simple than you think

• When taking the slice into a sprint, you can slice it into tasks using the same technique, since...

USER STORIES ARE FRACTALS

http://www.free-jigsaws.com/48_piece_jigsaw_puzzles/coil%20fractal.html

FINAL ADVICE

• Once slice when you are ready to eat

THANK YOU!

• Arto Eskelinen

• Coach, Consultant, Certified Scrum Trainer

• arto.eskelinen@gosei.fi

• Twitter :@artoes