Présentation
EnglishRÉ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
(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
1. Modélisation en génie logiciel
La modélisation est une activité technique qui s’inscrit dans de nombreux processus d’ingénierie. Son but est de fournir une représentation approchée du système ou du produit que l’on veut analyser, concevoir ou fabriquer. Cette représentation, appelée modèle, contribue à l’étude des caractéristiques techniques du système, des phénomènes relatifs à son fonctionnement ou encore de son architecture.
L’élaboration d'un modèle est souvent motivée par une complexité importante du système étudié. Du fait de cette complexité, il est difficile, voire impossible, de représenter le système globalement et exhaustivement avec un niveau de détail suffisant pour le comprendre, le définir ou le documenter. De façon générale, les modèles relèvent donc d’abstractions, c’est-à-dire qu’ils sont élaborés par rapport à l’ensemble restreint des propriétés que l’on veut étudier. Les caractéristiques secondaires sont volontairement occultées ou masquées afin de limiter la complexité. Un modèle peut intégrer différentes vues qui correspondent à des abstractions particulières et à des représentations distinctes, complémentaires et cohérentes. Dans certains cas, le développement d’un système peut même nécessiter l’élaboration de plusieurs modèles distincts portant sur des champs d’abstraction différents en fonction de l’avancement du processus.
Si le problème est simple, la solution peut résulter d’une intuition, d’une idée ou d’une simple réflexion intérieure. Si le problème est plus complexe, une tendance naturelle est d’utiliser un support écrit pour exprimer la solution et le cheminement intellectuel dont elle découle. Ce support peut alors servir pour raisonner et pour évaluer la solution envisagée puis pour la compléter, l’améliorer et la préciser jusqu’au niveau de détail voulu. La formalisation écrite de la solution devient alors une référence qui va guider le processus de réalisation : l’objectif est de concrétiser la solution élaborée en s’appuyant sur l’expression qui en a été faite. Si le concepteur et le réalisateur sont des individus distincts qui interviennent au sein d’une même équipe, le support écrit qui formalise la solution devient également un vecteur de communication...
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
Modélisation en génie logiciel
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
(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