Showing posts with label Validation and Verification. Show all posts
Showing posts with label Validation and Verification. Show all posts

Wednesday, December 22, 2010

What are different types of verifications?

Software verification is a broader and more complex discipline of software engineering whose goal is to assure that software fully satisfies all the expected requirements.
There are two fundamental approaches to verification:
  • Dynamic verification, also known as Test or Experimentation - This is good for finding bugs
  • Static verification, also known as   Analysis- This is useful for proving correctness of a program although it may result in false positives

There are four levels of verification:
1. Component Testing: Verifying the design implementation for one software element like unit / module or a group of software elements
2. Integration Testing: Testing with orderly progression which involves the integration of various software and / or hardware elements together and tested. It continuous until the complete system has been integrated.
3. System Testing: A type of testing which tests integrated software and hardware system verification whether the system meets the specified requirements.
4. Acceptance Testing: A testing process that determines whether a system satisfies the acceptance criterion and for enabling the customer for determining whether or not to accept the system.

Tuesday, December 21, 2010

Validation and Verification


Verification is one aspect of testing a product's fitness for purpose. Validation is the complementary aspect. Often one refers to the overall checking process as V & V.

Validation: "Are we building the right product?", i.e., does the product do what the user really requires.

Verification: "Are we building the product right?", i.e., does the product conform to the specifications.

The verification process consists of static and dynamic parts. E.g., for a software product one can inspect the source code (static) and run against specific test cases (dynamic).

Validation usually can only be done dynamically, i.e., the product is tested by putting it through typical usages and atypical usages ("Can we break it?").