Uml Diagramme de Classes & Diagramme D'objets
Uml Diagramme de Classes & Diagramme D'objets
Uml Diagramme de Classes & Diagramme D'objets
&
DIAGRAMME D’OBJETS
L2ARS/SIL – 2011/2012
1
DIAGRAMME DE CLASSES
3
CLASSES
4
CARACTÉRISTIQUES D’UNE CLASSE
Visibilité
Public ou + :tout élément qui peut voir la classe courante peut également voir
l’élément indiqué
Protected ou # : seul un élément situé dans la classe courante ou un de ses
descendants peut voir l’élément indiqué.
Private ou – : seul un élément situé dans la classe courante peut voir
l’élément.
Package ou ~ ou rien : seul un élément déclaré dans le même paquetage peut
voir l’élément.
5
CARACTÉRISTIQUES D’UNE CLASSE
Nom de la classe
[ <Nom_du_paquetage_1>:: ... ::<Nom_du_paquetage_N> ]
<Nom_de_la_classe> [ { [abstract], [<auteur>], [<date>], ... } ]
Exemple : Pack1::Class1 {abstract, Dupond}
6
STÉRÉOTYPES D’UNE CLASSE
8
MÉTHODES
Décrit une fonctionnalité de la classe
Doit contenir un nom, un type de retour et des paramètres
A la forme :
<visibilité> <nom_méthode> ([<paramètre_1>, ...,
<paramètre_N>]) : [<type_renvoyé>] [{<propriétés>}]
Un paramètre a la forme :
[<direction>] <nom_paramètre>:<type>
['['<multiplicité>']'] [=<valeur_par_défaut>]
Exemple
+ déplacer (in distance : int = 2) : void {abstract}
9
MÉTHODES ABSTRAITES
10
MÉTHODES ABSTRAITES
Exemple
Dans la classe mère : void print( String message ); //sans implémentation
Pour les descendants : void print( String message )
{ … // implémentation }
11
INTERFACES
Type particulier de classes
Classe où toutes les méthodes sont abstraites
Stéréotype« interface »
Permet de regrouper un ensemble de propriétés
et d’opérations assurant un service cohérent
Doit être réalisée (implémentée) par au moins
une classe et peut l’être par plusieurs
Stéréotype« realize»
Une classe peut dépendre d’une interface
Stéréotype« use »
12
RELATION D’ASSOCIATION
Relation entre deux classes ou plus décrivant les
connexions structurelles entre leurs instances
Relie des classes au même niveau hiérarchique
4 décorations permettent de spécifier le lien entre objets :
Nom: nature des relations entre les objets
Direction : direction d’application dunom
Rôle: rôle spécifique de chacune des classes
dans l’association
Cardinalité : nombre d’éléments affectés
Exemple
13
RELATIONS D’AGRÉGATION ET DE COMPOSITION
Agrégation
Définit une relation hiérarchique entre les entités
Définit la relation : « se compose de » et modélise la notion de «
possession » ou de « tout et partie »
Composition
Définit une contenance structurelle entre les instances
La destruction de l’objet composite implique la
destruction de ses composants
Une instance du composant appartient au plus à une instance
du composite
Agrégation Composition 14
RELATION DE DÉPENDANCE
La dépendance établit une relation d’utilisation entre 2 entités d’un même
diagramme.
La plupart du temps il s’agit d’une dépendance d’utilisation :
Argument d’une méthode par exemple
On parle alors de “relation d’utilisation”
Cela permet d’identifier implications possibles des modifications à
apporter dans une entité
Changement du comportement d’une des classes par exemple
Dépendance
15
RELATION DE GÉNÉRALISATION
Modélise la relation d’héritage
La généralisation correspond à la notion “est une sorte de”
Modélisation des relations parents / enfants
Les entités issues d’une généralisation sont utilisables
partout ou leur classe mère peut l'être (mais pas l’inverse)
Généralisation (classe, classe) ou (classe, interface)
Cette relation est modélisée par une flèche pointant sur la
classe mère
16
CLASSE-ASSOCIATION
Une association peut avoir des propriétés, qui ne sont
disponibles dans aucune des classes qu’elle lie
On définit alors une classe-association
Personne Entreprise
employé employeur
Poste
salaire: float
17
ASSOCIATION N-AIRE
Association qui lie plus que 2 classes
Peu utilisée
Gestiondes multiplicités délicate
Etudiant Enseignant
Module
18
LES NOTES (COMMENTAIRES)
Lors des phases de modélisation et
de spécification, il est nécessaire de
documenter ses modèles :
Contraintes matérielles
Contraintes de performance
Choixtechniques réalisés
Référencesà d’autres docs
Explications techniques,etc.
En UML, on utilise les Notes
19
EXEMPLE : BANQUE
20
DIAGRAMME D’OBJETS
Représente des objets (i.e. instances de classes) et leurs liens (i.e. instances
de relations) pour donner une vue figée de l’état d’un système à un instant
donné
Peut être utilisé pour
illustrer le modèle de classes en montrant un exemple qui explique le modèle
préciser certains aspects du système en mettant en évidence des détails
imperceptibles dans le diagramme de classes
exprimer une exception en modélisant des cas particuliers ou des connaissances
non généralisables qui ne sont pas modélisés dans un diagramme de classe
Le diagramme de classes modélise les règles et le diagramme
d’objets modélise des faits
21
GRAPHIQUEMENT
Un objet est représenté comme une classe, mais le
compartiment des méthodes n’est pas indiqué
Le nom de l’objet est composé du nom de l’instance,
suivi de celui de la classe, et est souligné
Les attributs reçoivent des valeurs
Si certaines valeurs ne sont pas renseignées, l’objet est
partiellement défini
La relation de généralisation n’est jamais représentée
Les multiplicités ne sont pas représentées
On peut représenter la dépendance d’instanciation
Stéréotype « instance of »
22
EXEMPLES
23
EXERCICE INTÉGRÉ 1 (HÔTEL)
Un hôtel est composé d’au moins deux chambres.
Chaque chambre dispose d’une salle d’eau qui peut être
une douche ou une salle de bain. L’hôtel héberge des
personnes. Il peut employer du personnel et est dirigé
par un des employés. L’hôtel a les caractéristiques sui-
vantes : une adresse, le nombre de pièces, la catégorie.
Une chambre est caractérisée par le nombre et le type
de lits, le prix et le numéro. On peut calculer le chiffre
d’affaires, le loyer en fonction des occupants.
Donnez le diagramme de classes.
24
EXERCICE INTÉGRÉ 2 (BIBLIOTHÈQUE)
Une bibliothèque compte les exemplaires des
titres suivants parmi les livres dont elle dispose :
« Histoire de la 2ème guerre mondiale », « Les
Aventures de Robin Hood », et deux exemplaires
de « Harry Potter».
Felix et Alain sont des utilisateurs abonnés.Alain
a emprunté «Les Aventures de Robin Hood»
tandis que Felix a emprunté deux livres: «
Histoire de la 2ème guerre mondiale » et un
exemplaire de « Harry Potter ».
Représenter le diagramme de classes et le
diagramme d’objets modélisant ce cas de figure.
25