Présentation
EnglishNOTE DE L'ÉDITEUR
Cet article est la version actualisée de l’article intitulé « Apport
d’une norme de qualité dans la conduite d’un projet logiciel basé sur UML », écrit par Marie Christine LAFAYE et publié par nos éditions en 2009.
RÉSUMÉ
Cet article traite de la norme de qualité ISO/CEI 12207 : 2008 (E) IEEE Std 12207™ intitulée «Ingénierie des systèmes et du logiciel - Processus du cycle de vie du logiciel». Il est montré comment cette norme applique les principes de base de l’assurance qualité. Puis la norme est comparée avec deux cadres de référence de production du logiciel: RUP et l’approche Agile décrite par SBOK™ pour la mise en œuvre de Scrum. La mise en œuvre de cette norme est détaillée à travers l'utilisation du langage de modélisation UML et son impact sur les caractéristiques des modèles de produit UML associés est étudiée. Un exemple d’illustration est fourni.
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleAuteur(s)
-
Marie Christine LAFAYE : Maître de conférences honoraire - Université de La Rochelle, France
-
Annick LASSUS : Professeur Agrégé - IUT, Université de La Rochelle, France -
INTRODUCTION
Pour représenter les systèmes d’information, plusieurs types de modèles (ou modèles de produit) sont élaborés. La complexité d’un système d’information est telle qu’il est nécessaire de combiner plusieurs points de vue avec différents niveaux d’abstraction. On distingue classiquement les points de vue fonctionnel, dynamique et ontologique et les niveaux conceptuel, organisationnel, logique et physique. Nous nous intéressons au cas où le projet logiciel à conduire est intégré dans un système d’information particulier.
Les normes de la famille ISO 9000 : 2000, dont la dernière révision date d’octobre 2015, sont la référence internationale en assurance qualité. Pour faciliter leur application, des normes outils sont proposées, telle la norme ISO/IEC 12207, elle-même révisée en 2008. Nous montrons comment cette norme applique les principes de base de l’assurance qualité. Cette norme préconise une approche processus. Un « processus » y est défini comme un « ensemble d'activités corrélées ou interactives qui transforment des éléments d'entrée en éléments de sortie ». Les éléments de sortie sont dans la plupart des cas des modèles de produit. Pour décrire les différents modèles de produit, nous disposons depuis plusieurs années du langage de modélisation UML (Unified Modeling Language).
La mise en œuvre avec le langage UML est généralement associée au modèle de processus RUP (Rational Unified Process). L’usage des méthodologies « Agiles », apparues depuis le début des années 1990, s’est répandu au sein des entreprises de services numériques. Ces méthodologies sont, quant à elles, indépendantes d’UML, ce qui ne veut pas dire qu’on s’y interdit l’usage d’outils de modélisation. Parmi elles, nous avons choisi de présenter Scrum et plus particulièrement sa déclinaison processus : le guide de connaissance SBOK™ (Scrum Body of Knowledge). RUP et SBOK™ sont des processus génériques, c’est-à-dire qu’ils proposent une trame commune à adapter en fonction du projet traité. Nous montrons que chacun d’eux correspond à une mise en œuvre particulière de la norme ISO/IEC 12207.
Dans la version 2.5, UML propose 14 types de diagrammes différents. Cette richesse de représentation a pour corollaire une difficulté de mise en œuvre : quel diagramme choisir ? Comment utiliser les différents éléments de modélisation associés en fonction du point de vue et du niveau d’abstraction ? Quel objectif poursuit-on en utilisant UML : mode « esquisse » pour communiquer certains aspects du système, ou mode « plan » qui permet de préparer la génération du code ? Quoi qu’il en soit, le but de cet effort de modélisation est d’améliorer la qualité du logiciel produit en améliorant la qualité de son mode de production.
Dans cet article, nous privilégions l’étude des types de modèles de produit élaborés avec UML pouvant être construits pour chaque activité des processus d‘implantation de logiciel : analyse des exigences, conception de l’architecture, conception détaillée et pour les processus d’ingénierie du domaine et de conception de l’architecture système. Nous fournissons en annexe des exemples de diagrammes UML correspondant à ces modèles de produit et illustrant comment mettre en œuvre une approche Agile avec l’AGL (Atelier de Génie Logiciel) UML Modelio.
VERSIONS
- Version archivée 1 de août 2009 par Marie Christine LAFAYE
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 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
4. Conclusion
La norme ISO/CEI 12207 nous permet de disposer d’un référentiel pour élaborer un modèle de processus et définir les modèles produits associés à chaque projet d’étude d’un logiciel en tenant compte du système d’information dans lequel il sera intégré. Elle n’impose aucun modèle de cycle de vie, aucune méthode, ni aucun langage de modélisation. Bien qu’elle ait été élaborée en 1995 et revue en 2008, cette norme est exploitable dans le contexte technologique actuel. Couplée à la puissance d’expression du langage de modélisation UML, elle permet d’améliorer la qualité des spécifications du logiciel.
La plasticité des outils de modélisation d’UML rend plus complexe leur utilisation. La mise en perspective de leurs différents contextes d’utilisation en fonction des tâches de la norme ISO/IEC 12207 permet de déduire des règles de bonne modélisation pour chaque diagramme en fonction des objectifs d’étude. Il serait nécessaire de spécifier les caractéristiques de chaque type de modèle UML indiqué dans le tableau 5, et d'outiller en conséquence un AGL UML.
Le travail présenté dans cet article résulte d’une expérimentation de plus de 15 années aussi bien sur la notation UML que dans la mise en œuvre de la norme ISO/CEI 12207 sur des projets réalisés dans le cadre de l’enseignement d’analyse et conception des systèmes d’information dans un département informatique d’IUT (délai moyen de 15 semaines et charge moyenne de 1,5 mois*homme). Ces projets ont concerné des systèmes d’information très divers : sites web dynamiques de toutes natures, utilisation de systèmes d’information géographiques (SIG), gestion de production, gestion électronique de documents. Ils ont d’abord utilisé une approche par les cas d’utilisation, puis ont maintenant évolué vers une mise en pratique de modélisation Agile au sein d’une démarche de type Scrum. Ces projets avaient soit pour objectif de produire du code, soit uniquement de spécifier les besoins et les exigences afin de construire un cahier des charges ou une spécification du « terminé » d’une itération. Tous ont été réalisés avec un AGL UML qui permet...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 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
Conclusion
BIBLIOGRAPHIE
-
(1) - AFNOR - Ingénierie et qualité du logiciel et des systèmes, Tome 1, Définition des processus et qualité des produits. - ISBN 2-12-236141-7 (2002).
-
(2) - BOEHM (B.) - A Spiral Model of Software Development and Enhancement. - ACM SIGSOFT Software Engineering, Volume 11 Issue 4, August 1986 Pages 14-24 (1986).
-
(3) - KRUTCHEN (P.) - Introduction au Rational Unified Process. - Eyrolles (2000).
-
(4) - BOOCH (G.), RUMBAUGH (J.), JACOBSON (I.) - Le guide de l’utilisateur UML. - Eyrolles (2000).
-
(5) - FOWLER (M.) - UML 2.0. - Campus Press (2004).
-
(6) - KRUTCHEN (P.) - How the Rational Unified Process Supports ISO 12207. - The Rational Edge : IBM...
DANS NOS BASES DOCUMENTAIRES
-
Référentiels normatifs – Processus d’ingénierie informatique.
-
Référentiels normatifs – Gestion du cycle de vie du logiciel.
-
Langage UML : développement de logiciel et modélisation visuelle.
-
Sys ML : une notation pour spécifier et concevoir des systèmes.
-
UML : une notation pour spécifier et concevoir des logiciels.
-
Sys ML/UML : comment les utiliser ? Avec quelle méthode ? Un exemple d'application...
Modelio version 3.5.0, http://www.modeliosoft.com/fr.html
Zend Framework version 2, https://framework.zend.com/learn
HAUT DE PAGE
Scott Ambler Modélisation Agile, http://www.agilemodeling.com
HAUT DE PAGE
ISO/IEC 12207 - IEEE Std 12207-2008 Second Edition 2008-02-01‘Systems and software engineering – software life cycle processes’.
ISO/IEC/IEEE 15288:2002 - Ingénierie des systèmes et des logiciels – Processus du cycle de vie du système.
OMG Business Process Model and Notation (BPMN), http://www.bpmn.org.
OMG Unified Modeling Language (UML), http://www.uml.org.
OMG Model-Driven Architecture (MDA) http://www.omg.org/mda.
OMG Common Warehouse Metamodel (CWM™), http://www.omg.org/spec/CWM/.
The Open group Architecture framework (TOGAF®), http://www.opengroup.org/togaf/.
...Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 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