Pages

Sunday, November 21, 2010

Verification Vs Validation

Verification: Are we building it right? (Inspecting the Process of Making the Product) àdev process


Validation: Is it built right? (Evaluating the Product) (as per client reqt )àtesting

 

According to the Capability Matuarity Model
§  Verification: The process of evaluating software to determine whether the products of a given development phase satisfy the conditions imposed at the start of that phase. [IEEE-STD-610].
§  Validation: The process of evaluating software during or at the end of the development process to determine whether it satisfies specified requirements. [IEEE-STD-610]

 

 

Verification vs Validation: Real life examples........


Example1:-Let us suppose, we have to prepare a cup of tea (Project) 
For that we need water, sugar, teabag,milk(SRS). 
Now here after making tea (after completion of project). 
When we say Verification, we verify whether we use all materials in an appropriate manner(acc. to specifications) to prepare tea. 
When we say Validation, we verify whether the person (Client) likes our tea or not 
(for the intended person) means hows the taste of tea?


Example2:-The only way to validate a race car is in a real race, perhaps under varying conditions or specific conditions like off-road races, oval tracks - 500 laps (endurance and moving in one direction will put stresses on the car that might be difficult to test in a lab)(as per SRS). 

Verification of a race car is are all the right parts in the car, have they been built to specification (tolerances, materials, dimensions, etc), does it start, what is it's top speed, breaking distance. 

But most manufacturers of racing cars, even though they are built to exacting quality cannot predict how the car will perform in a real race, this is validation in the true sense. Many cars built to specification still fail. The problem with high performance vehicles is that often they can only last for one race and need to be completely rebuilt to ensure top performance and competitiveness. Perhaps high fidelity simulation might help? It is a difficult challenge.


Validation
Verification
Am I building the right product(process followed)
Am I building the product right(process following)
Determining if the system complies with the requirements and performs functions for which it is intended and meets the organization’s goals and user needs. It is traditional and is performed at the end of the project.
The review of interim work steps and interim deliverables during a project to ensure they are acceptable. To determine if the system is consistent, adheres to standards, uses reliable techniques and prudent practices, and performs the selected functions in the correct manner.
Am I accessing the right data (in terms of the data required to satisfy the requirement)
Am I accessing the data right (in the right place; in the right way).
High level activity
Low level activity
Performed after a work product is produced against established criteria ensuring that the product integrates correctly into the environment
Performed during development on key artifacts, like walkthroughs, reviews and inspections, mentor feedback, training, checklists and standards
Determination of correctness of the final software product by a development project with respect to the user needs and requirements
Demonstration of consistency, completeness, and correctness of the software at each stage and between each stage of the development life cycle.

No comments:

Post a Comment