Vertical slice
A vertical slice 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.
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 terminology where the work is planned in terms of features. For example, as a very basic approach, a software project may consist of three layers :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.
Vertical user stories
A vertical user story encapsulates the action of one function.An example of a vertical user story is, "As an end user I must be able to log into my company portal so that I can perform the functions of my job."
Acceptance criteria
Acceptance criteria are conditions of satisfaction. This story is "done" when the detailed functionalities are completed.For example:
- Verify that I can log into the system
- Verify that my login credentials will be remembered
- Verify that I can reset my own password by clicking the "Forgot Password" link
- Verify that I cannot navigate back to the landing page without first logging in