v model

a quick note after last night hangover. pardon the word choice and typos if any.

keyword to start

  • Waterfall Model: A sequential model divided into different phases of SDLC. Each stage is designed to perform a specific activity. Testing phase starts only after implementation (the last stage) of the system is done.
  • V-Model: A process where testing is done on each phase, happens parallel to development steps.

problem with Waterfall Model

  • testing starts after Implementation
  • easy to miss out the key details in the requirements
  • takes longer to detect error -> higher cost
  • products get shipped out wrong
  • start all over again

why V-Model is the solution

  • each development step comes with a corresponding test phase
  • ensures the process move toward the same goal: build error-free product


core principles

  • in V-model, testing is done in hierarchy. It breaks down from high-level design to detailed designs.
  • transparency in data and processes. thus, documents are required to maintain the app once it’s available in prod env.
  • scalability. the testing model must capable of adapting to the project size, complexity and duration.


  • fixed & defined requirement
  • stable and available resource

the pros

  • consistency
  • result-oriented
  • straighforward & simple rules

and the cons

  • does not support concurrent activities.
  • hard to apply for project with complex and changable requirement