Tu te rappelles de l’accident de la concorde en 2000 ou de l'explosion des batteries Samsung Galaxy S7 en 2016 ? Ces exemples, mondialement connus permettent de mettre en lumière l’importance de réaliser des tests en amont de la sortie au grand jour ! Une entreprise, peu importe son secteur, ne peut pas se permettre de mettre dans les mains des utilisateurs un produit sans avoir réalisé un contrôle de qualité. La qualité apporte à la fois la garantie d’une bonne expérience utilisateur et une plus grande confiance dans l’entreprise. Embarquez à la découverte d’un monde riche en couleur dont les prémices débutent dans les années 80’ !
Tu es peut-être tous les jours en contact avec un testeur, un quality analyst, un QA, un recetteur ou encore un référent fonctionnel. Toutes ces typologies font référence à la “Quality assurance” (la garantie de la qualité).
Le Quality analyst a pour fonction de tester l’ensemble des fonctionnalités d’un ou des logiciels / produits dont il est responsable. Il doit trouver les potentielles erreurs que pourraient rencontrer un utilisateur lors de l’utilisation du produit. Par conséquent, le QA va se mettre à sa place dans le but d'imaginer l’ensemble des utilisations normales (ou pas) et dénicher les bugs liés à ces utilisations afin de les résoudre avant que le produit soit mis entre les mains des utilisateurs finaux. Le QA va aussi s’assurer que lors des itérations, la qualité du produit reste stable et que de nouveaux ou anciens bugs n’apparaissent pas (test de non-régression).
Attention, le QA valide un seuil minimal de qualité qui est déterminé avec les autres membres de l’équipe. Cela ne veut pas dire qu’il y a zéro anomalie.
Le QA ne doit pas se limiter à valider le besoin émis par le métier. Son rôle est de trouver des failles dans le système comme des règles de gestion non identifiées, des comportements qui impactent d’autres fonctionnalités ou des problèmes de performance...
Quel que soit le test manuel ou automatique, il doit effectuer des scénarios de tests pour “casser le produit” et trouver dans quelles conditions le produit pourrait ne pas fonctionner correctement. Le QA a la faculté de refuser ou de retarder la mise en production d’un produit ne respectant pas le niveau de qualité exigé.
Le développement d’un produit suit un cycle souvent appelé “sprint” pouvant aller de 1 à 4 semaines en fonction des entreprises. Chaque sprint se termine par une phase de test. Si cette dernière est concluante, une mise en production est planifiée.
Dans cette phase, le QA a le pouvoir d'arrêter une mise en production ! En effet, s’il estime que les résultats de la phase de tests ne permettent pas de garantir le bon fonctionnement du produit, il peut donner son “ NO GO” à la mise en production.
Voici quelques exemples qui peuvent impliquer un “ NO GO” ou un retard sur la mise en production :
Attention, le QA ne peut pas tout tester. Donc une stratégie de test est essentielle à mettre en place afin de couvrir un maximum de fonctionnalités dans chaque cycle de test. Par exemple un QA pourra mettre en place une matrice de couverture.
Le QA est au cœur de toutes les étapes d’un projet : Stratégie, Business, Expertise...Il peut autant apporter son expertise sur un plan technique que garantir la gestion des risques ou encore améliorer l’efficacité des tests avec l'automatisation.
De nombreuses entreprises ont encore comme vision que le Quality Analyst n’intervient que lors des phases de test et sous-estime l’importance de cette fonction dans les phases en amont. Néanmoins, plus un Quality Analyst est intégré tôt dans la vie du produit, plus vite il va pouvoir challenger les équipes techniques et ainsi limiter voire éviter des erreurs. Il va être un membre actif de Tres amigos.
Le QA Analyst à travers le cycle de vie d’un produit :
A savoir : le QA est le premier utilisateur de la fonctionnalité. Il a donc aussi un rôle de conseil et cela à travers le cycle du produit. Si, par exemple, en tant qu'utilisateur, il a l'impression qu'une fonctionnalité est difficile à comprendre, qu’une phrase n'est pas claire ou encore si un bouton n'est pas assez visible au regard de son utilité.
Exemple lors d’une migration de serveurs de la base de données d’une entreprise qui aura des répercussions sur les comptes clients :
Un QA doit avoir certaines compétences pour pouvoir exercer son métier tout en prenant en compte les challenges de son équipe/ client/ entreprise. Ci-dessous quelques-unes :
Quand un QA commence son parcours, il commence en tant que QA Analyst. Avec de l’expérience, il peut évoluer vers un poste de QA Lead. Son nouveau rôle consiste à manager une équipe de QA, de définir la stratégie de test et de s’assurer que les campagnes de test sont finies à temps pour assurer des livraisons de qualité. Le QA peut aussi passer de QA Analyst à QA automaticien. Pour avoir ce poste, le QA doit s'intéresser aux aspects techniques pour pouvoir être autonome sur les tâches de développement de ses classes. Enfin il peut aussi évoluer vers d’autres métiers comme Proxy PO ou PO ou Analyste fonctionnel !
Bonus : tips des bonnes pratiques de la QA
Pour conclure, toutes les entreprises peuvent bénéficier des nombreux avantages de faire appel à un QA. Parmi ces avantages, on peut retrouver, l’assurance de mettre à disposition de ses clients un produit de qualité, la diminution de la dette technique ou encore la rationalisation du coût de développement. Tu souhaites en savoir plus sur le rôle de QA, n’hésitez pas à explorer nos différents articles en lien avec le rôle de QA !