×L'Editorialjustice régions Dossiers Société Brèves International Brèves internationales Courrier des Lecteurs LE CERCLE DES EXPERTS Documents Lois à polémiques Docs de L'Economiste prix-de-la-recherche Prix de L'Economiste Perspective 7,7 Milliards by SparkNews Earth Beats Solutions & Co Impact Journalism Day cop22Spécial Cop22 Communication Financière

Entreprises

La qualité des logiciels

Par L'Economiste | Edition N°:21 Le 19/03/1992 | Partager

Prononcez le mot "qualité" et le manager répond automatiquement: "cercles de qualité, contrôle statistique de la qualité, contrat qualité..." Chacun voit la qualité en fonction des ses responsabilités. S'il n'y a pas un point de rencontre acceptable autour duquel l'ensemble du personnel puisse adhérer, les efforts individuels ne contribueront pas au progrès de l'ensemble. La qualité est ce point de rencontre et d'adhésion, car partagée, elle devient une force mobilisatrice d'intélligence et de compétence. Encore faut-il bien la définir.

Qu'est ce que la qualité logiciel? Pourquoi la qualité? comment contrôler la qualité? qui doit contrôler la qualité?...
A toutes ces questions auxquelles sont confrontées de plus en plus les utilisateurs de l'informatique.
Qu'est ce que la qualité? La qualité d'un produit ou d'un service est son aptitude à satisfaire les besoins spécifiés des utilisateurs (AFNOR NF 50-109).
Comment appliquer ce concept au logiciel (objet abstrait) qui est un produit commercial, néanmoins il possède des caractéristiques qui en font un produit spécifique.
La qualité, rapportée au développement d'applications informatiques, est la capacité de produire des logiciels de valeurs eu égard au service attendu. La qualité des logiciels est devenue aujourd'hui une nécessité, pourquoi?
Il y a au moins sept bonnes raisons de se réveiller, de se lever et de se mettre en marche vers la qualité:
- les coûts des applications informatiques augmentent
- les délais ne sont généralement pas respectés
- l'insuffisance du personnel qualifié
- la sécurité n'est qu'un mythe
- l'absence d'une documentation bien structurée et évolutive
- la communication et la concertation sont réduites
- l'absence de méthode, d'outils et de techniques.

Cycle de la qualité

La qualité du logiciel se situe tout au long du cycle de vie du projet. Cependant les objectifs sont différents selon que l'on se trouve dans le cycle de développement ou dans le cycle de maintenance.
La démarche que nous présentons dans cet article s'appuie sur deux activités:
* construire la qualité pendant la conception
* contrôler la qualité après le développement
car la qualité repose sur deux principes:
- l'assurance qualité: c'est la mise en oeuvre planifiée et systématique d'un ensemble appropriée de dispositions préétablies, destinées à donner confiance en l'obtention de la qualité requise. Il s'agit donc de directives générales, lesquelles servent à définir, pour chaque développement et avant le démarrage le plan assurance qualité. Ces directives concernent donc l'identification et la description des actions a priori devant être appliquées au cours de développement.
- le contrôle qualité: c'est la vérification de la conformité aux objectifs préétablis. Il s'agit essentiellement d'actions menées a posteriori, à l'issue d'une étape du développement ou à des points déterminés qui constituent des points de passage obligés d'une phase à l'autre. Une démarche qualité porte nécessairement sur l'ensemble du cycle de vie d'un logiciel (cf.fig1).
Représenté sous forme de "V", il permet de mettre en évidence les préoccupations communes des phases placées sur un même niveau horizontal.

Critères de la qualité

Pour affirmer qu'un logiciel est ou n'est pas de qualité il faut qu'il soit d'abord apte à satisfaire les besoins des utilisateurs; conçu à partir des normes, méthodes, logiques; capable de fonctionner sans défaillance; pourvu des documents et des consignes d'exploitation et d'utilisation; caractérisé par un ensemble de coûts engendrés inférieurs ou égal au total des gains directs et potentiels, et enfin susceptible d'évoluer selon les nécessités techniques, économiques et textuels.
Quant aux facteurs de la qualité, ils définissent la qualité du logiciel par rapport:
- à l'utilisation: conformité, fiabilité, intégrité, facilité d'utilisation;
- aux évolutions: maintena-bilité, testabilité, flexibilité;
- aux transferts: portabilité, rentabilité, interoperabilité.
Par ailleurs, il faut se donner les moyens de gestion de la qualité. Le manuel qualité est un document décrivant les dispositions générales prises par l'entreprise pour obtenir la qualité de ses produits. Le plan qualité est un document décrivant les dispositions spécifiques prises par l'entreprise pour obtenir la qualité d'un produit ou d'un service donné. Ils sont complétés par des mécanismes de contrôles: revues, inspections, évaluations, audits, test etc...
Le développement d'un projet est l'affaire d'une équipe. L'obtention et le respect de la qualité en dépendent essentiellement.
Une des premières préoccupations pour le chef de projet est de constituer une équipe de qualité, pour cela, il doit réunir les compétences nécessaires au moment opportun et définir clairement l'activité et la responsabilité de chacun. De la bonne compréhension du rôle à jouer dépendra la motivation de l'équipe. Enfin il se doit d'élaborer le programme d'amélioration de la qualité et de coordonner les actions de sensibilisation du personnel de la qualité.

L'investissement en méthode

La méthode est une nécessité, mais il faut l'utiliser avec discernement sans oublier qu'elle nécessite d'investir lourdement en formation et expérimentation.
La démarche méthodologique permet d'améliorer d'abord la qualité des applications informatiques (fiabilité, portabilité, évolutivité, adéquation aux besoins des utilisateurs). Elle améliore aussi la productivité notamment par la réduction des charges de développement et des charges de maintenance et la maîtrise des projets: charges, budgets, délais. La communication entre les différents intervenants dans un projet et leur coordination s'en porte mieux ainsi que l'image de marque de l'activité informatique par une représentation de la méthodologie comme synthèse d'expériences et de savoir-faire.
L'approche méthodologique nécessite le choix d'une méthode générale en fonction d'un certain nombre de critères de qualité. Nous en avons retenu trois qui nous paraissent importants:
* le degré de couverture du cycle de développement;
* la méthode doit pouvoir être facilement assimilée et donc adaptée au milieu culturel de l'entreprise;
* la méthode sera d'autant plus praticable qu'elle sera supportée par des outils logiciels. Il est souhaitable que les outils soient intégrés au sein d'un Atelier de Génie Logiciel.
Le génie logiciel peut être caractérisé comme une batterie d'outils spécialisés de deux types.
Les outils de base sont le premier type tels que les compilateurs, interpréteurs avec exécution interactive, bibliothécaire, éditeur plein écran, gestionnaire de documentation etc... Le deuxième type sont les outils supplémentaires: tels que les générateurs de code/transaction, dictionnaire de données, etc...
A ces outils viennent s'ajouter des méthodes de type, AXIAL, MERISE, MAIA(1), CORIG etc..., et d'autres outils tels que langage spécification/conception, fonction de modélisation, fonction de maquettage etc...
Le poste de travail forme désormais ce qu'on appelle l'Atelier de Génie Logiciel. C'est le meilleur garant d'une qualité de développement des systèmes inséparables de la notion plus générale de sécurité.
La mise en place d'un Atelier de Génie Logiciel est un préalable à l'assurance qualité logiciel et implique les étapes suivantes. En premier lieu l'introduction d'un cycle de vie identifiant les produits intermédiaires et les standardisants dans la mesure du possible. Ensuite la mise en place d'une méthode de management de projet et enfin l'introduction d'outils support, de développement et de contrôle. Paral-lèlement à l'Assurance Qualité, le plan qualité s'appuie sur le contrôle qualité. Les actions menées à l'occasion de ces contrôles ont pour objectif de vérifier que les dispositions spécifiques préalablement définies par l'Assurance Qualité ont été bien respectées. La recherche de la qualité se situe tout au long du cycle de vie du projet. Des actions de contrôle peuvent être déclenchées à l'issue d'une étape. L'intérêt de ces actions de contrôle est de permettre la détection au pus tôt des défauts qui pourraient subsister malgré les actions de préventions définies par l'Assurance Qualité.
La qualité repose d'abord sur la documentation, un logiciel livré comprend à la fois le code et la documentation qui l'accompagne. Ce sont des produits tangibles, disponibles aux produits de contrôle:
- dossier de fin de phase
- dossier de recette
- dossier de contrôle de conformité
- projets de circulaires
- programmes sources
- jeux d'essais
- etc...
Ensuite, sur les aspects du développement lui même:
- la conception du système
- la structure des bases de données
- les fonctions réalisées, les traitements, les résultats attendus
- les mesures de sécurité
- les procédures de secours (réponse, sauvegarde...)
- etc...
Quatre types de contrôle nous paraissent importants.
- Les revues et les comités:
ce sont des réunions formelles où sont examinées principalement l'aspect documentaire et les procédés. (Comité de projet, comité de conception, etc...).
- Les tests: l'action de contrôle consiste à vérifier que:
les jeux d'essais comprennent une variété suffisamment représentative de données en entrée;
les résultats produits sont conformes à ceux attendus.
- Les évaluations: ce sont des actions d'appréciation qui consistent à vérifier que les hypothèses qui ont présidé à la définition du système ont bien été respectées et que la solution proposée est en adéquation aux besoins.
- Les audits: ce sont des examens périodiques d'une situation réalisée en coopération avec les intéressés en vue de vérifier la conformité de cette situation aux dispositions préétablies.
Le contrôle qualité doit être effectué en collaboration avec le chef de projet, et par une équipe autre que celle qui a développé le logiciel.
L'objectif recherché n'est pas d'évaluer le concepteur ou de mettre systématiquement en cause le produit réalisé, mais de contribuer à l'amélioration de la qualité du développement et à la réussite de la mise en oeuvre.
La mise en place d'une politique de qualité logiciel ne peut donc être que progressive et multiforme. Elle doit être accompagnée d'un important effort de formation de l'ensemble des personnes concernées.
Bien entendu, l'article est loin d'embrasser tout ce qui mérite d'être enseigné en qualité logiciel. La matière présentée ici peut être utilement complétée par la lecture des ouvrages spécialisés.

(*) Docteur ès Sciences Economiques
DEA en Ingénierie des Organisations
Chargé des Normes & Méthodes (BMCI).


(1) MAIA: Méthode d'Aide à l'Analyse, résultant des choix concernant la méthode IA pour les données, MERISE pour les traitements. Cette méthode est utilisée par la BMCI.

  • SUIVEZ-NOUS:

  1. CONTACT

    +212 522 95 36 00
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]

    70, Bd Al Massira Khadra
    Casablanca, Maroc

  • Assabah
  • Atlantic Radio
  • Eco-Medias
  • Ecoprint
  • Esjc