Outil UML : Diagrammes de classes et de packages

Exemples de diagrammes de classes et de packages UML réalisés avec Modelio

Modelio supporte de manière exhaustive la notation des diagrammes de classes UML. Les diagrammes de classes sont les plus utilisés en UML. Ils représentent les notions d'un système (ou supportées par un système), avec leurs propriétés et leur relations. D'un point de vue "haut niveau" (conceptuel), les classes symbolisent les concepts supportés par un système, tandis que d'un point de vue "bas niveau" (physique), elles représentent les classes implémentées par un langage objet. Les exemples ci-dessous illustrent comment reproduire quelques systèmes basiques en utilisant les diagrammes de classes / packages.

Ce premier exemple présente une vue conceptuelle de la société humaine. C'est un usage classique des diagrammes de classes, où sont représentés des classes, des liens d'héritage (généralisations), des associations et une opération, et aussi des contraintes associées à des éléments de modèle.

uml-class-diagrams

Le diagramme suivant est un exemple plus complet de diagramme de classes, représentant le modèle conceptuel d’une agence de voyage.

Les attributs doivent être typés par des classes primitives (n'importe quelle classe peut être déclarée "primitive") ou des types de données (les data types).

Les types de données et les énumérations sont également représentés dans ce diagramme. Les propriétés typées par des classes complexes doivent être modélisées via des associations.

data_types

Cet exemple de diagramme présente un diagramme de classes plus orienté sur les aspects "conception". Il pourrait, par exemple, produire du code Java équivalent.

Dans cet exemple, sont présentées les notions d’interface, d'opération avec signature, et d’exception émise.

uml-class-diagram-interfaces

Ce diagramme propose une vue des composants, des ports, des parts, des interfaces requises et des interfaces fournies.

A partir de ces spécifications au niveau du "typage", il est possible de construire des modèles détaillés, présentant l’assemblage d’instances (parts) dans le contexte d’une classe "container".

uml-class-diagrams-typing

Le modèle présenté dans cet exemple montre que pour construire une session Vidéo, il est nécessaire de connecter (assembler) un PC à un projecteur vidéo via un port VGA, avant de les connecter par un "connecteur". Cette construction s’appelle la "structure interne" d’une classe.

uml-class-diagrams-vga

Cet exemple présente quelques cas complexes, où figurent des associations n-aire et des qualifiers sur des associations. Cela ajoute une précision utile aux associations pour des modèles plus précis.

uml-class-diagrams-associations

Dans cet exemple de diagramme de packages, un package peut être développé pour présenter son contenu, qui est composé non seulement des classes mais aussi d'une grande variété d’éléments, comme des processus (des activités), des acteurs, des packages, des interactions, ...

uml-package-diagrams

En UML2, une classe peut avoir plusieurs types de propriétés. Dans cet exemple, sont présentées une zône dédiée aux attributs d'une classe, une zône dédiée aux opérations, une zone dédiée aux parts, et enfin une zone dédiée aux éléments imbriqués, comme des classes, des acteurs, des activités, des interactions, ...

uml-class-diagrams-attributes