Patrick, from Squarepants, is my assistant in this presentation. He will give us insights about how to create valuable User Stories, split it and how to track/measure the work done.
UiPath manufacturing technology benefits and AI overview
Vertical User Stories
1. Vertical User
Stories
Slicing the cake to create and
deliver valuable User Stories
Moisés Armani Ramírez
https://www.linkedin.com/in/moisesarmaniramirez/
2. How do you EAT a cake?
B) A slice C) Layer by layer
A) The whole cake
You can eat a cake however you want to
3. How do you BUY a cake?
B) A slice C) Layer by layer
A) The whole cake
However, you won't find a cake to buy in
any way you want to. Do you know why?
4. How a SOFTWARE is built How VALUE is delivered
OR
7º Agile Manifesto Principle: Working software is the primary measure of progress
5. "A vertical slice of cake means a user story
should contain work for as many of the different
layers as possible".
Vertical slice is a way of:
● Writing requirements
● Splitting user stories
● Following the INVEST guidelines
● Creating valuable user stories
Vertical User Stories
https://www.visual-paradigm.com/scrum/user-story-splitting-vertical-slice-vs-horizontal-slice/
https://www.deltamatrix.com/horizontal-and-vertical-user-stories-slicing-the-cake/
Think of a whole user story
as a multi-layer cake
I – Independent
N – Negotiable
V – Valuable
E – Estimable
S – Small
T – Testable
6. How to split user stories
Horizontal slice Vertical slice
Create a
new
service
Update
the X
service
Add a
new field
As…
I want…
So that…
Update
the X
service
Create a
new
service
Add a
new field
User Story
Sub-task
Update
Unit tests
Add Unit
Tests
Build UI
compone
nt
Create
API
document
ation
Review
the UI/UX
with the
designer
Back-end Back-end Front-end
Back-end Back-end Front-end
Even though you have full-stack
developers, you may find useful splitting
the work to be done by tech stack
7. Comparison between these two approaches
Horizontal slice Vertical slice
Focus on the solution Focus on the problem
Generates more User Stories Generates less User Stories
Complex to manage value Simple to manage value
Adds value when all related User Stories
are delivered
Adds value when the User Story is
delivered
Easy to estimate Not so easy to estimate
Throughput at Tech Stack level Throughput at User Story level
Difficult to get the Cycle Time Easy to get the Cycle Time
8. Kanban metrics definition
Cycle Time
"Cycle Time is the amount of time a team/
person spends actually working on a work item
up until it is ready for delivery". (businessmap)
"Is a metric that measures how long it takes for
an item to move from the “in-progress” column
to the “done” column". (Kanban Tool)
Throughput
"The number of work items exiting from the
system or a given part of it; measured in work
items delivered per time period. Throughput is
often referred to as delivery rate". (Kanban
University)
"It’s the number of completed cards per day,
week, or a given iteration time". (Kanban Tool)
9. Cycle time example
Horizontal slice Vertical slice
Story Create a new
service
Update the X
service
Add a new field As…
I want…
So that…
Tech Stack Back-end Back-end Front-end Back-end &
Front-end
Start Date 1 Sep 1 Sep 3 Sep 1 Sep
End Date 2 Sep 1 Sep 4 Sep 4 Sep
Cycle Time 2 days 1 day 2 days 4 days
Total Cycle Time 4 days 4 days
FE Cycle Time 2 days Don't know
10. Throughput example
Horizontal slice Vertical slice
Create a
new
service
Update
the X
service
Add a
new field
As…
I want…
So that…
Back-end Back-end Front-end
3 tickets 1 ticket
How many tickets were delivered between 1 and 4 September?
2 tickets Don't know
(at User Story level)
How many back-end tickets were delivered between 1 and 4 September?
11. Throughput challenges
Horizontal slice Vertical slice
Create a
new
service
Update
the X
service
Add a
new field
As…
I want…
So that…
Update
the X
service
Create a
new
service
Add a
new field
User Story
Sub-task
Update
Unit tests
Add Unit
Tests
Build UI
compone
nt
Create
API
document
ation
Review
the UI/UX
with the
designer
Back-end Back-end Front-end
Back-end Back-end Front-end
Hybrid approach: Should we track at User Story or sub-task level?
Front-end
Back-end
12. Throughput challenges
User Story requiring more
than one Tech Stack
User Story requiring one
Tech Stack only
Add a
new field
As…
I want…
So that…
Update
the X
service
Create a
new
service
Add a
new field
User Story
Sub-task
Build UI
compone
nt
Review
the UI/UX
with the
designer
Front-end
Back-end Back-end Front-end
Front-end
Front-end
Vertical Slice approach ONLY: Let's track at sub-task level. How do
we differentiate a Tech Stack sub-task from a regular sub-task?
Front-end
Back-end
13. The feature is going to be available in both Web and Mobile versions
As…
I want…
So that…
Update
the X
service
Create a
new
service
Add a
new field
Back-end Back-end Front-end
Vertical Slice approach ONLY: Even though the back-end and
front-end are already deployed to production, the User Story cannot
be completed until the Mobile sub-task is also done.
Add a
new field
Mobile
OMG! The Cycle
Time is going to
increase!!!
Throughput challenges