Les indicateurs de qualité de la norme ISO 9126

Cette page présente quelques critères qualité importants pour l'évaluation de la qualité d'un système informatique. Nous présentons à cet effet quelques initiatives et normes relatifs à la qualité logicielle (ISO 9126, ISO 14598, ISO 25041, CMMI…).

La norme ISO/CEI 9126

La norme ISO 9126 (« Technologies de l’Information : Qualités des produits logiciels ») définit un ensemble d'indicateurs pour la qualité logicielle, et « facilite » ainsi le processus d'évaluation logiciel et la spécification d'exigences fonctionnelles ou non-fonctionnelles. Cette norme est en application depuis 1992.

Cette norme définit 6 caractéristiques permettant de décrire la qualité du logiciel, elles-mêmes détaillées en sous-caractéristiques.

Capacité fonctionnelle

Il s'agit d'un ensemble d'attributs permettant de vérifier si le logiciel répond aux besoins fonctionnels exprimés. On y retrouve notamment les notions de pertinence, d'exactitude, d'interopérabilité, de sécurité et de conformité.

Fiabilité

Il s'agit ici de décrire les attributs permettant d'évaluer l'aptitude d'un système à maintenir son niveau de service : tolérance aux pannes, conditions de remise en service, maturité…

Facilité d'utilisation

On retrouve dans cette caractéristique un ensemble d'attributs permettant de caractériser l'effort nécessaire à un utilisateur potentiel pour utiliser le système : facilité de compréhension, d'apprentissage, d'exploitation ou encore pouvoir d'attraction.

Rendement ou efficacité

Cette caractéristique permet de qualifier le rapport entre le service rendu par le logiciel et les efforts qu'il faut entreprendre pour le faire fonctionner (quantité de ressources utilisées notamment).

Maintenabilité

Il s'agit ici d'évaluer les possibilités de faire évoluer le système dans le cas de nouveaux besoins : facolité d'analyse, de modification, stabilité et testabilité de la solution.

Portabilité

Cette caractéristique décrit la possibilité de transférer le logiciel d'une plateforme à une autre, et les efforts nécessaires pour le faire : facilité d'adaptation et d'installation, coexistance, interchangeabilité.

Autres initiatives

La norme ISO 9126 ne fournit qu'un cadre de description, mais pas de méthodologie associée. Une autre norme, ISO/CEI 14598, définit une démarche méthodologique pour l'évaluation d'un système logiciel au regard des caractéristiques et sous-caractéristiques définis dans l'ISO 9126.

ISO/IEC 25041

Ces deux normes ont été intégrées et révisées dans une nouvelle norme, appelée ISO/IEC 25041 : Ingénierie des systèmes et du logiciel - Exigences de qualité et évaluation des systèmes et du logiciel (SQuaRE) - Guide d'évaluation pour les développeurs, les acquéreurs et les évaluateurs indépendants.

Le processus est décrit en quatre étapes :

  1. Fixer les exigences de qualité
  2. Etablir un modèle de qualité
  3. Fixer les métriques de la qualité
  4. Conduire les évaluations

ISO 9000-3

La norme ISO 9000-3 (acquisition, la fourniture, le développement, l'exploitation et la maintenance des logiciels et des services de support associés) donne un cadre pour la gestion des projets informatiques, à destibation de l'équipe qualité : cadre du système qualité (responsabilités du client et du fournisseur, audits, actions correctives…), cycle de vie du produit (spécifications, pan qualité, conception, tests, déploiement…) et support (formation, gestion des configurations, base documentaire…).

ISO/IEC 12207

La norme ISO/IEC 12207 donne un cadre pour la formalisation des processus, à destination des équipes IT : acquisition, développement, installation, déploiement, maintenance.

ISO/IEC 15504

La norme ISO/IEC 15504 (initialement connue sous le nom de SPICE : Software process improvement and capability determination) fournit un cadre pour l'évaluation des processus. Elle fournit un référenciel de niveaux de maturité, à l'image de CMMi (voir plus bas).

CMMi : Capacity maturity model integrated

CMMi (Capacity maturity model integrated) est une initiative plus globale, dans le sens où elle ne vise pas uniquement la qualité logicielle d'un point de vue produit (est-ce que le produit est de qualité ou pas), mais elle s'intéresse au niveau de maturité de l'organisation qui élabore le logiciel.

Cinq niveaux de qualité définissent une échelle permettant de qualifier une organisation :

  1. Niveau initial, l'efficacité repose sur les compétences et la motivation des individus
  2. Niveau piloté, principaux processus de gestion de projets définis et appliqués, développement de logiciels planifiés
  3. Niveau standardisé, définition des processus étendue à l'ensemble de l'entreprise, processus améliorés
  4. Niveau quantifié, application systématique de mesure de processus
  5. Niveau optimisé, optimisation des processus, mise en place des processus permettant l'amélioration continue, maîtrise du changement

Synthèse

Le tableau suivant présente une vision de l'ensemble des normes et initiatives présentés sur cette page, les enjeux et problématiques adressés et les acteurs concernés.

Initiative Problématiques abordées Acteurs concernés
ISO/CEI 9126 Description des caractéristiques, modèle qualité du produit final Acquéreur, fournisseur de logiciel
ISO/CEI 14598 Démarche méthodologique pour l'évaluation d'un produit logiciel au regard des caractéristiques de la norme ISO/CEI 9126 Acquéreur, fournisseur de logiciel
ISO/IEC 25041 Démarche méthodologique pour l'évaluation d'un produit logiciel intégrant ISO/CEI 9126 et ISO/CEI 14598 Acquéreur, fournisseur de logiciel, évaluateurs indépendants
ISO/IEC 12207 Déclinaison des activités du cycle de vie en processus Équipes IT
ISO/IEC 15504 Évaluation des processus et de la maturité de l'organisation Équipes IT
CMMi Évaluation des processus et de la maturité de l'organisation Entreprise

Livres intéressants

Article

SO 9000-3: A tool for software product and process improvment

Voir

Article

Software Product Quality Control

Voir