V Model

Published May 16, 2023
Contribute to Docs

The V model is a Software Development Life Cycle (SDLC) that is based on the Waterfall model and emphasizes the verification and validation of the product. Each phase of this model is paired with a level of testing.

The V model was first implemented in the late twentieth century and has been widely used ever since. It can be divided in five main phases:

  1. Requirements analysis
  2. System design
  3. Architectural design
  4. Module design
  5. Coding

Except for coding, the other four phases are each linked to a distinct testing activity. Going up from the bottom (module design), those testing activities are, respectively:

  • Unit testing
  • Integration testing
  • System testing
  • Acceptance testing


  • Testing within each stage ensures each requirement is properly checked and validated, and that the product is of high quality and fulfills the requirements.
  • Errors and issues can be detected at early stages of development due to an emphasis on testing early and often.
  • Easy management and project planning.


  • Unsuitable for large and complex projects or that require constant changes.
  • Uncertain and risky due to lack of risk analysis.

All contributors

Looking to contribute?

Learn More on Codecademy