Qu'est-ce que l'assurance qualité logicielle?

L’assurance de la qualité des logiciels implique de tester la conception et la mise en œuvre de logiciels et de s’assurer qu’ils répondent aux normes de qualité minimales. Les tests sont au cœur du processus d’assurance qualité. C’est la méthode par laquelle chaque étape du cycle de développement est analysée afin de détecter les défauts, tels que les dysfonctionnements ou les problèmes de sécurité. La partie la plus connue du processus d’assurance qualité logicielle est le test du logiciel et du code; Cependant, il couvre également d'autres aspects du cycle d'ingénierie. D'autres aspects du génie logiciel soumis à l'analyse de la qualité incluent les étapes de conception et de mise en œuvre.

Le concept global d’assurance qualité logicielle exige qu’il commence dès la phase de planification logicielle. Un logiciel mal planifié peut être difficile voire impossible à écrire de manière à répondre aux attentes de l’organisation qui l’a envisagé. La gestion de la qualité au stade de la conception implique d'étudier les ramifications des spécifications ou des objectifs du projet, ainsi que les plans de l'organisation pour atteindre ses objectifs. L’avantage de l’analyse de qualité en phase de conception est qu’elle détecte et élimine les erreurs tôt, plutôt que plus tard dans le cycle de développement, lorsque les problèmes de conception sont beaucoup plus coûteux à résoudre.

Un ingénieur de test de logiciels, également appelé analyste de la qualité des logiciels, est le principal responsable de la réalisation du processus de test. Cette personne conçoit et exécute les plans de test qui aideront une organisation à améliorer la qualité de ses logiciels. Dans l'idéal, un programmeur ne devrait jamais tester son propre produit, ce qui signifie qu'un programmeur et un ingénieur de test sont deux personnes différentes au sein d'un projet.

Les plans de test constituent une partie essentielle du système d’assurance qualité, en particulier de la phase de test du logiciel. Le but des plans de test est de déterminer les conditions qui marquent le succès ou l’échec d’un logiciel. Un plan de test typique comprendra une liste complète de programmes et de sous-programmes, ou de procédures à tester, ainsi que les techniques impliquées dans les tests. Une autre fonction essentielle d'un plan de test consiste à déterminer quels défauts sont inacceptables. Les plans de test sont généralement conçus avant le développement du code logiciel du projet.

Lorsque les ingénieurs de test écrivent des programmes pour mettre en œuvre des plans de test, ceux-ci sont appelés scripts de test. Les scripts de test sont une partie essentielle du processus d’assurance qualité logicielle. Leur but est d'automatiser le test du code existant d'un programme afin de détecter les défauts. En outre, les ingénieurs de test utilisent généralement des outils de test conçus commercialement pour rechercher les problèmes potentiels. Les plans de test sont mis en œuvre lors de la phase de codage du développement logiciel.

La phase de test proprement dite du processus d'assurance de la qualité des logiciels comporte un certain nombre d'étapes importantes. Cela inclut les tests unitaires, qui évaluent l’intégrité de diverses sections du code logiciel, ainsi que les injections de fautes, conçues pour étudier la manière dont les programmes répondent aux données erronées. Des étapes supplémentaires incluent des tests de charge, ou des tests de contrainte, qui permettent de voir le fonctionnement d'un programme en cas d'utilisation intensive, ainsi que des tests d'intrusion ou de sécurité permettant de tester la résistance d'un programme à des accès non autorisés. Un projet logiciel est également généralement soumis à des tests de convivialité, afin de vérifier que le programme résultant est facile à utiliser par d'autres.

Les spécialistes qui effectuent des tests de code logiciel sont généralement séparés en deux groupes, l'un appelé testeurs de boîte noire et l'autre appelé testeurs de boîte blanche. Le test des boîtes noires est un processus plus superficiel qui commence au stade du codage du logiciel et n’examine aucun code informatique sous-jacent. Il étudie la facilité d'utilisation, la cohérence esthétique et la survenue d'erreurs et de dysfonctionnements d'un logiciel.

Le test des boîtes blanches est un processus qui commence au tout début du processus d’assurance qualité du logiciel, au stade de la conception. Il inclut la prévision des problèmes potentiels avant que le code soit réellement écrit, ainsi que la rédaction de plans de test et de scripts de test avancés. Contrairement aux tests de boîte noire, les tests de boîte blanche impliquent également l'étude du code informatique sous-jacent.

L’assurance qualité s’applique également à la phase de mise en œuvre du logiciel, c’est-à-dire lorsque le logiciel est sur le point d’être achevé et est installé sur des systèmes informatiques pour évaluation. Cette phase est souvent appelée test alpha et se produit lorsque le produit presque terminé est installé et testé par le personnel du développeur. Lorsque le logiciel est présenté à des clients potentiels extérieurs à l'entreprise, il est appelé test bêta. Si des défauts apparaissent après la publication du logiciel et qu'un correctif doit être développé, des tests de régression sont utilisés pour garantir que les nouvelles erreurs ne créent pas de nouvelles erreurs.

DANS D'AUTRES LANGUES

Cet article vous a‑t‑il été utile ? Merci pour les commentaires Merci pour les commentaires

Comment pouvons nous aider? Comment pouvons nous aider?