Talk:V-model (software development)
The article describes the V-Model as featuring "verification" along the left (descending or "development") leg, and "validation" along the right (ascending or "deployment") leg. I believe this is a misuse of the terms, verification and validation.
Although the following is a simplification, I believe it is not a distortion:
"Verification" means "confirming that a product is built according to specifications and standards". Sometimes this is represented, confusingly, as "the product meets its requirements"; this should be understood as being opposed to its intended users' requirements. The traditional characterisation of "verification" is, "Are we building the thing right?"
"Validation" means "confirming that a product is fit for a specific use". This is sometimes expressed as "meeting user requirements". A product with multiple uses will require multiple validations. The traditional characterisation of validation is, "Are we building the right thing?"
These terms can apply to any type of product, and not just to executable software. Each work-product created down the development leg should be verified against inputs to the task that created it, and validated against the needs of its downstream users. For example, an external design document (specifying interfaces and external behaviour) should be fit for the specific purposes of architectural design, system test design, technical authoring, and customer signoff.
Given that test cases are derived from the work products created down the development leg, test execution up the deployment leg is mostly verification against specifications, not validation. "Validation testing" is a special class of testing, or perhaps a particular attitude to testing, paying regard to the real use of the test item (at any level), regardless of its specification.
Test execution, whether for verification or validation, may itself be subject to verification that it was performed in accordance with test plans and test specifications.
Donmillion (talk) 11:01, 24 January 2008 (UTC)
I agree with Donmillion. Verification and Validation are misused. It will be better to switch "Verification Phases" and "Validation Phases", and include citation to the Verification_and_Validation wikipedia article.