The solution assessment stage of the software process.
Delivers partial answer to the question:
"How good is this software?''
Any attempt to ensure that modules have been coded correctly.
An (oftentimes ad hoc ) activity to generate a set of inputs, called test data , which when applied to a program increases the confidence in the correctness of the program.
The purpose of testing is not to demonstrate that software performs correctly.Rather, testing demonstrates the existence of an error. Hence, success is finding an error. Failure is not finding an error.
Contrast testing with debugging , which resolves the error after its existence is known.
Finding an error in software means that the software is incorrect .
Two senses of incorrect .
Validation - subjective
Verification - objective
The benefit of defining the two V & V components separately is that the exercise demonstrates the narrow scope of objective correctness and the broad role of subjective judgment and experience. Sommerville