TESTING

            Testing is an integral component of the software process and an activity that must be carried out throughout the life cycle. This includes both execution-based and non-execution-based testing. Continual testing should be done throughout a phase, and methodical testing should be done at the end of a phase. Documentation should be made of all testing that is done. The final, non-execution based testing, the task of reviewing,  should go to someone other that the author, and there should be more than one reviewer.

Barry Boehm is the author of the following definitions for verification and validation [Boehm, 1984]:
    Verification: Are we building the product right?
    Validation: Are we building the right product?

Quality Issues
Nonexecution-Based Testing
Execution-Based Testing
What Should Be Tested?
Who Should Perform Execution-Based Testing?
Testing Distributed Software
Testing Real-Time Software
When Testing Stops