torsdag 16 juni 2011

Testing, verification and validation . What's the difference?

Software testing, I've read, is the process of validating and verifying a software program/application/product. But what's the difference between verification and validation? Here's the clearest definition I've managed to find.

  • Verification shows the conformance with specification
  • Validation shows that the program meets the customers requirements
But wait a moment. Aren't the specifications just a way of describing some of the customers' requirements? At least they should be. Otherwise the customers are paying for something they don't need, or not getting what they're paying for.

In other words, verification and validation should be the same thing, at least when it comes to software testing.

Another thing that makes me deeply suspicious of the terms ”verification and validation” is the worrying frequency which the V model is used to explain them.