# Vertical slice

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/Vertical_slice
> Markdown URL: https://mediated.wiki/source/Vertical_slice.md
> Source: https://en.wikipedia.org/wiki/Vertical_slice
> Source revision: 1354331451
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

{{Short description|Type of milestone, benchmark, or deadline in project management}}
{{multiple issues|
{{editorial|date=January 2014}}
{{no footnotes|date=January 2023}}
}}
160px|thumb|A vertical slice from the components of a project

A '''vertical slice''' ('''VS''') is a type of [milestone](/source/Milestone_(project_management)), [benchmark](/source/Benchmarking), or [deadline](/source/time_limit), with emphasis on demonstrating progress across all components of a [project](/source/project).{{citation needed|date=January 2014}} It may have originated in the [video game industry](/source/video_game_industry).{{citation needed|date=January 2014}}

==Overview==
The term ''vertical slice'' refers to a cross-sectional slice through the layers that form the structure of the software code base. It is mostly used in [Scrum](/source/Scrum_(software_development)) terminology where the work is planned in terms of features (or stories). For example, as a very basic approach, a software project may consist of three layers (or components):
# [Data access layer](/source/Data_access_layer) (bottom)
# [Business logic layer](/source/Business_logic_layer) (middle)
# [User interface](/source/User_interface) layer (top)

In this common approach, a vertical slice means a bit of every layer. Again as an example, a new feature request like "showing x information on main screen" would contain these work bits:
* Work in the UX/UI that will display the information
* Work in the service layer to transform the information
* Work in the database layer to store / fetch the information.

So a vertical slice can be defined as "the sum of the work that has to be done in every layer that is involved in getting a specific feature working." A vertical slice doesn't necessarily affect every component in the software. For example, if the solution contains a web service, it would live in the same "floor" as the UI, and a feature like "supporting login/logout in webservice" that involves only the web service does not require a change in the UI, but the business and database access layers.

==References==
{{Reflist}}
* [http://www.slideshare.net/skydiver34275/vertical-slicing-v2 Vertical Slicing Training Deck by Ben Clay (Enterprise Scaled Scrum 2009)]
* [https://www.academia.edu/2053628/Built_to_Thrive_Using_Innovation_to_Make_Your_Mark_in_a_Connected_World Built to Thrive by Jay van Zyl]
* [https://www.deltamatrix.com/horizontal-and-vertical-user-stories-slicing-the-cake Horizontal and Vertical User Stories - Slicing the Cake by Ned Kremic]
* [https://xp123.com/articles/invest-in-good-stories-and-smart-tasks/ INVEST IN GOOD STORIES, AND SMART TASKS by Bill Wake]
* [https://www.dkrimmer.de/2014/12/04/6-brilliant-ways-to-slice-user-stories/ 6 Brilliant Ways to Slice User Stories by Dominic Krimmer]
* [https://www.scruminc.com/wp-content/uploads/2015/06/User-Stories-2.0.pdf User Stories 2.0 by Jeff Sutherland]

Category:Project management techniques

---
Adapted from the Wikipedia article [Vertical slice](https://en.wikipedia.org/wiki/Vertical_slice) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/Vertical_slice?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
