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
9. Modélisation d’architecture
La structure de paquetages élaborée par raffinement progressif du modèle au travers des diagrammes de classes est représentative de l’architecture statique du système. Pour finaliser une conception de logiciel, il reste à définir les modalités de traduction du modèle dans le langage cible et la stratégie d’implémentation la mieux adaptée à l’environnement d’exécution. Si le langage choisi est un langage orienté objet, les règles de traduction du modèle UML sont presque implicites. Les choix d’implémentation portent donc le plus souvent sur une allocation des unités fonctionnelles du modèle (représentées par les classes et les paquetages) aux différents composants que l’on veut pouvoir déployer. Les décisions de conception doivent prendre en considération les exigences relatives à l’architecture physique du système. L’architecture technique ainsi élaborée peut être formalisée en utilisant les diagrammes de composants.
9.1 Diagramme de composants
Les diagrammes de composants permettent de représenter les éléments ou les articles de la configuration du logiciel et leurs liens de dépendance. Ils formalisent ainsi les solutions techniques choisies pour la réalisation et l’intégration du logiciel en faisant apparaître explicitement les programmes principaux, les bibliothèques, les modules, les « composants sur étagère » (COTS ou components off the shelf ), etc., ainsi que la structure globale dans laquelle ils prennent place. Chaque composant traduit une réalisation particulière d’une ou de plusieurs entités préalablement modélisées dans des diagrammes de classes. La nature des composants est souvent très liée à la technologie choisie, à l’environnement d’exécution et au langage cible. Ainsi, on utilise cette représentation pour modéliser un package Ada, un composant CORBA, un active-X ou un Java Bean, une DLL ou une bibliothèque, etc.
Tout comme les classes et les cas d’utilisation, les composants peuvent être organisés en paquetages qui, dans ce cas, sont assimilés à des sous-systèmes logiciels. Chaque sous-système et chaque composant peut être représenté sur le diagramme de composants et caractérisé par une ou plusieurs interfaces qu’il met à la disposition des autres composants de l’architecture. UML permet de modéliser...
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 d’architecture
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