Le rôle du spécialiste de l’assurance qualité a beaucoup évolué. Aujourd’hui, sa contribution est essentielle du commencement à la fin d’un projet.
Selon la méthode traditionnelle, les projets de développement logiciel débutent par le travail d’un analyste fonctionnel – aussi appelé analyste d’affaires. Celui-ci examine les enjeux relatifs aux fonctions à développer, en plus des considérations pratiques du projet. Cet examen débouche sur la rédaction d’un document (habituellement volumineux) portant sur les spécifications fonctionnelles du système à développer. Le document est remis aux développeurs en guise de guide pour la création du système.
Il est remis également au spécialiste de l’assurance qualité (AQ), dont l’entrée en scène ne survient qu’à un stade avancé du projet. Son travail commence par l’élaboration d’un plan de test (lui aussi volumineux) et, la plupart du temps, de cas de test. Une fois le système prêt, le spécialiste AQ entame le processus de test en tant que tel. Il ne parle aux développeurs et à l’analyste fonctionnel que lorsqu’il découvre des anomalies techniques ou fonctionnelles respectivement.
Dans pareil cas, le programmeur ou l’analyste doit revenir sur le travail déjà fait – parfois depuis longtemps – afin d’apporter les corrections nécessaires, ce qui suppose l’annulation d’une partie de ce qui a été réalisé. L’analyste, notamment, peut avoir à consulter de nouveau les secteurs pertinents au sein de l’organisation afin de revoir la conception initiale du système et de donner les directives nécessaires aux développeurs afin qu’ils apportent les modifications qui s’imposent.
Inutile de dire que cela entraîne des dépenses considérables. Selon une étude d’IBM, les coûts de correction d’une erreur logicielle découverte durant la phase de test sont quinze fois plus élevés que si elle est détectée en cours de développement.
Le spécialiste AQ, vecteur d’un projet agile
Heureusement, les méthodes traditionnelles ont évolué. Par souci d’efficacité et de rentabilité, le rôle de l’assurance qualité a pris une importance accrue. Ainsi, les méthodes de développement agiles font appel aux spécialistes AQ dès le début d’un projet.
Le spécialiste AQ employé dans les projets agiles possède la même connaissance des processus d’affaires que l’analyste fonctionnel. Par contre, plutôt que d’employer son expertise à concevoir des écrans et des fonctions, il l’utilise pour élaborer des cas de test couvrant tous les scénarios liés à l’utilisation du système.
En cela, les responsabilités du spécialiste AQ sont bien distinctes de celles du développeur et de l’analyste fonctionnel. Alors que le développeur se concentre sur des parties du système, le spécialiste AQ en a une vue d’ensemble. Par ailleurs, l’analyste fonctionnel aborde le système de façon conceptuelle, son travail consistant à transformer des processus d’affaires en processus informatisés. Le spécialiste AQ complète le travail de l’analyste en s’assurant que les processus d’affaires informatisés sont efficaces sur le plan opérationnel et qu’ils remplissent le rôle voulu.
Dans cette optique, le système doit non seulement être adéquatement testé, mais pleinement opérationnel. Pour ce faire, le spécialiste AQ doit connaître quatre éléments fondamentaux du projet : le système que l’on veut développer, le domaine d’affaires dans lequel il sera utilisé, le développement d’applications et la mise en place de tous les tests qui permettront d’assurer la qualité du produit fini. Le spécialiste AQ participe non seulement au développement en tant que tel, mais bâtit l’ensemble du système de tests, qu’ils soient manuels ou automatisés.
Ses interventions touchent à toutes les phases du projet et surviennent à toutes les étapes, du début à la fin. Comme il a une connaissance du développement et du design d’affaires à la fois, sa rétroaction est cruciale. La minutie est l’une de ses principales qualités, et il ne laisse rien au hasard. Pour cette raison, il doit travailler étroitement avec le client et accompagner l’analyste fonctionnel et les développeurs dans leurs interactions avec celui-ci.
De nos jours, le développement logiciel ne peut se passer de l’apport constant d’un spécialiste compétent de l’assurance qualité. Sa contribution est un élément essentiel à la réussite des projets et à une mise en production harmonieuse des systèmes.
Yvan Bolduc est le vice-président, Opérations, de la firme AXON Intégration et développement.