École Nationale des Sciences Appliquées – BENI MELLAL
Troisième Année du Cycle Ingénieur
Filière : Transformation Digitale Industrielle
Module : Simulation des processus industrielle
UML : Diagramme de Classe et d’objet
Réalisé par : Encadré par :
ANBRI Khalid Professeur JOUAITI
TEMSAMANI Sohaib
Année Universitaire : 2023/2024
Plan
1 Introduction
2 UML
3 Diagramme de classe
4 Diagramme d’objet
5 Conclusion
2
Qu’est ce que l’UML ?
UML (Unified Modeling Language) est un langage de
modélisation graphique.
Il est conçu pour représenter, construire et documenter
des systèmes logiciels utilisant les techniques orientées
objet.
Il permet la création de plusieurs modèles d’un même
système, chacun privilégiant un aspect différent :
fonctionnel, dynamique, statique.
3
Qu’est ce que l’UML ?
avan
Il offre plusieurs niveaux d’abstraction qui simplifient la conception des
solutions.
Sa notation graphique est très adaptée à la conception orientée objet, et
sera beaucoup plus simple à manipuler que l’algorithmique classique.
Son côté visuel facilite également la comparaison et l’évaluation de
solutions.
C’est le résultat d’un large consensus et du travail d’experts reconnus.
UML est ainsi devenu un langage incontournable dans tout projet de taille
conséquente.
4
Diagrammes d’UML
types
Un diagramme d’UML est une représentation graphique,
qui s’intéresse à un aspect précis du modèle ; c’est une
perspective du modèle.
UML propose 13 types de diagramme que l’on peut classer
en trois catégories : diagrammes fonctionnels,
dynamiques et statiques.
Diagrammes fonctionnels (ou comportementaux).
1. Diagramme de cas d’utilisation.
2. Diagramme d’activités.
3. Diagramme d’états-transitions.
5
Diagrammes d’UML
Diagrammes dynamiques.
1. Diagramme de séquence.
2. Diagramme de collaboration.
3. Diagramme global d’interaction.
4. Diagramme de temps.
Diagrammes statiques.
1. Diagramme de classes.
2. Diagramme d’objets.
3. Diagramme de paquetage.
4. Diagramme de composants.
5. Diagramme de déploiement.
6. Diagramme de structure composite.
20:53 6
• Diagramme de
classes
7
Diagramme de classes (DCL)
But du diagramme de classes.
Le diagramme de cas d’utilisation montre un système du point
de vue des acteurs.
Le diagramme de classes va présenter la structure interne du
système.
Il donne une vue statique du système, en montrant les classes
et leurs relations entre elles.
L’aspect dynamique sera apporté par exemple par un
diagramme de séquence .
20:53 8
Diagramme de classes (DCL)
Classe/Classe d'objets :
Décrit un groupe d’objets ayant les mêmes propriétés et le même
comportement (même structure et même ensemble de méthodes)
afin d'en faciliter la gestion.
Représentation:
Exemple :
20:53 9
Diagramme de classes (DCL)
Approche classe / Objet
Objet : entité identifiable du monde réel pouvant avoir ou
pas une existence physique.
Un objet possède trois composantes :
1. Une identité.
2. Des variables définissant sont état (attributs).
3. Des sous programmes gérant son comportement (méthodes).
Exemple d’une classe et d’une de ses instances
20:53 10
Diagramme de classes (DCL)
Approche classe / Objet
Encapsulation : permet l’accès aux données uniquement via les méthodes.
Association : représente une relation entre plusieurs classes
Héritage : permet la classification, la généralisation et la spécialisation.
est un mécanisme de transmission des propriétés d’une classe (ses
attributs et méthodes) vers une sous-classe.
Une classe peut être spécialisée en d’autres classes, afin d’y ajouter des
caractéristiques spécifiques ou d’en adapter certaines.
Plusieurs classes peuvent être généralisées en une classe qui les factorise, afin
de regrouper les caractéristiques communes d’un ensemble de classes;
20:53 11
Diagramme de classes (DCL)
Approche classe / Objet
Agrégation : est une relation qui permet de décrire un
objet composite en terme d'objets qui le constituent.
Polymorphisme : est la capacité donnée à une même
opération de s’exécuter différemment suivant le contexte
de la classe où elle se trouve;
Exemple : exécution d’un calcul de salaire de deux sous-
classes spécialisées (une pour les cadres, l’autre pour les non-
cadres)
20:53 12
Diagramme de classes (DCL)
Représentation de la visibilité :
Public (+) : accès à partir de toute entité interne ou
externe à la classe
Protégé (#) : accès à partir de la classe ou des sous-classes
Privé (-) : accès à partir des opérations de la classe
Exemple:
20:53 13
Diagramme de classes (DCL)
Multiplicité : il est possible d’indiquer la multiplicité
d’un attribut, c’est à dire le nombre de valeurs que la
variable peut stocker.
Représentation : entre [ ].
Exemple:
20:53 14
Diagramme de classes (DCL)
Classe abstraite :
classe qui ne peut être instanciée, car elle contient des
méthodes abstraites, c’est à dire des méthodes non
implémentées.
Une classe abstraite sert essentiellement à factoriser des
méthodes et attributs communs à plusieurs classes, et ce
dans une relation d’héritage.
Représentation : On fait précéder les méthodes abstraites
par le stéréotype « abstract ».
20:53 15
Diagramme de classes (DCL)
Classes abstraites:
Interface : il s’agit d’une classe totalement abstraite,
c’est à dire d’une classe sans attributs qui ne contient que
des méthodes abstraites.
Son rôle est de regrouper un ensemble cohérent
d’opérations.
On utilise des interfaces pour classer les opérations en
catégories sans se soucier de leurs implémentations.
Représentations d’une interface
20:53 16
Diagramme de classes (DCL)
Relations entre classes
1. Association
2. Agrégation
3. Composition
4. Dépendance
5. Héritage
6. Interfaces
20:53 17
Diagramme de classes (DCL)
Association :
Une association est une relation sémantique durable entre deux
classes.
représente les liens qui existent entre les instances de ces
classes.
Chaque association peut être identifié par son nom
Exemple :
une personne peut travailler pour une entreprise. La relation
«travaille pour» est une association entre les classes «personne» et
«entreprise».
20:53 18
Diagramme de classes (DCL)
Agrégation :
est une association qui permet de représenter un lien de type « ensemble
» comprenant des « éléments »
est une association non symétrique : l’une des extrémités joue un rôle
prédominant par rapport à l’autre
Elle est possible d’utiliser une agrégation dans les cas suivants :
1. Lorsqu’une classe fait partie d’une autre classe ;
2. Lorsqu’une action sur une classe implique une action sur une autre classe;
3. Quand les objets d’une classe sont subordonnées aux objets d’une autre classe.
20:53 19
Diagramme de classes (DCL)
Agrégation particulière : Composition
Les cycles de vie du composite et de ses composants sont liés : la création ou la
destruction d’un composite implique celle de ses composants.
La suppression de la classe composé implique la suppression de la ou des
classes composant.
La valeur maximale de multiplicité du côté du conteneur ne doit pas excéder 1
puisque les objets, instances de la classe des composants, doivent tous
appartenir au même objet conteneur (Un élément ne peut appartenir qu’à un
seul composite).
20:53 20
Diagramme de classes (DCL)
Héritage :
relation de spécialisation/généralisation entre deux classes.
Elle indique qu’une classe dite classe fille spécialise une autre
classe dite classe mère, i.e. qu’elle possède les attributs et les
méthodes de la classe mère plus d’autres qui lui sont propres.
Représentation :
20:53 21
Diagramme de classes (DCL)
Héritage :
Les deux visions de l’héritage :
Spécialisation :
On étend les propriétés d’une classe à des sous-
classes plus spécifiques. Cela permet donc la
réutilisation de modèles déjà existants.
Généralisation :
On factorise les propriétés communes d’un ensemble
de classes dans une super-classe plus abstraite. Cela
permet de gagner en généricité.
20:53 22
Diagramme de classes (DCL)
Interfaces:
D’autres classes utiliseront l’interface pour réaliser leurs
opérations. On les dit classes clientes de l’interface.
C’est un lien de dépendance qui unit une classe cliente à
une interface, complété par le stéréotype « uses ».
Représentation :
20:53 23
Diagramme de classes (DCL)
But d’une interface
L’interface est utilisée pour diminuer le
couplage entre les classes car une classe
« cliente » qui utilise les services
spécifiés dans une interface n’a pas
besoin de connaître quelle classe «
serveur » implante réellement ce service
ni de quelle manière ces services sont
implantés.
20:53 24
Diagramme d’objets
20:53 25
Diagramme de objets (DOB)
Un diagramme d’objets représente des instances de
classes et leurs relations.
Il sert entre autres à illustrer le diagramme de classes
en montrant un exemple explicatif du modèle.
Il va permettre également de clarifier certaines
relations entre classes, en particulier les associations
réflexives et multiples.
20:53 26
Diagramme de objets (DOB)
Diagramme d’objets
20:53 27
Diagramme de objets (DOB)
Représentation d’objet en UML
Trois représentation possibles des instances :
Exemples :
20:53 28
Diagramme de objets (DOB)
Exemple : reconsidérons cette relation réflexive.
Un diagramme d’objets va permettre de mieux voir les liens
entre des instances de la classe Personne qui n’ont pas le
même rôle.
20:53 29
Diagramme de objets (DOB)
Exemple (suite) :
le diagramme d’objets correspondant.
20:53 30
Diagramme de objets (DOB)
Exemple (suite) :
20:53 31