Verification and Validation are two main methods applied for correctly testing the software development phases. Verification makes sure requirement documents created in early software processes are covers all requirements. Validation makes sure end user satisfied with the software product being shown to them at last phases of the SDLC.
Verification – Are we building the product right?
Document created during one phase is being the input for the following phase. Note that document/s from last phase provides elements to be tested in current phase. And also being as verification scope. These documents reveals missing or over done components/ features being developed by the team. These verification aka known as Static Testings. Static because Product is not yet ready to execute and also only documents are being checked.
The process to make sure that specifications meets requirements.
Activities : Reviews Walkthroughs Inspections
Validation -Are we building the right product?
Validation is the testing typically happens after the first piece of software coded, and until final software is being deployed. Program is executed and tested, so aka Dynamic Testing. Documents created in early stages of the SDLC cross checked and testing occurs according to the Test Plan and Test Cases.
The process to make sure that product meets requirements.
Activities : Actual Testing
Software testing makes sure whether the requirements are gathered correctly and the product being built is in accordance with end users requirements. Poor software testing methods leads to project failure.