Verification and validation together can be defined as a process of reviewing and testing and inspecting the software artifacts to determine that the software system meets the expected standards.
Though verification and validation processes are frequently grouped together, there are plenty of differences between them:
- Verification is a process which controls the quality and is used to determine whether the software system meets the expected standards or not. Verification can be done during development phase or during production phase. In contrast to this, validation is a process which assures quality. It gives an assurance that the software artifact or the system is successful in accomplishing what it is intended to do.
- Verification is an internal process whereas validation is an external process.
- Verification refers to the needs of the users while validation refers to the correctness of the implementation of the specifications by the software system or application.
- Verification process consists of following processes: installation, qualification, operational qualification, and performance qualification whereas Validation is categorized into:
full scale validation
partial scale validation
- Verification ensures that the software system meets all the functionality whereas validation ensures that functionalities exhibit the intended behavior.
- Verification takes place first and then validation is done. Verification checks for documentation, code, plans, specifications and requirements while validation checks the whole product.
- Input for verification includes issues lists, inspection meetings, checklists, meetings and reviews. Input for validation includes the software artifact itself.
- Verification is done by developers of the software product whereas validation is done by the testers and it is done against the requirements.
- Verification is a kind of static testing where the functionalities of a software system are checked whether they are correct or not and it includes techniques like walkthroughs, reviews and inspections etc. In contrast to verification, validation is a dynamic kind of testing where the software application is checked against its proper execution.
- Mostly reviews form a part of verification process whereas audits are a major part of validation process.
|Verification, Validation, and Testing of Engineered Systems|
Fundamentals of Verification and Validation
Verification and Validation in Computational Science and Engineering