Vertical Slicing Listicle
Every time I arrive to a new company or team, one of the first things that I get myself doing is talking about vertical slicing: why it matters, techniques, workshops, etc. And then, I take a look for the n-th time to the resources I have saved in Notion, Drive, GitHub, or my hard-drive (distributed systems have their drawbacks 🤣), in order to share them (because… well, you know, sharing is caring 😄).
The goal of this post, which I will update whenever I discover more interesting resources, is to have in a single place the main resources that I have found valuable related with “vertical slicing”. Some people refer to it as story slicing or vertical story slicing: all sounds great to me. Personally, I prefer thinking of “story slicing” as the generic term, where we can find “tastes” like “vertical slicing” or “horizontal slicing”.
As usual: this post is for my future me, but I decided to share it in case it might be found useful for someone else 🙏
Although the goal of this post is not to explain what vertical slicing is and its benefits, I will do a quick and hypersimplified review of it:
What is slicing?
- I love something I heard during a workshop with Kevin Meadows and Chris Pipito:
- “Getting to the smallest possible thing we can have a conversation about. ‘What can we do today, that can be used tomorrow?’ That can make tomorrow easier for customers, for users or for us.”
- Horizontal slicing (PLEASE, AVOID IT 🙃):
- “A horizontal slice tends to decompose problems into technical layers which may seem to match well with the technical skills of team members, i.e. they’re split amongst a database team, a UI team, and a server team each of which is responsible for their own tasks. Even though we may call these horizontal slices user stories, and create them in form of user stories, they are in fact can’t deliver the value to the end customer without interaction or integration with other layers, components, or other building blocks of the software system. It is like slicing a cake horizontally, which does not allow for users to have the perfect bite.” (source: User Story Splitting - Vertical Slice vs Horizontal Slice)
- Vertical slicing:
- Vertical slicing is a technique in agile product and software development where work is broken down into small, end-to-end increments that deliver value across all layers of the system—UI, backend, database, etc. Each “slice” represents a complete, functional piece of the product, allowing teams to build, test, and deliver working software iteratively and get early feedback.


Why do we “need” stories?
- Bridge business-technical communication
- Focus on user value over tech specs
- Enable iterative and incremental delivery & feedback
- Support prioritization (and re-prioritization)
- Track progress
My personal opinion: in order to enable and get its benefits, you need some principles and practices (e.g. from XP and Lean), e.g. parallel changes techniques, continuous delivery/deployment, deferring commitment, simplicity, a design that enables it (e.g. ports and adapters aka “hexagonal architecture” or some patterns from DDD), etc.
Some techniques and heuristics
- How to split a user story (flowchart). For example:
- Workflow steps
- Defer performance
- Simple/complex
- Operations
- Interface variations
- Business rule variations
- SPIDR – five simple techniques for a perfectly split user story (6 min. read)
- A technique by Mike Cohn
- Splitting User Stories, from Agile Learning Labs
- Conjunctions: look for connector words, e.g. and, or, if, when, but, etc.
- Generic words: look for generic words that could be replaced with more specific terms
- Acceptance Criteria
- Timeline Analysis
- Splitting user stories – the hamburger method by Gojko Adzic (7 min. read)
- I was lucky enough to attend in CraftConf 2016 his great “Specification by example” workshop (finally delivered by his partner)
- Hamburger technique to Split User Stories from Development team perspective
- Effective story slicing by Neil Killick
- Slice, slice, baby!
- Based on a free workshop led by Chris Pipito and Kevin Meadows in December 2024, mentioned later
- 50 quick ideas to improve your user stories by Gojko Adzic
- A highly recommended book with tones of great techniques and heuristics for getting better in vertical slicing.
- Some examples mentioned:
- Narrow down your user segment
- Split by capacity
- Start with dummy, then move to dynamic
- Simplify outputs
- Split learning from earning
- Extract basic utility
- When all else fails, slice the hamburger
- User story mapping
Workshops
- Elephant Carpaccio (by Alistair Cockburn)
- Small Safe Steps workshop (parallel changes) by Edu Ferro
- User Story Slicing: deliver today what can be used tomorrow
- A 2-hour, online, hands-on workshop facilitated by Chris Pipito & Kevin Meadows
- Amazing one, I was really lucky to be able to attend it some time ago. They offer it among their services, I wouldn’t doubt to purchase it (disclaimer: I get no benefits from it, besides spreading happiness 😅)
- Connector Types Reference:
- Coordinating Conjunctions: and, or, but, yet, nor, etc.
- Action-Related Connectors: manage, handle, support, process, maintain, administer, etc.
- Sequence Connectors: before, after, hen, while, during, when, etc.
- Scope Indicators: including, as-well-as, along with, also, additionally, plus, with, etc.
- Option Indicator: either/or, whether, alternatively, optionally, etc.
- Exceptions Indicators: except, unless, however, although, despite, etc.
- “After slicing, can we pick one slice that is small enough to build today for use tomorrow?”
Related interesting resources
- Developing Software: Postponing Decisions and Working in Small Steps by Edu Ferro (17 min. read)
- MMMSS: Many More Much Smaller Steps, a great series of articles by Geepaw Hil
- Think About How You Organize Your Work, by Don Reinertsen (4 min. read)
- Lean Software development: The art of postponing decisions by Edu Ferro (9 min. read)
- Five common story mapping mistakes by Jeff Patton (8 min. read)
- Software economics by Luis Artola (only in Spanish)
- Return of the horizontal slice by Joshua Kerievsky (4 min. read)
- User Story Splitting - Vertical Slice vs Horizontal Slice (7 min. read)
- Vertical Story Slicing (video, 53 min.)
Further interesting topics, tools, and techniques
- Hamburger method
- User Story Mapping
- INVEST
- Impact mapping
- Value stream mapping
- User journeys
- Domain storytelling
- Event storming
- Jobs-to-be-Done framework (JTBD)
- Opportunity cost
- Cost of Delay and CD3
- Technical slicing
- Ports & Adapters, aka “Hexagonal Architecture”
Feel free to suggest other resources that you have found helpful, insightful, or illuminating!! 😊🙏
Leave a comment