Difference between Verification and Validation

In few days back we have seen article about “V-Model”. In the V Model Software Development Life Cycle, based on requirement specification document the development & testing activity is started. The V-model is also called as Verification and Validation model. The testing activity is perform in the each phase of Software Testing Life Cycle. In the first half of the model validations testing activity is integrated in each phase like review user requirements, System Design document & in the next half the Verification testing activity is come in picture.

In interviews most of the interviewers are asking questions on  “What is Difference between Verification and Validation?” Lots of people use verification and validation interchangeably but both have different meanings. So in this article I am adding few differences about Verification & Validation.

Difference between software Verification and Validation:

             Verification              Validation
Are we building the system right? Are we building the right system?
Verification is the process of evaluating products of a development phase to find out whether they meet the specified requirements. Validation is the process of evaluating software at the end of the development process to determine whether software meets the customer expectations and requirements.
The objective of Verification is to make sure that the product being develop is as per the requirements and design specifications. The objective of Validation is to make sure that the product actually meet up the user’s requirements, and check whether the specifications were correct in the first place.
Following activities are involved in Verification: Reviews, Meetings and Inspections. Following activities are involved in Validation: Testing like black box testing, white box testing, gray box testing etc.
Verification is carried out by QA team to check whether implementation software is as per specification document or not. Validation is carried out by testing team.
Execution of code is not comes under Verification. Execution of code is comes under Validation.
Verification process explains whether the outputs are according to inputs or not. Validation process describes whether the software is accepted by the user or not.
Verification is carried out before the Validation. Validation activity is carried out just after the Verification.
Following items are evaluated during Verification: Plans, Requirement Specifications, Design Specifications, Code, Test Cases etc, Following item is evaluated during Validation: Actual product or Software under test.
Cost of errors caught in Verification is less than errors found in Validation. Cost of errors caught in Validation is more than errors found in Verification.
It is basically manually checking the of documents and files like requirement specifications etc. It is basically checking of developed program based on the requirement specifications documents & files.

Conclusion on difference of Verification and Validation in software testing:

  1. Both Verification and Validation are essential and balancing to each other.
  2. Different error filters are provided by each of them.
  3. Both are used to finds a defect in different way, Verification is used to identify the errors in requirement specifications & validation is used to find the defects in the implemented Software application.

If you like this article, consider subscribing to get all Testing Updates in your Inbox for FREE. To get testing tips Click Here or enter email id below:

Enter your email address:
Check email in your inbox for confirmation to get latest updates Software Testing for free.

If you enjoy reading this article, please make sure to share it with your friends. Please leave your questions/tips/suggestions in the comment section below and I’ll try to answer as many as I can.

Happy Testing!!!

27 thoughts on “Difference between Verification and Validation”

  1. Following activities are involved in Verification: Reviews, Meetings and Inspections. Following activities are involved in Validation: Testing like black box testing, white box testing, gray box testing etc.
    Verification is carried out by QA team to check whether implementation software is as per specification document or not. Validation is carried out by testing team.
    Verification is carried out before the Validation. Validation activity is carried out just after the Verification.

    Are you sure if the above diffences are correct?

    Reply
  2. Hi,
    can u tell me difference between sanity testing and smoke testing?

    Also difference between Load testing, Performance testing, Volume testing and stress testing.

    Reply
  3. Hi STC Team,
    Wonderful Post.I refer this website when I want to brush up my Manual and Automation Testing Basics.Couple of Points I would like to highlight here.
    1) If in the comments section(displayed after the article),if a visitor has provided any valuable comments, and they are found to be correct/consistent,please incorporate/update them in the original article published.
    2) Please provide the name of the author(s) or sources from which the article was published/inspired along with the author’s credentials(i meant,the number of Years of experience of the author in this domain and the list of sites/blogs that he/she is maintaining).

    P.S: Please provide more realtime examples when any concept is being explained.It helps the students/learners when learning the concepts.I wish this website to be different from others by providing more realtime examples than the others.Concepts can be learnt from any website, realtime examples are what are required for us.

    ~Thank You.

    Reply
  4. PZZ help me

    about review is true?
    1)it cannot be performed on user requirement specification
    2)it is d lest effectiveness way of testing code
    3)it is unlikely to find faults in test plans
    4)it should be performed on specification,code and test plans

    Reply
  5. i am a beginner to testing…so can anyone please suggest what is the best book for manual testing…simple & easy to get the concept

    Reply
  6. “Verification is the process of evaluating products of a development phase to find out whether they meet the specified requirements”

    1. Here my doubt is How can the tester verify the build, when the build is in development phase

    2. Can you clarify once ” Verification & Validation” both are done by QA?

    3. When they QA people test(Verify the build). Is it before the Smoke Test?

    Reply
  7. I not agree for this kind of statements that all test are part of Validation only when these tests are connected with user requirements (intended use) ie. the complexity test of software is not a part of validation but verification. Test in many another cases is part of verification. Please see on one of the definition of verification: Verification – is a process. It uses objective evidence to confirm that specified requirements have been met. Whenever specified requirements have been met, a verified status is achieved. There are many ways to verify that requirements have been met. For example, you could do tests, perform demonstrations, carry out alternative calculations, compare a new design specification with a proven design specification, or you could inspect documents before you issue them. The definition of Validation is – Validation means confirmation by examination and provision of objective evidence that the particular requirements for a specific intended use can be consistently fulfilled.

    Reply

Leave a Comment

Share This Post