Vous êtes sur la page 1sur 40

Complément TD3

Autres Diagrammes d’UML

Complément TP3: Autres Diagrammes d’UML 1


Diagrammes d’objets et de classes
En pratique, les diagrammes d’objets et les
diagrammes de classes se construisent en
parallèle, par de nombreux allers et retours entre
les deux représentations. Il n’y a aucune raison de
définir les classes avant les objets. Il est vrai que
chaque objet est instance d’une classe, mais la
détermination de la classe peut bien être
postérieure à celle des objets. Le monde réel qui
nous entoure contient des objets et non des
classes: il semble donc naturel de trouver d’abord
les objets puis d’en extraire les classes.
Complément TP3: Autres Diagrammes d’UML 2
Exemple de correspondance entre classes et objets

Complément TP3: Autres Diagrammes d’UML 3


Les diagrammes d’objets
Les diagrammes d’objets, ou diagrammes
d’instances, montrent des objets et des liens.
Comme les diagrammes de classes, les
diagrammes d’objets représentent la structure
statique.
Les diagrammes d’objets s’utilisent
principalement pour montrer un contexte, par
exemple avant ou après une interaction, mais
également pour faciliter la compréhension des
structures complexes, comme les structures
récursives.
Complément TP3: Autres Diagrammes d’UML 4
Représentation des objets

L’objet « ObjetA » n’est pas classifié

L’objet « ObjetB » est instance de la classe « ClasseB »

L’objet « ClasseC » est une instance anonyme de la classe


«ClasseC»
Rational Rose n’affiche pas les stéréotypes de classe

Rational Rose ne permet pas la saisie de valeurs d’attributs


Les attributs peuvent être affichés avec la
fonction
Edit Compartment du menu contextuel des
objets

Complément TP3: Autres Diagrammes d’UML 5


Représentation des liens

Classe

Objets

Complément TP3: Autres Diagrammes d’UML 6


Les objets composites

Classes

Objets

Complément TP3: Autres Diagrammes d’UML 7


Similitudes avec les diagrammes de classes

Classes

Objets

Complément TP3: Autres Diagrammes d’UML 8


Les diagrammes de séquence
[PAM-97 p148] Les diagrammes de séquence
montrent des interactions entre objets selon un
point de vue temporel. Le contexte des objets n’est
pas représenté de manière explicite. La
représentation se concentre sur l’expression des
interactions.
Un diagramme de séquence représente une
interaction entre objets en insistant sur la
chronologie des envois de messages.

Complément TP3: Autres Diagrammes d’UML 9


1ère utilisation des diagrammes de séquence

Une première utilisation des


diagrammes de séquence correspond à
la documentation des cas d’utilisation.

Complément TP3: Autres Diagrammes d’UML 10


Exemple de D.Séquences

Complément TP3: Autres Diagrammes d’UML 11


Catégories d’envoi de messages
[PAM-97 p149] Les diagrammes de séquence distinguent
deux grandes catégories d’envoi de message:
– Les envois synchrones pour lesquels l’émetteur est bloqué et attend
que l’appelé ait fini de traiter le message.
– Les envois asynchrones pour lesquels l’émetteur n’est pas bloqué et
peut continuer son exécution.

Complément TP3: Autres Diagrammes d’UML 12


Les activations et envois de messages
Les diagrammes de séquence permettent de
représenter les périodes d’activité des objets. Une
période d’activité correspond au temps pendant
lequel un objet effectue une action, soit
directement, soit par l’intermédiaire d’un autre
objet qui lui sert de sous-traitant. Les périodes
d’activité se représentent par des bandes
rectangulaires placées sur les lignes de vie. Le
début et la fin d’une bande correspondent
respectivement au début et à la fin d’une période
d’activité.
Complément TP3: Autres Diagrammes d’UML 13
Représentation des interactions

1
2
3

Complément TP3: Autres Diagrammes d’UML 14


Les contraintes temporelles

Complément TP3: Autres Diagrammes d’UML 15


Exemple

Complément TP3: Autres Diagrammes d’UML 16


Contrôle centralisé

Diagramme de séquence avec un objet contrôleur chef d’orchestre

Complément TP3: Autres Diagrammes d’UML 17


Contrôle décentralisé

Diagramme de séquence avec délégation

Complément TP3: Autres Diagrammes d’UML 18


Pseudo-code
L’ajout de pseudo-code sur la partie gauche du
diagramme permet la représentation des boucles et des
branchements, de sorte que les diagrammes de séquence
peuvent représenter la forme générale d’une interaction,
au-delà de la seule prise en compte d’un scénario
particulier.

Complément TP3: Autres Diagrammes d’UML 19


Exemple

Complément TP3: Autres Diagrammes d’UML 20


Messages et opérations des classes

Utilisation des diagrammes de séquence:


• Documentation des cas d’utilisation
 Messages propres au diagramme
• Spécification technique
 Messages correspondants aux
opérations des classes

Complément TP3: Autres Diagrammes d’UML 21


Une approche objet réalise un cas
d’utilisation au moyen d’une collaboration
entre objets. Les scénarios, instances du cas
d’utilisation, sont représentés par des
diagrammes d’interaction (diagrammes de
collaboration et diagrammes de séquence).

Complément TP3: Autres Diagrammes d’UML 22


Les diagrammes de collaboration
[PAM-97 p139]Les diagrammes de collaboration
montrent des interactions entre objets, en insistant
plus particulièrement sur la structure spatiale
statique qui permet la mise en collaboration d’un
groupe d’objets. Les diagrammes de collaboration
expriment à la fois le contexte d’un groupe
d’objets (au travers des objets et des liens) et
l’interaction entre ces objets (par la
représentation de l’envoi de messages). Les
diagrammes de collaboration sont une extension
des diagrammes d’objet.
Complément TP3: Autres Diagrammes d’UML 23
Les envois de messages
UML utilise le terme de stimulis pour parler d’une
communication entre deux objets qui déclenche
l’invocation d’une opération, l’émission d’un
signal ou la création et destruction d’un objet

Complément TP3: Autres Diagrammes d’UML 24


Représentation des interactions
Les interactions comprennent principalement les
éléments suivants:
– Les instances
– Les liens
– Les messages
– Les rôles
Dans un diagramme de collaboration, le temps
n’est pas représenté de manière implicite, comme
dans un diagramme de séquence, de sorte que les
différents messages sont numérotés pour indiquer
l’ordre des envois.

Complément TP3: Autres Diagrammes d’UML 25


Exemple
Classes

Collaboration

Complément TP3: Autres Diagrammes d’UML 26


Syntaxe des messages
Le message, ses arguments et valeurs de retour, son rang au sein de
l’interaction, et diverses autres informations comme la
synchronisation sont précisés lors de l’envoi.

Résultat
Liste de valeurs retournées par le message
Nom du message
… Opération définie dans la classe de l’objet destinataire
Argument
Liste des paramètres du message

Complément TP3: Autres Diagrammes d’UML 27


Les diagrammes de composants
Les diagrammes de composants décrivent les
composants et leurs dépendances dans
l’environnement de réalisation. Les diagrammes de
composants sont des vues statiques de
l’implémentation des systèmes qui montrent les
choix de réalisation. En général, ils ne sont utilisés
que pour des systèmes complexes.

Complément TP3: Autres Diagrammes d’UML 28


Les composants
Un composant est un élément physique qui
représente une partie implémentée d’un système. Un
composant peut être du code (source, binaire ou
exécutable), un script, un fichier de commandes, un
fichier de données, une table, etc. Il peut réaliser un
ensemble d’interfaces qui définissent alors le
comportement offert à d’autres composants.
[BRJ-00 p376] Un composant est un élément
physique qui se conforme à un ensemble d’interfaces
et les réalise. Les interfaces font donc le lien entre le
modèle logique et le modèle physique.
Complément TP3: Autres Diagrammes d’UML 29
Exemple

Complément TP3: Autres Diagrammes d’UML 30


Composants et classes
[BRJ-00 p378] Différences entre composants et classes:
– Les classes représentent des abstractions logiques alors que
les composants représentent des abstractions physiques qui
existent dans le monde des bits.
– Les composants représentent le regroupement physique de ce
qu’on pourrait appeler des composants logiques et se situent
à un niveau d’abstraction différent.
– Les classes peuvent avoir directement des attributs et des
opérations. En général, les composants comportent
seulement des opérations que l’on peut atteindre uniquement
par leur interface.

Complément TP3: Autres Diagrammes d’UML 31


Stéréotypes
UML définit cinq stéréotypes standards qui
s’appliquent aux composants:
– « document »
– « exécutable »
– « fichier »
– « bibliothèque »
– « table »

Complément TP3: Autres Diagrammes d’UML 32


Les dépendances entre composants
Les relations de dépendance sont utilisées dans les
diagrammes de composants pour indiquer qu’un
élément d’implémentation d’un composant fait
appel aux services offerts par les éléments
d’implémentation d’un autre composant.

Complément TP3: Autres Diagrammes d’UML 33


Extension des stéréotypes de composants

Complément TP3: Autres Diagrammes d’UML 34


Stéréotype « Task … »

[PAM-97 p185] Les tâches correspondent à des


composants qui possèdent leur propre flot (thread en
anglais) de contrôle.

Complément TP3: Autres Diagrammes d’UML 35


Les diagrammes de déploiement
Les diagrammes de déploiement montrent la
disposition physique des différents matériels – les
nœuds – qui entrent dans la composition d’un système
et la répartition des instances de composants,
processus et objets qui « vivent » sur ces matériels.

[BRJ-00 p445] Les diagrammes de déploiement sont


une des deux sortes de diagrammes utilisés dans la
modélisation des aspects physiques d’un système
orienté objet. Un diagramme de déploiement montre
la configuration de nœuds de traitement en phase
d’exécution ainsi que les composants qui se trouvent
sur ces nœuds.
Complément TP3: Autres Diagrammes d’UML 36
Les noeuds

Chaque ressource matérielle est représentée


par un nœud. En général, cette ressource
possède au minimum de la mémoire et parfois
aussi des capacités de calcul. Un calculateur,
des ressources humaines ou des périphériques
sont des ressources modélisées par des nœuds.

Complément TP3: Autres Diagrammes d’UML 37


Nœuds et composants
[BRJ-00 p445] Par de nombreux aspects, les nœuds
ressemblent aux composants: ils ont tous deux un nom,
peuvent participer à des relations de dépendance, de
généralisation et d’association, peuvent être emboîtés,
avoir des instances et participer à des interactions.
Cependant, il existe des différences non négligeables entre
eux.
– Les composants sont des éléments qui participent à
l’exécution d’un système alors que les nœuds sont
des éléments qui exécutent les composants.
– Les composants représentent l’emballage physique
d’éléments logiques alors que les nœuds
représentent le déploiement physique des
composants.
Complément TP3: Autres Diagrammes d’UML 38
Exécution des composants par les noeuds

« support
»

Complément TP3: Autres Diagrammes d’UML 39


Les supports de communication
Les différents nœuds qui apparaissent dans le
diagramme de déploiement sont connectés entre
eux par des lignes qui symbolisent un support de
communication, à priori, bidirectionnel.

Complément TP3: Autres Diagrammes d’UML 40

Vous aimerez peut-être aussi