The V-Model is based on the association of a testing phase for each corresponding development stage. This means we start planning our tests before we even write a single line of code.

📐 The Structure of the V
The model is split into two "arms":
The Left Arm (Verification): This is the "Down-stroke" of the V. It involves requirement analysis and design. You are verifying: "Are we building the product right?"
The Bottom (Coding): This is where the actual implementation happens.
The Right Arm (Validation): This is the "Up-stroke" of the V. It involves the actual execution of tests. You are validating: "Are we building the right product?"
🖇️ The Mapping (Phases)
The beauty of the V-Model is the "Parallel" nature of the phases:
Development Phase (Left) | Testing Phase (Right) | What is being checked? |
|---|---|---|
Requirements Analysis | Acceptance Testing | Does the software meet the customer's business needs? |
System Design | System Testing | Do all the integrated parts work together as a whole? |
Architecture Design | Integration Testing | Do the communication paths between modules work? |
Module Design | Unit Testing | Does an individual function or piece of logic work? |
🌟 Key Concepts: Verification vs. Validation
This is a favorite exam/interview topic:
Verification: A static process of evaluating documents and design (No code execution). Examples: Reviews, Walkthroughs, Inspections.
Validation: A dynamic process of checking the actual product by running the code. Examples: Unit testing, Integration testing.
✅ Advantages
Highly Disciplined: Like Waterfall, it is very organized and easy to manage.
Early Test Planning: Because you design the tests during the requirement phase, you catch bugs in the logic long before coding starts.
High Quality: It minimizes defects by ensuring every piece of the design has a corresponding "check."
Great for Safety: Often used in medical and aerospace industries where "failure is not an option."
❌ Disadvantages
Rigid: Very difficult to change requirements once you are in the middle of the "V."
No Early Prototypes: Just like Waterfall, the customer doesn't see a working product until very late.
High Risk: If a major design flaw is found during the validation (right side), it can be very expensive to go back to the left side to fix it.
⚖️ V-Model vs. Waterfall
In Waterfall, testing is a single "bucket" at the end. In the V-Model, testing is a planned activity that starts the moment the project begins.