Présentation
En anglaisAuteur(s)
-
Élisabeth WALTI : Consultant en qualité des logiciels - Responsable de secteur à la Société Qualience
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleINTRODUCTION
Parler de qualité est le plus souvent trop abstrait. Il semble plus facile d’aborder la question de la qualité par la non-qualité. Chacun a pu voir dans la vie de tous les jours ou dans le milieu professionnel, les effets de la non-qualité. Les conséquences sont aussi bien au niveau des coûts, des délais que des personnes et des biens.
Comme exemple grand public, le logiciel Socrate de la SNCF, dont la mise en œuvre a été laborieuse, a beaucoup compliqué la vie des utilisateurs et des usagers, et a profondément nui à l’image de l’entreprise. L’exemple du premier tir d’Ariane 5 vient également à l’esprit. Ces deux faits sont connus de tous, en raison de leur importante couverture médiatique, mais de nombreux autres exemples se rencontrent tous les jours et par tout un chacun.
Un état d’esprit encore assez répandu dans le domaine du logiciel laisse entendre que la qualité coûte trop cher, retarde le développement, ... et la décision de réaliser en premier le produit (exécutable) et ensuite le reste (documentation, tests, etc.) en fonction du temps restant est encore très souvent d’actualité.
En fait, la qualité n’est pas une entité précise et délimitée à un instant du développement mais doit faire partie intégrante de la manière d’être, et se faire tout au long du cycle de vie d’un produit.
Il semble intéressant de préciser que des secteurs industriels, développant des logiciels sécuritaires comme l’aéronautique par exemple, ont depuis longtemps mis en place des méthodes répondant à des besoins de rigueur et donc de qualité. L’apparition de standards a permis de quantifier les besoins et les attentes de chacun et servent de référence au moment des phases d’acceptation.
Depuis quelques années, le concept de qualité totale est apparu sur le marché. Les entreprises voulant rattraper leur retard se sont lancées dans des recherches d’amélioration à travers l’ISO 9000, CMM, SPICE, etc. Ces démarches sont loin d’être négatives, les apports sont plus que positifs. Il faut cependant signaler des échecs cuisants, induits le plus souvent par une non-communication interne à l’entreprise. Faire avancer à marche forcée tout le personnel, sans explication et sans tenir compte de leur point de vue, est la garantie d’un échec. La mise en place d’un système qualité propre à une entreprise, ou à un secteur déterminé, s’il est bien compris et approprié, ne peut être que positive.
Pour faciliter l’approche, et dans un souci de normalisation, il paraît plus simple de prendre le cycle de vie du logiciel et de passer en revue tous les processus le constituant pour en faire ressortir les points qualité. La norme internationale ISO 12207 « Processus du cycle de vie du logiciel » peut servir de trame dans la suite de la présentation. Cette norme regroupe les activités qui doivent être mises en œuvre pendant le cycle de vie, en cinq processus de base, huit processus de support et quatre processus organisationnels.
L’avantage de cette norme est de ne pas se limiter au développement pur du logiciel, mais de le mettre dans le contexte de l’entreprise. Un autre avantage, qui peut être déstabilisant au premier abord, est de ne proposer aucun modèle de cycle de vie, laissant à l’utilisateur la liberté de choix en fonction de son besoin.
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Automatique et ingénierie système
(137 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
5. Annexe A. Les tests du logiciel
5.1 Étapes de test
Suivant le choix du cycle de vie, ces étapes peuvent légèrement varier dans leur contenu et leur chronologie, leur principe restant identique. Ces étapes sont les suivantes.
-
Les tests de validation
Ces tests vérifient les fonctionnalités, les interfaces, les performances et le bon fonctionnement du logiciel. Ils doivent contrôler que le logiciel répond bien aux besoins exprimés, qu’il s’insère correctement dans son environnement.
Le test de validation ne s’intéresse pas à la structure interne du logiciel.
-
Les tests d’intégration du logiciel
Ces tests vérifient l’architecture du logiciel. Ils doivent contrôler que les composants du logiciel communiquent correctement entre eux.
Cette activité se fait en agrégeant progressivement les composants selon une stratégie définie au préalable, et en testant l’agrégat ainsi constitué.
-
Les tests unitaires
Ces tests vérifient le codage. Ils contrôlent que le code du composant est conforme à l’algorithme sur les domaines de définition des données d’entrée et de sortie.
Ces tests sont réalisés dans un environnement simulé. Ils sont le plus souvent réalisés en isolant le composant et en remplaçant les fonctions appelées par des fonctions dites « bouchons ».
5.2 Familles de tests
Comme leur nom l’indique, ces tests permettent de vérifier les fonctionnalités du logiciel (au niveau d’un composant, d’un agrégat ou d’un produit final).
Ils peuvent également comprendre les étapes suivantes.
-
Les tests de robustesse
Ces tests permettent de s’assurer que dans des conditions anormales non spécifiées, le composant ou l’agrégat ou le produit testé remplit ses fonctions.
Exemplela division par zéro, la non-réinitialisation des compteurs.
- ...
Cet article fait partie de l’offre
Automatique et ingénierie système
(137 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Annexe A. Les tests du logiciel
NORMES
-
Technologies de l’information – Concepts et guide d’introduction – Évaluation de processus de logiciel – Partie 1. - ISO/CEI XP TR 15504-1:1998 -
-
Technologies de l’information de référence pour les processus et l’aptitude de processus – Évaluation de processus de logiciel – Partie 2. - ISO/CEI XP TR 15504-2:1998 -
-
Technologies de l’information – Réalisation d’une évaluation – Évaluation de processus de logiciel – Partie 3. - ISO/CEI XP TR 15504-3:1998 -
-
Technologies de l’information pour la réalisation d’évaluations – Évaluation de processus de logiciel – Partie 4. - ISO/CEI XP TR 15504-4:1998 -
-
Technologies de l’information – Modèle d’évaluation et guide des indicateurs – Évaluation de processus de logiciel – Partie 5. - ISO/CEI XP TR 15504-5:1999 -
-
Technologies de l’information de la compétence des évaluateurs – Évaluation de processus de logiciel – Partie 6. - ISO/CEI XP TR 15504-6:1998 -
-
...
ANNEXES
Capability Maturity Model for Software (CMM)
Software Process Improvement and Capability DEtermination (SPICE) (ISO)
HAUT DE PAGECet article fait partie de l’offre
Automatique et ingénierie système
(137 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive