Introduction à la Conception OO
Introduction à la Conception OO
82
COO
83
1
16/10/2021
Objet
84
Objet: État
85
2
16/10/2021
Objet :Comportement
86
Objet : Identité
87
3
16/10/2021
Classe: Définition
88
Classe: Exemple
89
4
16/10/2021
Classe: Exemple
90
Classe: Exemple
91
5
16/10/2021
92
93
6
16/10/2021
94
95
7
16/10/2021
96
97
8
16/10/2021
98
• Exemple:
99
9
16/10/2021
100
101
10
16/10/2021
102
103
11
16/10/2021
104
105
12
16/10/2021
Exercice:
106
Corrigé
107
13
16/10/2021
108
• UML n’est pas une méthode dans la mesure où elle ne présente aucune
démarche. A ce titre UML est un formalisme de modélisation objet.
• UML n’est donc pas une méthode ou un processus; en raison de la
diversité des cas particuliers.
• UML propose un ensemble de notations pour que chacun ait à sa
disposition les éléments nécessaires à la conception d’une application.
• UML est donc un métalangage : il fournit les éléments permettant de
construire le modèle;
• les éléments de modélisation (les concepts manipulés par le langage),
• la sémantique de ces éléments (leur définition et le sens de leur utilisation).
109
14
16/10/2021
110
111
15
16/10/2021
112
113
16
16/10/2021
114
115
17
16/10/2021
116
117
18
16/10/2021
118
119
19
16/10/2021
Les diagrammes
120
Les diagrammes
121
20
16/10/2021
Les diagrammes
122
123
21
16/10/2021
124
125
22
16/10/2021
Notations UML
126
Notations UML
• Classeur:
• Un classeur est un élément de modèle qui est doté d’une identité, possède des
caractéristiques structurelles (attributs, participation à des relations) et
comportementales (opérations).
• Un classeur se représente par un rectangle, en traits pleins, contenant
éventuellement des compartiments.
• Les acteurs et les cas d'utilisation sont des classeurs.
127
23
16/10/2021
Notations UML
• Paquetage (package):
• Un paquetage est un regroupement d’éléments de modèle ou de diagrammes.
• Il permet ainsi d'organiser des éléments de modélisation en groupes. Il peut
contenir tout type d'élément de modèle : des classes, des cas d'utilisation, des
interfaces, des diagrammes… et même des paquetages imbriqués.
• Un paquetage se représente comme un dossier avec son nom inscrit dedans.
• Il est possible de représenter explicitement le contenu d'un paquetage: le nom
du paquetage est placé dans l'onglet.
128
Notations UML
• Paquetage (package):
• Les éléments contenus dans un paquetage doivent représenter un ensemble
fortement cohérent et sont généralement de même nature et de même niveau
sémantique.
• Tout élément n'appartient qu'à un seul paquetage.
• Les paquetages constituent un mécanisme de gestion important des problèmes
de grande taille.
• Ils permettent d'éviter les grands modèles plats et de cloisonner des éléments
constitutifs d'un système évoluant à des rythmes différents ou développés par
des équipes différentes.
129
24
16/10/2021
Notations UML
• Paquetage (package):
130
Notations UML
• Stéréotype:
• Annotation s’appliquant sur un élément de modèle
• Utilisation particulière d’éléments de modélisation avec interprétation
(sémantique) particulière
• Modification de la signification d’un élément
• Il est représenté par une chaîne de caractères entre guillemets (<< >>) dans, ou
à proximité du symbole de l'élément de modèle de base.
• Prédéfinis : actor, includes, use case, interface, include ... class Stéréotype par
défaut d’un classeur.
131
25
16/10/2021
Notations UML
• Stéréotype:
132
Notations UML
• Commentaires:
• Une note contient une information textuelle comme un commentaire, un corps
de méthode ou une contrainte.
• Elle est représentée par un rectangle dont l'angle supérieur droit est plié. Le
texte contenu dans le rectangle n'est pas contraint par UML.
• Une note n'indique pas explicitement le type d'élément qu'elle contient, toute
l'intelligibilité d'une note doit être contenue dans le texte même.
• On peut relier une note à l'élément qu'elle décrit grâce à une ligne en pointillés.
Si elle décrit plusieurs éléments, on dessine une ligne vers chacun d'entre eux.
133
26
16/10/2021
Notations UML
• Commentaires:
134
135
27
16/10/2021
Contexte
136
Contexte
137
28
16/10/2021
Définition
• Les cas d’utilisation (use cases) ont été formalisés par Ivar
Jacobson. Les cas d’utilisation décrivent, sous la forme
d’actions et de réactions, le comportement d’un système du
point de vue d’un utilisateur.
• Un cas d’utilisation est une manière spécifique d’utiliser un
système. C’est l’image d’une fonctionnalité du système,
déclenchée en réponse à la stimulation d’un acteur externe
138
Objectifs de UC
139
29
16/10/2021
Objectifs de UC
140
Définition
141
30
16/10/2021
142
143
31
16/10/2021
Composants: Acteur
144
Composants: Acteur
145
32
16/10/2021
Composants: Acteur
146
Composants: Acteur
147
33
16/10/2021
Composants: Acteur
148
Composants: Acteur
149
34
16/10/2021
Cas d’utilisation
150
151
35
16/10/2021
Exemple: Guichet
152
Exemple: Guichet
153
36
16/10/2021
Relations
154
Relations: Inclusion
155
37
16/10/2021
Relations: Inclusion
156
Relations: Extension
157
38
16/10/2021
Relations: Généralisation
158
Relations: Résumé
159
39
16/10/2021
Relations: Résumé
160
161
40
16/10/2021
162
163
41
16/10/2021
Exercice
• Dans un établissement scolaire, on désire gérer la réservation des salles
de cours ainsi que du matériel pédagogique (ordinateur portable ou/et
Vidéo projecteur). Seuls les enseignants sont habilités à effectuer des
réservations (sous réserve de disponibilité de la salle ou du matériel).
• Le planning des salles peut quant à lui être consulté par tout le monde
(enseignants et étudiants).
• Par contre, le récapitulatif horaire par enseignant (calculé à partir du
planning des salles) ne peut être consulté que par les enseignants.
• Enfin, il existe pour chaque formation un enseignant responsable qui
seul peut éditer le récapitulatif horaire pour l’ensemble de la formation
et il peut éventuellement le consulter aussi.
• Etablir le diagramme des uses cases pour les acteurs et opérations cités
ci-dessus
164
165
42
16/10/2021
Exercice
166
Solution
167
43
16/10/2021
Les scénarios
168
Les scénarios
• Les cas d’utilisation doivent être vus comme des classes dont les
instances sont les scénarios. Chaque fois qu’un acteur interagit avec le
système, le cas d’utilisation instancie un scénario; ce scénario correspond
au flot de messages échangés par les objets durant l’interaction
particulière qui correspond au scénario.
169
44
16/10/2021
170
171
45
16/10/2021
172
173
46