Glossaire · Fondamentaux du test
Vérification et validation
En anglais : Verification and validation
Également appelé : V&V, vérification vs validation, différence vérification validation
Définition
La vérification demande « construisons-nous le produit correctement ? » selon la spécification ; la validation, « construisons-nous le bon produit ? » pour les vrais besoins.
La vérification et la validation sont deux contrôles complémentaires, généralement décrits avec la formule de Barry Boehm. La vérification contrôle qu’un produit de travail est conforme à sa spécification : construisons-nous le produit correctement ? La validation contrôle que le produit répond aux besoins réels de ses utilisateurs dans son environnement prévu : construisons-nous le bon produit ? Un système peut réussir entièrement la vérification et échouer pourtant à la validation si la spécification était erronée.
Exemple
Une exigence indique : « Le bouton d’export génère un fichier CSV de toutes les commandes. »
- Vérification : l’équipe relit la conception, inspecte le code et teste qu’un clic sur Exporter produit un CSV correctement formaté contenant chaque commande. C’est le cas : la vérification réussit.
- Validation : l’équipe finance essaie de l’utiliser et découvre qu’elle a en réalité besoin des commandes filtrées par mois, avec la taxe dans une colonne séparée, et que son modèle de tableur attend des points-virgules comme séparateurs. La fonctionnalité respecte la spécification mais pas le besoin. La validation échoue.
La différence en un coup d’œil
| Vérification | Validation | |
|---|---|---|
| Question | Construisons-nous le produit correctement ? | Construisons-nous le bon produit ? |
| Comparée à | Exigences, conception, standards | Besoins des utilisateurs et usage prévu |
| Activités typiques | Revues, walkthroughs, inspections, analyse statique, tests unitaires, d’intégration et système | Recette utilisateur, bêta-tests, études d’utilisabilité, démos, retours de production |
| Faut-il un logiciel qui tourne ? | Pas toujours : les revues relèvent de la vérification | Généralement oui, ou un prototype réaliste |
| Menée surtout par | Développeurs et QA | Utilisateurs, clients, product owners |
Les techniques statiques, comme les revues d’exigences et de code, relèvent toujours de la vérification. La plupart des tests dynamiques menés par la QA par rapport à la spécification sont aussi de la vérification. La validation implique les personnes à qui le produit est destiné.
Pourquoi c’est important
Les équipes qui se concentrent uniquement sur la vérification peuvent livrer un logiciel parfaitement conforme à une exigence défaillante. Les pratiques shift-left aident sur les deux plans : relire tôt les critères d’acceptation avec les utilisateurs est une validation peu coûteuse, et les tests automatisés à chaque commit constituent une vérification continue. Dans les secteurs réglementés comme les dispositifs médicaux, la V&V se compose d’activités distinctes et documentées, et les auditeurs attendent des preuves de chacune.