Académique Documents
Professionnel Documents
Culture Documents
• Diagramme de classes :
• Il Donne la représentation statique du système à
développer, en intégrant dans chaque classe :
• La partie dédiée aux données
• Et celles consacrée aux traitements
• Cette représentation est centrée sur le concept
de classes et d’association entre classes,
• C’est le diagramme pivot de l’ensemble de la
modélisation d’un système.
UML : Diagrammes d’UML
• La description du diagramme de classe
est présentée en 3 points :
• Le concept d’objet,
• Le concept de classe comprenant les
attributs et les opérations,
• Les différents types d’association
entre classes.
UML : Diagrammes d’UML
• Formalisme général d’une classe :
Une classe se représente à l’aide d’un
rectangle comportant plusieurs
compartiments de base qui sont :
• La désignation de l’objet,
• La désignation des attributs,
• La désignation des opérations
Diagrammes d’UML / DCL
• Formalisme général d’une classe :
Nom de la classe
Attributs
Opérations
Diagrammes d’UML / DCL
• Formalisme général d’une classe :
• Attributs :
• Nom d’attribut : nom unique dans sa classe,
• Type : type de l’attribut
(entier, chaîne de caractères…),
• Valeur initiale : facultative,
• {propriétés} : valeurs étiquetées facultatives
exemple :
« interdit » pour mise-à-jour interdite)
Diagrammes d’UML / DCL
• Formalisme général d’une classe :
• Opérations :
• Nom de l’opération : le nom de l’opération (texte)
• Paramètres : liste des paramètres,
• Type résultat : type de(s) valeur(s) retournée(s)
,si pas de retour exemple : en C++ « void »
• {propriétés} : valeurs facultatives applicables.
exemple : {query} pour un comportement sans
influence sur l’état du système.
Diagrammes d’UML / DCL
• Formalisme général d’une classe :
Voiture « véhicule »
Marque : texte
Puissance : entier
Cylindrée : entier
Année : entier
/ancienneté : entier
Démarrer()
Rouler()
Freiner()
Arrêter()
Diagrammes d’UML / DCL
• Visibilité des attributs et opérations :
• Public (+) :
attribut ou opération visible par tous,
• Protégé (#) :
attribut ou opération visible uniquement à l’intérieur
de la classe et pour toutes les sous-classes de la classe,
• Privé (-) :
attribut ou opération seulement visible à l’intérieur de
la classe
Diagrammes d’UML / DCL
• Visibilité des attributs et opérations :
exemple (Symboles de visibilité)
Voiture
+ Marque
+ Puissance
+ Cylindrée
# Année
- Chiffre d’affaire
# Démarrer()
# Rouler()
# Freiner()
# Arrêter()
Diagrammes d’UML / DCL
• Attribut ou opération de niveau classe :
• Un attribut qui est une constante pour toutes
les instances d’une classe,
• Une opération Créer() qui peut être définie au
niveau de la classe et applicable à la classe même.
Diagrammes d’UML / DCL
• Attribut ou opération de niveau classe :
c’est le soulignement qui caractérise cette
propriété
Voiture
+ Marque
+ Puissance
+ Cylindrée
# Année
-Chiffre d’affaire
# ristourne
-Créer ()
-# Démarrer()
# Rouler()
# Freiner()
# Arrêter()
Diagrammes d’UML / DCL
• Associations entre classes :
• Un lien est une connexion physique ou
conceptuelle entre instances de classes donc
entre objets,
• Une association décrit un groupe de liens ayant
une même structure et une même sémantique,
• Un lien est une instance d’une association,
• Chaque association peut être identifiée par son
nom,
Diagrammes d’UML / DCL
• Associations entre classes : Formalisme & Exemple
Opérations Opérations
Personne Voiture
Possède
Diagrammes d’UML / DCL
• Rôle d’association :
•Le rôle tenu par une classe vis-à-vis d’une
association peut être précisé sur l’association,
• Voici un exemple de rôle d’association :
Personne Entreprise
Opérations Opérations
Diagrammes d’UML / DCL
• Multiplicité :
• La multiplicité indique un domaine de
valeur pour les cardinalités entre classes et
association,
• La multiplicité est utilisé aussi pour un
attribut multi value
Diagrammes d’UML / DCL
• Multiplicité :
• Le domaine de valeur est décrit :
• un intervalle fermé : 2, 3…15,
• des valeurs définies : 3, 5, 8,
• une valeur indéterminée notée * : 1.. *
Diagrammes d’UML / DCL
• Multiplicité :
• Dans le cas de multiplicité
d’associations, il faut indiquer les
valeurs minimales et maximales
d’instances d’une classe vis-à-vis
d’une instance d’une autre classe.
• 0..* peut être noté seulement avec *
Diagrammes d’UML / DCL
• Multiplicité : Exemples
• A une instance de A correspond 0 ou 1
instance de B
• A une instance de B correspond 0 à un
nombre non déterminé d’instances de A.
* 0, 1
A B
Diagrammes d’UML / DCL
• Multiplicité : Exemples
• A une instance de A correspond 1 à un
nombre non déterminé d’instances de B
• A une instance de B correspond 2 à 10
instances de A.
2..10 1.. *
A B
Diagrammes d’UML / DCL
• Multiplicité : Exemples
• A une instance de A correspond 2 à 4
instances de B
• A une instance de B correspond 1 ou 3
instances de A.
1, 3 2..4
A B
Diagrammes d’UML / DCL
• Propriétés particulières d’une association :
• Ordre de tri : pour une association de
multiplicité > 1, les liens peuvent être non
ordonné (par défaut) ou ordonnés : (1 contrainte)
Personne Entreprise
Code Numéro
Déplacer() 1.. * Donne accès à 1
Ouvrir()
Contrôler()
Fermer()
«Réalise» «utilise»
Indique la
classe qui «interface»
réalise Autorisation
l’interface
Ouvrir()
Diagrammes d’UML / DCL
• Classe paramétrable :
• Une classe paramétrable
représente un modèle d’une
famille de classes qui peut générer
des classes suivant les valeurs
prises par des paramètres.
Diagrammes d’UML / DCL
• Classe paramétrable : Exemple
Affectation
classe
Date début association
Date fin
Diagrammes d’UML / DCL
• Agrégation entre classes :
• L’agrégation
est une association
qui permet de représenter un lien
de type «ensemble» comprenant
des «éléments»,
Diagrammes d’UML / DCL
• Agrégation entre classes :
•Il s’agit d’une relation entre
•une classe représentant le
niveau «ensemble» et
•1 à n classes de niveau
«éléments »,
Diagrammes d’UML / DCL
• Agrégation entre classes :
• L’agrégation modélise un lien
structurel entre une classe et une
ou plusieurs autres classes.
Diagrammes d’UML / DCL
• Agrégation entre classes : Formalisme
Classe 1
Classe 2
Diagrammes d’UML / DCL
• Agrégation entre classes : Exemple
Ordinateur
Puissance
Marque
1 1 1
U.C. Clavier Ecran
Diagrammes d’UML / DCL
• Composition entre classes : Formalisme
Classe 1
«Classe composé»
Classe 2
«Classe composant»
Diagrammes d’UML / DCL
• Relation de composition entre classes : Exemple
• 1ère forme :
Commande
1 1.. *
Entête Lignes Commandes
Diagrammes d’UML / DCL
• Relation de composition entre classes : Exemple
• 2ème forme :
Commande
Entête 1
1 1 Fichier
Répertoire
Nom de fichier
Diagrammes d’UML / DCL
• Généralisation, Spécialisation et héritage
simple :
• La généralisation est la relation entre une
classe et deux autres classes ou plus
partageant un sous-ensemble commun
d’attributs et / ou d’opérations,
Diagrammes d’UML / DCL
• Généralisation, Spécialisation et héritage
simple :
•La classe qui est affinée s’appelle
superclasse,
•Les classes affinées s’appellent sous-classes,
Diagrammes d’UML / DCL
• Généralisation, Spécialisation et héritage
simple :
•L’opération qui consiste à créer une
superclasse à partir de classes s’appelle la
généralisation (inversement la spécialisation
consiste à créer des sous-classes à partir
d’une classe),
Diagrammes d’UML / DCL
• Généralisation, Spécialisation et héritage
simple :
• Les attributs et opérations d’une
superclasse sont transmis aux sous-classes
par héritage.
Diagrammes d’UML / DCL
• Généralisation, Spécialisation et héritage simple :
• Formalisme & Exemple :
Spécialisation Généralisation
Classe A
Sous-classe Sous-classe
A1 A2
Diagrammes d’UML / DCL
• Généralisation, Spécialisation et héritage
simple : Exemple
• La sous-classe A1 hérite de A, c’est une
spécialisation de A,
• La sous-classe A2 hérite de A, c’est
une spécialisation de A
Diagrammes d’UML / DCL
• Généralisation, Spécialisation et héritage
simple :
• La sous-classe hérite
• Des attributs et
• Opérations de la classe dont elle
dépend,
Diagrammes d’UML / DCL
• Généralisation, Spécialisation et héritage
simple :
• Un discriminant peut être utilisé pour
exploiter le critère de spécialisation entre
une classe et ses sous-classes,
Diagrammes d’UML / DCL
• Généralisation, Spécialisation et héritage
simple :
• Le discriminant est simplement indiqué sur
le schéma,
Puisque les valeurs prises par ce
discriminant correspondent à chaque sous-
classe.
Diagrammes d’UML / DCL
• Généralisation, Spécialisation et héritage simple :
• Exemple :
Employé
Nom
Prénom
Date naissance
Calculer âge()
{chevauchement}
Etudiant Employé
Université Entreprise
Diagrammes d’UML / DCL
• Extension et restriction de classe :
• En général, il y a 4 cas :
• L’ajout de propriétés dans une sous-
classe correspond à une extension de
classe,
• Le masquage de propriétés dans une
sous-classe correspond à une restriction
de classe.
Diagrammes d’UML / DCL
• Héritage avec Extension et restriction de propriétés :
• Exemple : Classe A1
Nom
Prénom
Âge
créer
Classe A1 Classe A2
Nom
Prénom Nom
Âge extension âge
sexe
restriction
créer
créer
Diagrammes d’UML / DCL
• Héritage multiple :
• Dans certains cas, il est nécessaire de faire
hériter une même classe de deux classes
parentes distinctes,
• ce cas correspond à un héritage multiple.
Diagrammes d’UML / DCL
• Héritage multiple :
• Exemple : Véhicule