QA VS QC VS testeur
Démêlons les rôles
Dans l’univers de la qualité logicielle, les termes QA (Quality Assurance), QC (Quality Control) et testeur sont souvent mélangés, alors qu’ils recouvrent des réalités différentes.
Comprendre ces distinctions est un bon point de départ pour structurer votre organisatio de test efficace et cohérente.
QA – Quality Assurance
La Quality Assurance se situe à un niveau stratégique et préventif. Elle ne se limite pas aux tests. Elle vise à mettre en place des processus, des normes et des bonnes pratiques qui garantiront que les produits livrés seront de qualité.
Elle s’intéresse à la manière dont on fabrique le logiciel, et non seulement à son résultat.
L’objectif est de réduire les défauts en amont, dès les premières phases du cycle de vie : spécifications, conception, développement.
Quelques exemples de missions en QA :
- Définir une stratégie qualité.
- Mettre en place une démarche de revue (ex : revue de code, revue des spécifications).
- Choisir un modèle de maturité (ex : TMMi, CMMI).
- Suivre des indicateurs qualité (KPIs, taux de couverture, taux de fuite…).
- Former et accompagner les équipes à la qualité logicielle.
QC – Quality Control
La Quality Control, elle, est plus réactive que proactive. Elle s’intéresse au produit déjà fabriqué et consiste à vérifier qu’il respecte les exigences. On parle ici de vérification (compliance) et validation (conformité fonctionnelle).
Les activités de QC sont donc plus opérationnelles. Elles incluent :
- L’exécution de cas de tests (manuels ou automatisés).
- La gestion des anomalies.
- La validation des livraisons.
- Les tests de régression.
Testeur
Le testeur (ou ingénieur QA/Test) est souvent l’acteur qui opère les activités de QC (et parfois une partie de la QA selon la maturité de l’organisation).
Il conçoit, exécute et automatise des tests. Mais son rôle ne se limite pas à « chercher des bugs » :
- Il participe aux ateliers 3 Amigos.
- Il challenge les spécifications.
- Il rédige des cas de test à valeur ajoutée.
- Il peut mettre en place un cadre d’automatisation, voire même contribuer à la stratégie de tests globale.
