Vertical slice

A vertical slice from the components of a project

A vertical slice, sometimes abbreviated to VS, is a type of milestone, benchmark, or deadline, with emphasis on demonstrating progress across all components of a project. It may have originated in the video game industry.

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 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):

  1. Data access layer (bottom)
  2. Business logic layer (middle)
  3. User interface layer (top)

In this very 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:

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 doesn't require a change in the UI, but the business and database access layers.

Visualizing the layers of a vertical slice.
Begin to show how vertical slicing works.
UX/UI for vertical "Login User" story

Vertical User Stories

A vertical user story encapsulates the action of one function.

Writing Vertical User Stories

Below is an example of a vertical user story.

As an end user I must be able to log in to my company portal so that I can perform the functions of my job.

Acceptance Criteria

Acceptance criteria are conditions of satisfaction

Example

Dissected by Layer

As a developer, you will need to think about every file encapsulated in each layer that needs to be created and/or extended in order to complete this "Login User" story.

Sources

    This article is issued from Wikipedia - version of the 10/12/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.