La Notation UML Full
La Notation UML Full
Qu'est-ce qu'UML ?
UML = Unified Modeling Language ;
UML = Langage unifié pour la modélisation objet ;
UML est un langage universel de modélisation objet ;
UML est une notation, un outil de communication
La notation UML visuelle (diagrammes) ;
UML est un langage de modélisation des applications
construites à l'aide d'objets ;
UML n’est pas une méthode ;
UML n'est pas un langage de programmation ;
UML n'est pas un processus de développement ;
UML est une norme maintenue par l'OMG.
RAZAFIMAHATRATRA Hajarisena
Docteur en Informatique Année : 2023
2
3 4
5 6
1
ENI - L3
7 8
9 10
11 12
2
ENI - L3
15 16
DIAGRAMMES DIAGRAMMES
COMPORTEMENTAUX COMPORTEMENTAUX
DIAGRAMME DES CAS D'UTILISATION
3
ENI - L3
19 20
Comment identifier les acteurs ? Matériel : entité matérielle qui exploite les données du système ou
qui est piloté par le système (imprimante, robots, automates,…) ;
Qui ont besoins le système pour réaliser le travail ?
Qui vont exécuter les fonctions principales du système
(maintenance et administration) ? Logiciel : entité logicielle existante et fonctionnelle qui communique
avec le système grâce à une interface logicielle (application de gestion,
Est-ce que le système interagit avec le matériel ou autre système ? base de données,…).
…
Du point de vue système :
Les acteurs principaux : pour lesquels l’objectif du cas d’utilisation est
essentiel ;
Les acteurs secondaires : interagissent avec le cas d’utilisation mais
dont l’objectif n’est pas essentiel.
21 22
23 24
4
ENI - L3
25 26
27 28
29 30
5
ENI - L3
Chaque cas d’utilisation doit être décrit en détail ; Les variantes possibles et les cas d’erreurs ;
Les exigences non fonctionnelles.
Commencer par les cas d’utilisation prioritaires.
31 32
33 34
6
ENI - L3
Vision complète:
Représenter un maximum de choses;
En respectant et en utilisant la notation choisie.
Utile en phase d'analyse, de conception et de test. Un objet sans nom d'une classe spécifiée.
39 40
41 42
7
ENI - L3
Message (2/5)
Message (1/5) Message synchrone : l’objet émetteur reste bloqué le temps lorsque l’objet
récepteur traite le message envoyé ;
Généralement un appel, un signal ou une
réponse ; Message asynchrone : l’objet émetteur n’est pas bloqué lorsque l’objet
récepteur traite le message envoyé ;
43 44
45 46
47 48
8
ENI - L3
49 50
51 52
53 54
9
ENI - L3
55 56
57 58
59 60
10
ENI - L3
61 62
63
11
ENI - L3
Bien préciser:
l’acteur qui déclenche le scénario;
le résultat observable de l’exécution du cas d’utilisation.
NB:
Ne pas confondre le cas d’utilisation / diagramme de séquence;
Cohérence diagramme de classe / diagramme de séquence.
70
71 72
12
ENI - L3
Diagramme de séquence
Exemple d’un diagramme
et
de communication du système
Diagramme de communication (3/3)
73 74
75
77 78
13
ENI - L3
Activité : Exemple :
une opération d’une certaine durée qui peut être interrompue ;
être associée à un état d’un objet ;
peut être exécutées dans un état (ex : activité2).
79 80
Evénement Transition
Un fait survenu qui déclenche une transition ;
Types d’événements :
Réponse
d’un objet à l’occurrence d’un
Type appel de méthode (call) – C’est le type d’évènement qui représente la réception de
l'appel d'une opération par un objet. Les événements d'appel sont des méthodes déclarées au
évènement ;
niveau du diagramme de classes ;
Type changement de valeur (vrai/faux) – C’est le cas de l’évaluation d’une expression Syntaxe d’une
transition :
booléenne ;
événement[garde]/action
Type écoulement du temps – C’est un événement lié à une condition de type after (durée) ou
when (date).
81 82
Point de jonction
Point de choix
Permet de décomposer une transition en Se comporte comme un test de type : si
deux parties en indiquant si nécessaire les condition faire action1 sinon faire action2.
gardes propres à chaque segment de la
transition.
83 84
14
ENI - L3
85 86
87 88
Conseil DIAGRAMMES
Cohérence entre la classe et le diagramme
COMPORTEMENTAUX
DIAGRAMME D’ACTIVITÉS
d’états-transitions.
15
ENI - L3
Permet de représenter le
comportement interne d’un cas
d’utilisation ou processus ;
Représente le déroulement des
traitements en les regroupant dans
des étapes appelées « Activité » ;
93 94
95 96
16
ENI - L3
97 98
99
17
ENI - L3
103 104
106
Représentations Concepts
Deux représentations graphiques possibles : Concepts représentés :
représentation « en escalier » ; la ligne de vie ;
représentation linéaire. l’évènement ;
l’état ;
la contrainte de durée.
107 108
18
ENI - L3
109 110
DIAGRAMMES DIAGRAMMES
STRUCTURELS STRUCTURELS
DIAGRAMME DE CLASSES
113 114
19
ENI - L3
115 116
Association, multiplicité,
Classe, attribut et opération (6/6)
navigabilité et contraintes (1/6)
Visibilité des attributs et opérations : Association:
Public(+):Attribut ou opération visible par tous Représenter les liens existant entre les instances des classes ;
Privé(-):Attribut ou opération seulement visible à l’intérieur Porter un nom (signification).
de la classe.
Protégé(#): Attribut ou opération visible seulement à
l’intérieur de la classe et pour toutes les sous-classes de la classe
Paquetage(~):Attribut ou opération ou classe seulement
visible à l’intérieur du paquetage où se trouve la classe.
119 120
20
ENI - L3
1 un et un seul
0 .. 1 zéro ou un
M .. N de M à N (entiers naturels)
* de zéro à plusieurs
0 .. *
1 .. * de un à plusieurs
N exactement N (entier naturel)
121 122
123 124
Association, multiplicité,
Association réflexive
navigabilité et contraintes (6/6)
Contraintes :
Définit les liens entre des objets d’une
Ordre de tri (multiplicité supérieure à 1) : même classe.
non ordonnés (valeur par défaut),
ordonnés ou triés lorsque l’on est au niveau de
l’implémentation (tri sur une valeur interne).
125 126
21
ENI - L3
127 128
129 130
131 132
22
ENI - L3
incluses dans une autre sous-classe de la même classe ;
{complète}: la généralisation ne peut pas être étendue ; super-classes.
{incomplète}: la généralisation peut être étendue.
133 134
135 136
Association qualifiée,
dépendance et classe d’interface (3/3) Quelques stéréotypes et mots-clés
Classe d’interface :
Décrire la vue externe d’une classe ; « Classe d’implémentation » : ce
Classe sans compartiment des attributs ;
Comporte la liste des opérations accessibles par les autres classes ;
stéréotype est utilisé pour décrire des classes de
niveau physique.
Se note avec le stéréotype <<interface>> ou avec un rond.
137
23
ENI - L3
139 140
Conseils DIAGRAMMES
Ne pas confondre classe et acteur; STRUCTURELS
Relation 1-1 possible mais à justifier; DIAGRAMME D'OBJETS
Une classe doit:
Correspondre à une seule responsabilité;
Représenter une abstraction pertinente;
Etre bien nommée;
Etre complètement décrite à un endroit du
document;
Ensemble d'objets respectant les contraintes Syntaxe d’un objet (comme dans le diagramme de séquence et le
diagramme de communication) :
du diagramme de classes : nomObjet : NomClasse
143 144
24
ENI - L3
145 146
147 148
Diagramme de classes
Liens (4/4) et
Les objets composés de sous-objets peuvent être représentés au Diagramme d'objets
moyen d'un objet composite.
149 150
25
ENI - L3
151
153 154
Exemple DIAGRAMMES
STRUCTURELS
DIAGRAMME DE COMPOSANTS
155
26
ENI - L3
Caractérisé par :
un nom ;
un port de connexion ;
une spécification externe sous forme soit d’une ou plusieurs
interfaces requises, soit d’une ou plusieurs interfaces fournies.
157 158
159 160
161 162
27
ENI - L3
Exemple
Connecteur de délégation
d’un diagramme de composants
L'interface fournie d'un composant peut
être réalisée par l'une de ses parties
internes ;
Son interface requise peut être imposée
par l'une de ses parties ;
Les connecteurs de délégation montrent
que ces parties internes réalisent ou
utilisent les interfaces du composant,
pouvant être stéréotypé « delegate ».
163 164
166
167 168
28
ENI - L3
Exemple
DIAGRAMMES
d’un diagramme de déploiement
STRUCTURELS
DIAGRAMME DE PAQUETAGES
169
Paquetage
Diagramme de paquetages…? Elément de modélisation qui contient d'autres éléments de modélisation : des
classes, des interfaces, des composants, des nœuds, des cas d’utilisation, des
diagrammes, d’autres paquetages… ;
Nouveau diagramme d’UML 2.x ; Possible de ne pas représenter tous les éléments contenus ;
Représenter la structure hiérarchique et Peut importer les éléments d’un autre paquetage ;
modulaire ; Peut-être fusionné avec un autre paquetage ;
Elément peut avoir une visibilité déclarée soit de type public(+) soit
Permet de regrouper les éléments de privé(-).
modélisation.
171 172
173 174
29
ENI - L3
175 176
177 178
179
30
ENI - L3
Critères de sélection
Outils UML
des outils UML
Respect des normes UML ; ArgoUML
Plateforme supportés ; BOUML
Stabilité; Enterprise Architect
Exhaustivité des diagrammes ; Modelio
Correspondance relationnel ;
Objecteering
Licence ;
Code source ouverte ;
Open ModelSphere
Génération de code ; Poseidon
Rétro-ingénierie; Rational Rose
Format de documentation ; StarUML
Gestion de configuration ; Visual Paradigm for UML
Gestion de tests ; WinDesign Module OBJECT
Intégration IDE. …
181 182
Bibliographie
Fien VAN DER HEYDE et Laurent DEBRAUWER (2008). UML 2 : Initiation,
exemples et exercices corrigés (2ième édition). Saint-Herblain : Editions ENI.
Hugues M., Jean-Pierre S. et Gilles M. Règles de cohérence UML 2.0 (Version
1.1).
James R., Ivar J. et Grady B. (2004). The Unified Modeling Language - Reference
Manual (2e ed.). Canada : Addison Wesley.
Bibliographie et webographie
Joseph Gabay et David Gabay (2008). UML 2 : Analyse et Conception - Mise en
œuvre guidée avec études de cas. Paris : Dunod.
OMG (2003). UML 2.0 Superstructure Specification.
Pascal Roques (2008). Les Cahiers du Programmeur : UML 2 - Modéliser une
application web (4ème édition). France : Editions Eyrolles.
Pascal Roques et Franck Vallée (2007). UML 2 en action - De l’analyse des
besoins à la conception (4ème éd.). France : Editions Eyrolles.
Pierre-Alain Muller et Nathalie Gaertner (2004). Modélisation objet avec UML.
France : Editions Eyrolles.
Pierre-Allain Muller (1997). Modélisation objet avec UML. France : Editions
Eyrolles.
184
Webographie
http://bdd.crzt.fr/mod/prs/co/modUE04.ht
ml?mode=html
http://uml.free.fr/
http://www.omg.org/
http://www.uml-diagrams.org
https://openclassrooms.com
https://www.ibm.com
www.agilemodeling.com/essays/umlDiagra
ms.htm
185
31