Validation and Verification process continue in a cycle till the software becomes defects free.
Let’s understand the difference between verification & validation here with points.
Verification:
1. Verification is a static practice of verifying documents, design, code and program.
2. It does not involve executing the code.
3. It is human based checking of documents and files.
4. Verification uses methods like inspections, reviews, walkthroughs, and Desk-checking etc.
5. Verification is to check whether the software conforms to specifications
6. It can catch errors that validation cannot catch. It is low level exercise
7. Target is requirements specification, application and software architecture, high level, complete design, and database design etc.
8. Verification is done by QA team to ensure that the software is as per the specifications in the SRS document.
9. It generally comes first-done before validation.
Validation:
1. Validation is a dynamic mechanism of validating and testing the actual product
2. It always involves executing the code.
3. It is computer based execution of program.
4. Validation uses methods like black box (functional) testing, gray box testing, and white box (structural) testing etc.
5. Validation is to check whether software meets the customer expectations and requirements.
6. It can catch errors that verification cannot catch. It is High Level Exercise.
7. Target is actual product-a unit, a module, a bent of integrated modules, and effective final product.
8. Validation is carried out with the involvement of testing team.
9. It generally follows after verification.
Example of verification and validation are explained below:-
Suppose we have the specifications related to the project than by checking that specifications without executing to see whether the specifications are up to the mark or not is what we have done in verification.
Similarly Validation of the software is done to make sure that the software always meets the requirements of the customer by executing the specifications of the project and product.
Note that the customer and end users are concerned in validation of the software.
It is also crucial to differentiate between end users, and customers. Considering example, if you are developing a library monitoring system, the librarian is the client and the person who issue the books, collect fines etc. are comes under the category of the end users.
Techniques or Methods of Verification and Validation
Methods of Verification
1. Walkthrough
2. Inspection
3. Review
Methods of Validation
1. Testing
2. End Users
Lots of people use verification and validation interchangeably but both have different meanings.
Verification process describes whether the outputs are according to inputs or not, and
Validation process describes whether the software is accepted by the user or not.
Next Topic: Basic requirements for software testing