Glossary · Testing fundamentals
Verification and validation
Also called: V&V, verification vs validation, verification versus validation
Definition
Verification asks "are we building the product right?" against the spec. Validation asks "are we building the right product?" for real user needs.
Verification and validation are two complementary checks, usually described with Barry Boehm’s phrasing. Verification checks that a work product conforms to its specification: are we building the product right? Validation checks that the product meets the actual needs of its users in its intended environment: are we building the right product? A system can pass verification completely and still fail validation if the specification was wrong.
Example
A requirement says: “The export button generates a CSV file of all orders.”
- Verification: the team reviews the design, inspects the code, and tests that clicking Export produces a correctly formatted CSV containing every order. It does, so verification passes.
- Validation: the finance team tries to use it and finds that they actually need orders filtered by month, with tax in a separate column, and their spreadsheet template expects semicolon separators. The feature meets the spec but not the need. Validation fails.
The difference at a glance
| Verification | Validation | |
|---|---|---|
| Question | Building the product right? | Building the right product? |
| Compared against | Requirements, design, standards | User needs and intended use |
| Typical activities | Reviews, walkthroughs, inspections, static analysis, unit, integration and system tests | User acceptance testing, beta tests, usability studies, demos, production feedback |
| Needs running software? | Not always: reviews are verification | Generally yes, or a realistic prototype |
| Done mainly by | Developers and QA | Users, customers, product owners |
Static techniques, such as requirement and code reviews, are always verification. Most dynamic testing done by QA against the specification is also verification. Validation involves the people the product is for.
Why it matters
Teams that focus only on verification can ship software that exactly matches a flawed requirement. Shift-left practices help with both: reviewing acceptance criteria with users early is cheap validation, and automated tests on every commit are continuous verification. In regulated industries such as medical devices, V&V are separate, documented activities, and auditors expect evidence of each.