SlideShare a Scribd company logo
1 of 16
Download to read offline
Vertical User
Stories
Slicing the cake to create and
deliver valuable User Stories
Moisés Armani Ramírez
https://www.linkedin.com/in/moisesarmaniramirez/
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
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?
How a SOFTWARE is built How VALUE is delivered
OR
7º Agile Manifesto Principle: Working software is the primary measure of progress
"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
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
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
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)
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
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?
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
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
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
Working software
over
comprehensive documentation
https://agilemanifesto.org/
Find the right balance between delivery and metrics
Do not compromise your deliverables at the expense of a complex
process to collect metrics
Automate it as much as possible to avoid manual mistakes
Keep in mind
Agile Manifesto Value
Brainstorming session
What would be the best
approach for tracking both
value and tech stack?
Q&A
moisesarmaniramirez

More Related Content

Similar to Vertical User Stories

Patterns and practices for real-world event-driven microservices by Rachel Re...
Patterns and practices for real-world event-driven microservices by Rachel Re...Patterns and practices for real-world event-driven microservices by Rachel Re...
Patterns and practices for real-world event-driven microservices by Rachel Re...Codemotion Dubai
 
Patterns and practices for real-world event-driven microservices
Patterns and practices for real-world event-driven microservicesPatterns and practices for real-world event-driven microservices
Patterns and practices for real-world event-driven microservicesRachel Reese
 
Confluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with SynthesisConfluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with Synthesisconfluent
 
Digite - Project Management Training
Digite - Project Management TrainingDigite - Project Management Training
Digite - Project Management TrainingDigite, Inc.
 
Scrum Basics - User Stories.pdf
Scrum Basics - User Stories.pdfScrum Basics - User Stories.pdf
Scrum Basics - User Stories.pdfNarasimhaL2
 
Microservices Chaos Testing at Jet
Microservices Chaos Testing at JetMicroservices Chaos Testing at Jet
Microservices Chaos Testing at JetC4Media
 
Value stream mapping (1)
Value stream mapping (1)Value stream mapping (1)
Value stream mapping (1)jmachado33
 
Announcing AWS Step Functions - December 2016 Monthly Webinar Series
Announcing AWS Step Functions - December 2016 Monthly Webinar SeriesAnnouncing AWS Step Functions - December 2016 Monthly Webinar Series
Announcing AWS Step Functions - December 2016 Monthly Webinar SeriesAmazon Web Services
 
User story slicing exercise
User story slicing exerciseUser story slicing exercise
User story slicing exercisePaulo Clavijo
 
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...VMware Tanzu
 
OSDC 2018 | From Monolith to Microservices by Paul Puschmann_
OSDC 2018 | From Monolith to Microservices by Paul Puschmann_OSDC 2018 | From Monolith to Microservices by Paul Puschmann_
OSDC 2018 | From Monolith to Microservices by Paul Puschmann_NETWAYS
 
Building Better Products Using User Story Mapping
Building Better Products Using User Story MappingBuilding Better Products Using User Story Mapping
Building Better Products Using User Story MappingIT Weekend
 
User Testing in the Invisible World of APIs
User Testing in the Invisible World of APIsUser Testing in the Invisible World of APIs
User Testing in the Invisible World of APIsPronovix
 
Building Event Driven Architectures with Kafka and Cloud Events (Dan Rosanova...
Building Event Driven Architectures with Kafka and Cloud Events (Dan Rosanova...Building Event Driven Architectures with Kafka and Cloud Events (Dan Rosanova...
Building Event Driven Architectures with Kafka and Cloud Events (Dan Rosanova...confluent
 
The UX of DX: User Testing in the Invisible World of APIs
The UX of DX: User Testing in the Invisible World of APIsThe UX of DX: User Testing in the Invisible World of APIs
The UX of DX: User Testing in the Invisible World of APIsPronovix
 
Evolutionary Architecture And Design
Evolutionary Architecture And DesignEvolutionary Architecture And Design
Evolutionary Architecture And DesignNaresh Jain
 
NEW LAUNCH! Serverless Apps with AWS Step Functions
NEW LAUNCH! Serverless Apps with AWS Step FunctionsNEW LAUNCH! Serverless Apps with AWS Step Functions
NEW LAUNCH! Serverless Apps with AWS Step FunctionsAmazon Web Services
 
Demystifying S-Controls and AJAX
Demystifying S-Controls and AJAXDemystifying S-Controls and AJAX
Demystifying S-Controls and AJAXdreamforce2006
 

Similar to Vertical User Stories (20)

User Story Mapping
User Story MappingUser Story Mapping
User Story Mapping
 
Patterns and practices for real-world event-driven microservices by Rachel Re...
Patterns and practices for real-world event-driven microservices by Rachel Re...Patterns and practices for real-world event-driven microservices by Rachel Re...
Patterns and practices for real-world event-driven microservices by Rachel Re...
 
Patterns and practices for real-world event-driven microservices
Patterns and practices for real-world event-driven microservicesPatterns and practices for real-world event-driven microservices
Patterns and practices for real-world event-driven microservices
 
Confluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with SynthesisConfluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with Synthesis
 
Digite - Project Management Training
Digite - Project Management TrainingDigite - Project Management Training
Digite - Project Management Training
 
Scrum Basics - User Stories.pdf
Scrum Basics - User Stories.pdfScrum Basics - User Stories.pdf
Scrum Basics - User Stories.pdf
 
Microservices Chaos Testing at Jet
Microservices Chaos Testing at JetMicroservices Chaos Testing at Jet
Microservices Chaos Testing at Jet
 
Value stream mapping (1)
Value stream mapping (1)Value stream mapping (1)
Value stream mapping (1)
 
Announcing AWS Step Functions - December 2016 Monthly Webinar Series
Announcing AWS Step Functions - December 2016 Monthly Webinar SeriesAnnouncing AWS Step Functions - December 2016 Monthly Webinar Series
Announcing AWS Step Functions - December 2016 Monthly Webinar Series
 
User story slicing exercise
User story slicing exerciseUser story slicing exercise
User story slicing exercise
 
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
 
OSDC 2018 | From Monolith to Microservices by Paul Puschmann_
OSDC 2018 | From Monolith to Microservices by Paul Puschmann_OSDC 2018 | From Monolith to Microservices by Paul Puschmann_
OSDC 2018 | From Monolith to Microservices by Paul Puschmann_
 
Building Better Products Using User Story Mapping
Building Better Products Using User Story MappingBuilding Better Products Using User Story Mapping
Building Better Products Using User Story Mapping
 
User Testing in the Invisible World of APIs
User Testing in the Invisible World of APIsUser Testing in the Invisible World of APIs
User Testing in the Invisible World of APIs
 
Building Event Driven Architectures with Kafka and Cloud Events (Dan Rosanova...
Building Event Driven Architectures with Kafka and Cloud Events (Dan Rosanova...Building Event Driven Architectures with Kafka and Cloud Events (Dan Rosanova...
Building Event Driven Architectures with Kafka and Cloud Events (Dan Rosanova...
 
The UX of DX: User Testing in the Invisible World of APIs
The UX of DX: User Testing in the Invisible World of APIsThe UX of DX: User Testing in the Invisible World of APIs
The UX of DX: User Testing in the Invisible World of APIs
 
Evolutionary Architecture And Design
Evolutionary Architecture And DesignEvolutionary Architecture And Design
Evolutionary Architecture And Design
 
NEW LAUNCH! Serverless Apps with AWS Step Functions
NEW LAUNCH! Serverless Apps with AWS Step FunctionsNEW LAUNCH! Serverless Apps with AWS Step Functions
NEW LAUNCH! Serverless Apps with AWS Step Functions
 
Resume (1)
Resume (1)Resume (1)
Resume (1)
 
Demystifying S-Controls and AJAX
Demystifying S-Controls and AJAXDemystifying S-Controls and AJAX
Demystifying S-Controls and AJAX
 

More from Moisés Armani Ramírez

Scrum is not for everyone: How Scrum does not look like
Scrum is not for everyone: How Scrum does not look likeScrum is not for everyone: How Scrum does not look like
Scrum is not for everyone: How Scrum does not look likeMoisés Armani Ramírez
 
Scrum master: Coaching and facilitating Agile teams
Scrum master: Coaching and facilitating Agile teamsScrum master: Coaching and facilitating Agile teams
Scrum master: Coaching and facilitating Agile teamsMoisés Armani Ramírez
 
Monografia sobre crowdsourcing + crowd testing + processo de teste de software
Monografia sobre crowdsourcing + crowd testing + processo de teste de softwareMonografia sobre crowdsourcing + crowd testing + processo de teste de software
Monografia sobre crowdsourcing + crowd testing + processo de teste de softwareMoisés Armani Ramírez
 
CROWD TESTING: O PODER DA MULTIDÃO EM PROL DA QUALIDADE DE SOFTWARE
CROWD TESTING: O PODER DA MULTIDÃO EM PROL DA QUALIDADE DE SOFTWARECROWD TESTING: O PODER DA MULTIDÃO EM PROL DA QUALIDADE DE SOFTWARE
CROWD TESTING: O PODER DA MULTIDÃO EM PROL DA QUALIDADE DE SOFTWAREMoisés Armani Ramírez
 
Crowd Testing - Defesa do Trabalho de Conclusão de Curso
Crowd Testing - Defesa do Trabalho de Conclusão de CursoCrowd Testing - Defesa do Trabalho de Conclusão de Curso
Crowd Testing - Defesa do Trabalho de Conclusão de CursoMoisés Armani Ramírez
 

More from Moisés Armani Ramírez (10)

Throughput
ThroughputThroughput
Throughput
 
User Stories Fundamentals
User Stories FundamentalsUser Stories Fundamentals
User Stories Fundamentals
 
Kanban method introduction
Kanban method introductionKanban method introduction
Kanban method introduction
 
Scrum is not for everyone: How Scrum does not look like
Scrum is not for everyone: How Scrum does not look likeScrum is not for everyone: How Scrum does not look like
Scrum is not for everyone: How Scrum does not look like
 
Scrum master: Coaching and facilitating Agile teams
Scrum master: Coaching and facilitating Agile teamsScrum master: Coaching and facilitating Agile teams
Scrum master: Coaching and facilitating Agile teams
 
Scrum Guide In One Slide
Scrum Guide In One SlideScrum Guide In One Slide
Scrum Guide In One Slide
 
The Five Dysfunctions of a Team
The Five Dysfunctions of a TeamThe Five Dysfunctions of a Team
The Five Dysfunctions of a Team
 
Monografia sobre crowdsourcing + crowd testing + processo de teste de software
Monografia sobre crowdsourcing + crowd testing + processo de teste de softwareMonografia sobre crowdsourcing + crowd testing + processo de teste de software
Monografia sobre crowdsourcing + crowd testing + processo de teste de software
 
CROWD TESTING: O PODER DA MULTIDÃO EM PROL DA QUALIDADE DE SOFTWARE
CROWD TESTING: O PODER DA MULTIDÃO EM PROL DA QUALIDADE DE SOFTWARECROWD TESTING: O PODER DA MULTIDÃO EM PROL DA QUALIDADE DE SOFTWARE
CROWD TESTING: O PODER DA MULTIDÃO EM PROL DA QUALIDADE DE SOFTWARE
 
Crowd Testing - Defesa do Trabalho de Conclusão de Curso
Crowd Testing - Defesa do Trabalho de Conclusão de CursoCrowd Testing - Defesa do Trabalho de Conclusão de Curso
Crowd Testing - Defesa do Trabalho de Conclusão de Curso
 

Recently uploaded

Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...panagenda
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FIDO Alliance
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxFIDO Alliance
 
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...ScyllaDB
 
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideCollecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideStefan Dietze
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Patrick Viafore
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceSamy Fodil
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfSrushith Repakula
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Hiroshi SHIBATA
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...FIDO Alliance
 
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...FIDO Alliance
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024Stephen Perrenod
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfFIDO Alliance
 
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?Paolo Missier
 
Your enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4jYour enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4jNeo4j
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?Mark Billinghurst
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctBrainSell Technologies
 
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfBreaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfUK Journal
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftshyamraj55
 

Recently uploaded (20)

Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptx
 
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
 
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideCollecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
 
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
 
Your enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4jYour enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4j
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfBreaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
 
Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 

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
  • 14. Working software over comprehensive documentation https://agilemanifesto.org/ Find the right balance between delivery and metrics Do not compromise your deliverables at the expense of a complex process to collect metrics Automate it as much as possible to avoid manual mistakes Keep in mind Agile Manifesto Value
  • 15. Brainstorming session What would be the best approach for tracking both value and tech stack?