Verification and validation are often confused but understanding the differences can improve the test effort. Both Verification and Validation are important activities that produce different types of information. Using these types of testing together reduces the level of uncertainty about the quality of a product.
Perhaps the most straight forward example that demonstrates the difference between Validation and Verification is one of an early pager design. If you recall a time before everyone carried a cell phone, there was another electronic device which would indicate when another person was trying to reach you. There was a design where the indication was simply a blinking LED. This worked flawlessly when in plain view and tested for compliance to the requirements (Verification). When the product was tested in its environment (Validation) people tended to carry the device in a pocket and therefore were not alerted by the blinking LED.
Verification answers the question “Are we building the product right?”
The quality of this type of testing directly relates to the quality and completeness of the requirements. Positive tests are designed to exercise the functionality spelled out in the requirements. Negative tests can be designed to exercise the limits of the requirements. Negative tests include invalid inputs, range checking, data corruption, loading, multiple simultaneous actions and more.
Validation answers the question: “Are we building the right product?”
This type of testing checks whether the requirements have captured the needs of the customer. Validation overlaps Verification in some instances. Testers performing verification tests are also performing Validation testing. Additional Validation can be performed with Alpha and Beta testing through external user acceptance testing with the intended audience.