🚨V & V

Verification and Validation

Verification focuses on whether we are "building the product right" by ensuring it meets technical requirements and specs. 🛂

Validation focuses on whether we are "building the right product" by ensuring it fulfills the intended purpose and customer needs. 🅰️

Examples at different levels

At a basic level:

✅Verification: Check all buttons work

➕Validation: Check sign-up form accepts valid inputs

At a medium level:

✅Verification: Test features meet specs by testing edge cases

➕Validation: Test search returns relevant results

At an advanced level:

✅Verification: Perform API tests and load tests

➕Validation: Do end-to-end testing and usability testing with actual users

How are verification and validation testing different?

Verification 🛂 is more systematic and rigorous, focusing on technical defects. It can be automated.

Validation 🅰️ is more open-ended, subjective, and involves users. It focuses on usability issues. ✏️

🛂 Verification focuses more on:

❌Finding technical defects

🔧Ensuring product meets specifications

✅Building the product correctly

🅰️ Validation focuses more on:

❌Finding usability issues

🎯Ensuring product meets user needs

✅ Building the right product

🛂 Verification:

📝 More systematic

✏️ Checks parts in isolation

⚙️ Often automated

🅰️ Validation:

🧠 More subjective

💭 Involves end users' perspective

👥 Focuses on full product experience

🛂 Verification tests the "how":

How the product was built.

🅰️ Validation tests the "what":

What the product actually does for users.

VerificationValidation

Evaluates the intermediary products to check whether it meets the specific requirements of the particular phase.

Evaluates the final product to check whether it meets the business needs.

Checks whether the product is built as per the specified requirement and design specification.

It determines whether the software is fit for use and satisfies the business needs.

Checks “Are we building the product right”?

Checks “Are we building the right product”?

This is done without executing the software.

Is done with executing the software.

Involves all the static testing techniques.

Includes all the dynamic testing techniques.

Examples include reviews, inspection, and walk-through.

Example includes all types of testing like smoke, regression, functional, systems and UAT.

Last updated