user story slicing - easy way to split user stories
DESCRIPTION
This is a presentation from Scrum Gathering 2014 in Berlin. It describes a technique called "User Story Slicing" to make smaller, valuable slices out of a bigger story or epic.TRANSCRIPT
User story slicingSplitting User Stories made easy
Scrum Gathering Berlin, 2014
Arto EskelinenCertified Scrum Trainer,
Coach, Consultantat
Reaktor, Finland Twitter:@artoes
User Story
As a <type of user> I can <function> so that <I achieve my goal>
User Story
As a <type of user> I can <function> so that <I achieve my goal>
User’s need or goal outside the system
User Story
As a <type of user> I can <function> so that <I achieve my goal>
how system fulfils the need
User’s need or goal outside the system
Scaling Stories
Investment Theme
Epic
Feature
Implementation Story
Value Proposition!Expected Impact
User Goal User need “Job to be done”
How the “system” solves the problem!What is the user interaction?
Slice of feature that can be done in one iteration
LEVEL FOCUS
1..N
1..N
1..N
1
1
1
Scaling Stories
Investment Theme
Epic
Feature
Implementation Story
Value Proposition!Expected Impact
User Goal User need “Job to be done”
How the “system” solves the problem!What is the user interaction?
Slice of feature that can be done in one iteration
LEVEL FOCUS
1..N
1..N
1..N
1
1
1
Problem Domain
Solution Domain
Scaling Stories
Investment Theme
Epic
Feature
Implementation Story
Value Proposition!Expected Impact
User Goal User need “Job to be done”
How the “system” solves the problem!What is the user interaction?
Slice of feature that can be done in one iteration
LEVEL FOCUS
1..N
1..N
1..N
1
1
1
Problem Domain
Solution Domain
Why split?• To get something finished in a sprint
• This gives you:
• Better transparency when you know where you are
• Faster feedback
• Faster learning
• Faster delivery of value
• End-to-End
• customer centric
The principles of Slicing
• End-to-End
• customer centric
The principles of Slicing
Exercise 1
• Find yourself a pair
• Together, write a user story
Example Stories
• As a tax payer I can do my fiscal declaration in the internet so that I can update it easily
• As a billing clerk I want to know the network transactions so that I can generate a bill
• As a gas station keeper I want to know how much gasoline there is in the tank so I can order more when it’s getting empty
As a Traveller I can buy a trip
so that I get elsewhere
Example
Step 1- What happens here?
1.Describe the workflow
As a Traveller I can buy a trip
so that I get elsewhere
Sear
ch As a Traveller I can buy a trip
so that I get elsewhere
Sear
ch
Selec
t As a Traveller I can buy a trip
so that I get elsewhere
Sear
ch
Selec
t
Pay As a Traveller
I can buy a trip so that I get elsewhere
Sear
ch
Selec
t
Pay
Deliv
er As a Traveller I can buy a trip
so that I get elsewhere
As a Traveller I can buy a trip
so that I get elsewhereSear
ch
Selec
t
Pay
Deliv
er
For your user story, describe the workflow
Step 2 - Create options
• For each step, think about possible levels of quality of service (QoS)
• Try to find the simplest possible first,
• Then add more sophisticated options
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
As a Traveller I can buy a trip
so that I get elsewhere
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
As a Traveller I can buy a trip
so that I get elsewhere
SearchSimple
Fancy
QoS
SearchSimple
Fancy
QoS
One Item
SearchSimple
Fancy
QoS
One Item
List of Items
SearchSimple
Fancy
QoS
One Item
List of Items
Text Search
SearchSimple
Fancy
QoS
One Item
List of Items
Text Search
Based on user profile
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
As a Traveller I can buy a trip
so that I get elsewhere
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
As a Traveller I can buy a trip
so that I get elsewhere
SelectSimple
Fancy
QoS
One Item (e.g. Bus)
SelectSimple
Fancy
QoS
One Item (e.g. Bus)
Several items of the same type (Bus)
SelectSimple
Fancy
QoS
One Item (e.g. Bus)
Several items of the same type (Bus)
Several Items, two types (Bus+hotels)
SelectSimple
Fancy
QoS
One Item (e.g. Bus)
Several items of the same type (Bus)
Several Items, two types (Bus+hotels)
Reservations to opera dinner included
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
Several Items,
different types
Reservations as options
As a Traveller I can buy a trip
so that I get elsewhere
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
Several Items,
different types
Reservations as options
As a Traveller I can buy a trip
so that I get elsewhere
PaySimple
Fancy
QoS
PaySimple
Fancy
QoS
Cash
PaySimple
Fancy
QoS
Cash
Bill
PaySimple
Fancy
QoS
Cash
Bill
Credit card
PaySimple
Fancy
QoS
Cash
Bill
Credit card
Quick loan with payback plan
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
Several Items,
different types
Reservations as options
Cash
Bill
Visa
Quick Loan with
payback plan
As a Traveller I can buy a trip
so that I get elsewhere
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
Several Items,
different types
Reservations as options
Cash
Bill
Visa
Quick Loan with
payback plan
As a Traveller I can buy a trip
so that I get elsewhere
DeliverySimple
Fancy
QoS
DeliverySimple
Fancy
QoS
No tickets, (your name is in the list)
DeliverySimple
Fancy
QoS
No tickets, (your name is in the list)
Print it yourself
DeliverySimple
Fancy
QoS
No tickets, (your name is in the list)
Print it yourself
DeliverySimple
Fancy
QoS
No tickets, (your name is in the list)
Print it yourself
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
Several Items,
different types
Reservations as options
Cash
Bill
Visa
Quick Loan with
payback plan
send ticket by trad. mail
Print ticket
email ticket
As a Traveller I can buy a trip
so that I get elsewhere
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
Several Items,
different types
Reservations as options
Cash
Bill
Visa
Quick Loan with
payback plan
send ticket by trad. mail
Print ticket
email ticket
As a Traveller I can buy a trip
so that I get elsewhere
For your user story, create the steps from
simple to fancy
Step 3 -Time to SliceStart “slicing” stories
• try to create one vertical, end-to-end slice first
• Then, define new stories that add functionality by small steps
!
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
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
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
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
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
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
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
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 Traveller I can buy one predefined trip, and pay and get my
ticket in the office.
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
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 Traveller I can buy one predefined trip, and pay and get my
ticket in the office.
As a Traveller I can choose one trip
from a list of options, and pay and get my ticket in
the office. !
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
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 Traveller I can buy one predefined trip, and pay and get my
ticket in the office. As a Traveller
I can choose one trip from a list of options, and pay and get my ticket in
the office. As a Traveller
I can choose one trip from a list of options, pay it using Bill, and get my
ticket in the office.
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
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 Traveller I can buy one predefined trip, and pay and get my
ticket in the office. As a Traveller
I can choose one trip from a list of options, and pay and get my ticket in
the office. As a Traveller
I can choose one trip from a list of options, pay it using Bill, and get my
ticket in the office.
As a Traveller I can choose one trip
from a list of options, pay it using Bill, and get my
ticket by mail.
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
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 Traveller I can buy one predefined trip, and pay and get my
ticket in the office. As a Traveller
I can choose one trip from a list of options, and pay and get my ticket in
the office. As a Traveller
I can choose one trip from a list of options, pay it using Bill, and get my
ticket in the office.
As a Traveller I can choose one trip
from a list of options, pay it using Bill, and get my
ticket by mail.
As a Traveller I can choose one trip
from a list of options, pay it using Bill, and get my
ticket by email.
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
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 Traveller I can buy one predefined trip, and pay and get my
ticket in the office. As a Traveller
I can choose one trip from a list of options, and pay and get my ticket in
the office. As a Traveller
I can choose one trip from a list of options, pay it using Bill, and get my
ticket in the office.
As a Traveller I can choose one trip
from a list of options, pay it using Bill, and get my
ticket by mail.
As a Traveller I can choose one trip
from a list of options, pay it using Bill, and get my
ticket by email.
As a Traveller I can search trips that match to given words,
choose one , pay it using Bill, and get my ticket by
email. As a Traveller I can search trips that match to given words, choose many , pay it using Bill, and get my
ticket by email.
Sear
ch
Selec
t
Pay
Deliv
er
Simple
Fancy
QoS
One Item
List
Text Search
User optimize
d
One Item
Several Items, same
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 Traveller I can buy one predefined trip, and pay and get my
ticket in the office. As a Traveller
I can choose one trip from a list of options, and pay and get my ticket in
the office. As a Traveller
I can choose one trip from a list of options, pay it using Bill, and get my
ticket in the office.
As a Traveller I can choose one trip
from a list of options, pay it using Bill, and get my
ticket by mail.
As a Traveller I can choose one trip
from a list of options, pay it using Bill, and get my
ticket by email.
As a Traveller I can search trips that match to given words,
choose one , pay it using Bill, and get my ticket by
email. As a Traveller I can search trips that match to given words, choose many , pay it using Bill, and get my
ticket by email.
Create new “slices” of your user story.
Try to get the simple end-to-end first.
The whole process1.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
• Don’t slice the whole story at once
Once slice when you are ready to eat
User stories are fractals
http://www.free-jigsaws.com/48_piece_jigsaw_puzzles/coil%20fractal.html
Questions?
Please give us your real time session feedback - !
Click on the session – Arto Eskelinen Slicing User Stories
Follow the link to provide session feedback.
Rate the session based on your personal experience
Thank you!