Présentation
En anglaisRÉSUMÉ
Le langage UML (pour Unified Modeling Language) est un langage graphique de modélisation des systèmes logiciels. Cet article décrit les neuf types de diagrammes UML et présente la syntaxe du langage UML pour chacun de ces diagrammes. Pour chaque diagramme, des exemples simples permettent de définir un champ d'application dans le processus de développement de logiciel.
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleAuteur(s)
-
Patrick GIROUX : Ingénieur consultant, EADS Defence and Security Systems - Maître de conférence associé, université de Rouen
INTRODUCTION
Le langage UML (Unified Modeling Language) est un langage graphique de modélisation initialement conçu pour représenter, spécifier, concevoir et documenter les artefacts de systèmes logiciels. Adopté par l’Object Management Group (OMG) en tant que standard, il est devenu une référence incontournable dans le domaine du génie logiciel. Sa richesse et sa puissance d’expression le rendent également éligible pour la modélisation de concepts et de processus « métier » (« business modeling ») et pour l’ingénierie de systèmes non logiciels. UML résulte de l’unification de techniques ayant fait leurs preuves pour l’analyse et la conception de grands logiciels et de systèmes complexes.
UML intègre neuf types de diagrammes destinés à la caractérisation du système modélisé et à la représentation des éléments qui le constituent :
-
les diagrammes de cas d’utilisation permettent de décrire les fonctionnalités du système et de représenter les différents types de sollicitations auxquelles il doit pouvoir répondre ;
-
les diagrammes de classes sont destinés à décrire les propriétés structurelles des objets du monde réel, les concepts spécifiques du domaine considéré ou encore les notions abstraites que le système doit appréhender. Ce sont les diagrammes le plus fréquemment utilisés en modélisation orientée objet. En phase de conception du logiciel, ils sont exploités pour décrire l’architecture statique du système et les interdépendances entres ses constituants ;
-
les diagrammes d’objets offrent un moyen de représenter les objets (c’est‐à‐dire les instances des classes figurant dans les diagrammes de classes) ainsi que leurs relations ;
-
les diagrammes de collaboration permettent de formaliser les scénarios de mise en œuvre du système et de montrer comment les objets sont mis en jeu pour réaliser les cas d’utilisation. Ils décrivent les interactions entre les objets ;
-
les diagrammes de séquence, comme les diagrammes de collaboration, décrivent les interactions entre objets. Ils mettent l'accent sur l'ordre chronologique dans lequel s'effectuent les échanges de messages entre objets ;
-
les diagrammes d’états (ou diagrammes états-transitions) apportent le complément nécessaire à la formalisation des aspects dynamiques : ils répondent au besoin de modéliser les processus d’exécution et les comportements des objets en réaction aux stimuli auxquels ils sont soumis ;
-
les diagrammes d’activités sont également dédiés à la représentation de l’exécution d’un processus : ils constituent une variante des diagrammes d’états ;
-
les diagrammes de composants sont destinés à la description des éléments de configuration qui constituent le logiciel (binaires exécutables, bibliothèques, unités de compilation, etc.) et à la formalisation de leurs dépendances ;
-
les diagrammes de déploiement permettent, enfin, de représenter l’implantation des différents programmes et composants logiciels sur l’architecture physique du système.
À travers quelques exemples simples, le présent article décrit la syntaxe du langage UML pour chacun de ces diagrammes et tente de délimiter leurs champs d’application dans un processus de développement de logiciel.
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 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
6. Structuration de modèle
6.1 Notion de paquetage
Revenons à notre premier exemple de modèle UML dont le but était de décrire les notions relatives aux objets géographiques (site, itinéraire, territoire, région, etc.). Ce modèle fait apparaître la classe Coordonnee Geo qui décrit sommairement les caractéristiques des coordonnées géographiques. Cette caractérisation risque cependant de ne pas être suffisante dans un contexte plus général que celui de notre exemple. Pour améliorer la rigueur et la précision du modèle, il est nécessaire de prendre en considération certains concepts du « métier » de la géographie. Remarquons d’abord que la géographie repose elle-même sur une modélisation de la Terre dont la forme est approximée par une Ellipsoïde. Une coordonnée géographique se détermine donc par rapport à un système construit à partir d’une Ellipsoïde de référence et il nous faut donc considérer une nouvelle classe dans notre modèle. Les ellipsoïdes définis par les géographes (l’ellipsoïde de Clarke, ED50, WGS84, etc.) seront des instances de cette classe. Les coordonnées pourront également être exprimées suivant la projection UTM (Universal Transverse Mercator) et suivant différents formats : degrés décimaux, degrés minutes secondes ou UTM. Les calculs et projections cartographiques devront tenir compte du fait que la coordonnée se situe dans l’hémisphère nord ou dans l’hémisphère sud.
Toutes ces nouvelles notions devront prendre place dans notre modèle. D’un point de vue applicatif, il faudra peut-être envisager de nouvelles classes liées à des notions plus opérationnelles. Enfin, dans les phases de conception technique, il sera sans doute utile d’ajouter des classes d’IHM (interface homme-machine), des classes liées à la base de données ou toute autre classe permettant de satisfaire les exigences fonctionnelles du logiciel à développer. Toutes ces notions viendront donc enrichir le modèle et il en résultera un accroissement important de la complexité du modèle qui sera, certes, plus complet et plus proche de la réalité mais aussi beaucoup plus difficile à appréhender.
Pour éviter cet écueil, il est indispensable d’organiser les classes et de structurer le modèle pour le maîtriser dans sa globalité tout en préservant l’ensemble des détails qui font sa richesse. Cette...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 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
Structuration de modèle
BIBLIOGRAPHIE
-
(1) - RUMBAUGH (J.), BLAHA (M.), PREMERLANI (W.), EDDY (F.), LORENSEN (W.) - Object-oriented Modeling Design. - Prentice Hall (1991).
-
(2) - BOOCH (G.) - Object Oriented Design with Application. - Benjamin Cummings (1991).
-
(3) - DESFRAY (P.) - Ingénierie des objets. Ap- proche classe-relation. - Masson (1992).
-
(4) - BOOCH (G.), RUMBAUGH (J.), JACOBSON (I.) - Le Guide de l’utilisateur UML. - Eyrolles (2000).
-
(5) - RUMBAUGH (J.), JACOBSON (I.), BOOCH (G.) - UML Reference Manual. - Addison-Wesley (1998).
-
(6) - ROQUES (P.), VALLÉE (F.) - UML en action. - Ey- rolles (2003).
-
(7)...
NORMES
-
Contrôle‐commande des processus de fabrication par lots (batch) – Partie 2 : structures de données et règles générales relatives aux langages - NF EN 61512‐2 - 01‐2003
ANNEXES
Object Management Group (OMG) http://www.omg.org
UML version 1.5 http://www.omg.org/technology/documents/formal/uml.htm
UML en français http://uml.free.fr
Technologies orientées objets
Outils http://www.rational.com http://www.objecteering.com http://www.borland.com/together http://www.objectsbydesign.com/tools/umltools_byProduct.html
HAUT DE PAGECet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 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