Verification and Validation
From Wikipedia, the free encyclopedia
In software project management and software engineering, Verification and Validation (V&V) is the process of checking that a software system meets specifications and that it fulfills its intended purpose. It is normally part of the software testing process of a project.
Contents |
[edit] Definitions
Verification ensures that the final product satisfies or matches the original design (low-level checking) — i.e., you built the product right.
Validation checks that the product design satisfies or fits the intended usage (high-level checking) — i.e., you built the right product.
According to the Capability Maturity Model (CMMI-SW v1.1), “Verification confirms that work products properly reflect the requirements specified for them. In other words, verification ensures that ‘you built it right’. Validation confirms that the product, as provided, will fulfill its intended use. In other words, validation ensures that ‘you built the right thing’”.
[edit] Related concepts
Both verification and validation are related to the concepts of quality and of software quality assurance. By themselves, verification and validation do not guarantee software quality; planning, traceability, configuration management and other aspects of software engineering are required.
[edit] Classification of methods
In mission-critical systems where flawless performance is absolutely necessary, formal methods can be used to ensure the correct operation of a system. However, often-times for non-mission-critical systems, formal methods prove to be very costly and an alternative method of V&V must be sought out. In this case, syntactic methods are often used.
[edit] Test cases
Test cases are the method most often miss-associated with V&V. In actuality, test cases can only be used for verification while other methods such as reviews used early in the Software Development Life Cycle provide for validation.
[edit] Independent Verification and Validation
Verification and validation often is carried out by a separate group from the development team; in this case, the process is called "Independent Verification and Validation", or IV&V.
[edit] See also
[edit] References
- E. Tran, Dependable Embedded Systems. Carnegie Mellon University, USA, Spring 1999.
- T. Menzies, Y. Hu, Data mining for very busy people. IEEE Computer, November 2003, pp. 22–29.