44

What is the difference between validation and verification? When looking them up on Wiktionary they seem to mean mostly the same thing, but is there a difference?

For example, would I be correct in saying that

  • Checking that the format of an email address is valid, would be validation?
  • The process of sending an email to an email address to have a user click on a link to make sure the email is in use and correct, would be verification?

Or could I have used both words in both cases?

4
  • 3
    If you're interested in the difference between validation and verification as technical terms in the software industry, see wikipedia. This difference has nothing to do with the meaning of the words in the English language (for which see the answers to this question). Jan 6, 2012 at 15:48
  • 1
    @Peter Shor I believe it's a perfectly relevant question. The meaning in programming plays directly to the meaning in English, as well as the etymology. Understanding those could indeed help Svish be a better programmer and speaker. Please see my answer as to why.
    – Lunivore
    Jan 6, 2012 at 17:44
  • the target page for duplicate is deleted
    – n611x007
    May 13, 2014 at 13:14
  • @naxa I removed the reference from the question
    – Svish
    May 14, 2014 at 11:00

7 Answers 7

3

Note - In systems:

Validate (to check the aliveness, legal status, existence of data). To check the ‘validity’ of data - does it comply with the ‘legal’ or required format of the system.

Verify (to check the truth) - to check whether something is true. To verify that a user exists, verify that an account is current, to ‘check the truth of’ ... anything.

Validation - Validate: means ‘having force in law, legally binding’, from the Latin - validus -"strong, effective, powerful, active". Validation is ‘the process of checking that something is legally or currently active.’

Examples:

  • ‘Sorry sir. Your passport is no longer valid. It’s out of date’.
  • ‘Sorry, your gift voucher is no longer valid, it expired’.
  • ‘Sorry madam - our validation has shown that this cheque isn’t real - it’s a fake’.

  • When our system tries to validate this email address we see it is invalid, it uses the wrong format

  • This email address is invalid - the user doesn’t exist

https://www.etymonline.com/word/valid

Verification - Verify - is from the Latin ‘verus’ or truth. It means ‘to check the truth’ or - check if (something is) true. Verification is ‘the process of checking whether something is true’.

Examples:

  • We have verified the image on your passport and confirm that it is your true image.
  • We have checked your blood and can verify (note - it means ‘state as true’) that you do not have anaemia.
  • Our verification of your order is complete and we can confirm that the box we sent you contains 15 white hats and 5 green.
  • We cannot verify this email user on our server. They don’t seem to exist.

https://www.etymonline.com/word/verify

25

I think the subtle difference would be in that "verification is validation by empirical means".

empirical: Based on, concerned with, or verifiable by observation or experience rather than theory or pure logic.

Taking your example, checking the format of an email address is done by logic, to see if you have <something>@<something>.<xxx> format. But, you cannot logically tell by looking at the string that it is a genuine email address.

8
  • 2
    Right, so I validate an email address, because it's based on theory and logic, while I verify that an email address is genuine because it's based on the observation/experience I get after the user has clicked a link (or whatever). Correct?
    – Svish
    Jan 6, 2012 at 13:13
  • 1
    In my opinion, yes, but I don't think this universally applies. I would use this as a thumb rule to decide when to use which.
    – abhinav
    Jan 6, 2012 at 13:16
  • 1
    For example, I would say that a form is valid, when all the necessary details are filled with appropriate values, a text for name, a number for phone number, etc. But, I would use verified, if the form has been cross-checked with my ID or passport.
    – abhinav
    Jan 6, 2012 at 13:19
  • 1
    Exactly, so the email would be valid if it is appropriate according to defined format, and verified once "cross-checked" with an action. Think I get it now :)
    – Svish
    Jan 6, 2012 at 14:06
  • 1
    What about the concept of "formal verification" though? That is to verify something logically without the use of empirical data.
    – Kazark
    Jul 13, 2017 at 15:25
14

Validate comes from the Latin validus, meaning strong.

Verify comes from veritus, meaning true.

We often say that an argument founded on strong principles is valid. For instance:

"I cannot see the stars. I have no way of knowing if they're still there. For all I know, they might have disappeared, and scientists around the world are lying when they say they're there."

"Your argument is valid, but I'm pretty sure scientists have better things to do."

On the other hand, we could say,

Scientists today verified that the stars did in fact disappear during daylight, when astronauts aboard the shuttle "Scepticism" travelled above the atmosphere for the first time and found that no stars above the daylight side were visible.

The biggest difference is in the hypothesis. A valid hypothesis is one which appears to have supporting evidence, or which has not been disproven*. A verified hypothesis is one which has been proven (in this case, the anti-hypothesis).

Let's say that your hypothesis is that the user has entered their email address correctly. The address is valid if it's well-formed, or if you can send an email to it - it exists - but only verified as the user's address once the link sent in the email is clicked.

Or perhaps your hypothesis is that entries in a form are correct. It might be valid if all mandatory fields are filled, but only verified once the business rules associated with the different fields have been checked too.

Because verification necessarily involves validation, there may be some flexibility about what you define as valid. The purpose of validation is usually to provide quick feedback about what might be wrong, whereas the purpose of verification is to make sure it's right.

(*Can anyone verify that "disproven" is a word? Please validate my assumption.)

12

In your examples, you use both words correctly. I wouldn't use them interchangeably.

Generally, when you validate something, you make it officially acceptable or approved, especially after examining it, e.g. External validation of a teacher's assessment is recommended.

When you verify something, you show that it is true or accurate, e.g. State officials provided verification of the documents.

1
  • 2
    It seems validate carries the weight of authority. "The clerical staff verified the data, but it wasn't official until the administrator validated it."
    – Taj Moore
    Jan 6, 2012 at 18:31
9

I saw an ad for this question on the Computational Science Q&A site, so if you'll allow me to provide an answer from that perspective...

Where I come from, to "verify" means to make sure you are solving the equations correctly. Does the code you implemented accurately compute the equations you mean to solve?

To "validate" is to make sure you are solving the correct equations. Is the model you implemented an accurate representation of the physics you are attempting to emulate? Does it compare well to observed behavior?

There is a lot of work in the computational science community on "V&V" and every document on them starts with this type of definition.

3
  • This is indeed the difference in meaning when these two words are considered as technical terms in the software industry, but it has very little to do with the meaning of these words in general English. Jan 6, 2012 at 15:50
  • 1
    @PeterShor I do not disagree, which is why I included the "if you'll allow me" at the beginning. You'll notice this is my first contribution on this site. If you feel it is too far off topic, you can down vote it or I can even delete it (though I'd prefer more input from the rest of the community before I took that step).
    – Barron
    Jan 6, 2012 at 16:24
  • 2
    Welcome to EL&U. This isn't a bad answer, but I thought it should be pointed out more clearly that it just applies to the software industry. Since some people will be interested in the software terminology, this answer should definitely not be deleted. Jan 6, 2012 at 16:49
7

As a programmer, its typically used like so:

Validation: To check data or filter data that requires no external references; usually meaning to check the format of the data matching a particular pattern. For example, check if something is filled in or not or the pattern of an email address matches. More specifically, validation is doing as little work as possible to check the very basic assumptions of the data.

Verification: Occurs after Validation in that it is more complex and you would always use validation first and not allow verification if the validation did not pass. Verification has to do with checking against a current set of data that takes more resources to discover than Validation. For example, checking if an email has already been registered or not requires a lookup of existing registered users or another example would be checking if a zip code entered is actually a real zipcode by looking through a database of registered zipcodes.

The dictionary can give a more complete proper answer but I prefer plain English spoken in everyday terms, relevant to its actual usage rather than from an academic sense. Academia tends to separate us from the simplicity of things.

1
  • 1
    This is by far the best one that makes sense to me :)
    – Tarik
    Oct 31, 2013 at 21:14
2

Validation: Are we building the system right?

Verification: Are we building the right system?

2
  • Just a note: This is a correct definition for engineering systems, but does not apply more broadly to a general English definition.
    – Lynn
    Jan 7, 2012 at 23:00
  • 4
    This is an identical distinction to the one in Barron's answer, but reverses the terms. I believe that Barron's is correct and this one is not.
    – Ben Voigt
    Feb 3, 2014 at 23:03

Not the answer you're looking for? Browse other questions tagged or ask your own question.