Vous êtes sur la page 1sur 29

UML

(UNIFIED MODELING
LANGUAGE)
P R É S E N T É PA R : D J E B B I K A W T H E R
1
DIAGRAMME DE
CL ASSE
P R É S E N T É PA R : D J E B B I K A W T H E R
2
DÉFINITION
• C’est un ensemble de classes en relation (association , généralisation,
dépendance…)
• Le diagramme de classe représente l’aspect donnée de la futur application.
• Le diagramme de classe est la version précèdent les table de la base donnée.
• En effet en appliquant les 5 règle de passage nous obtenons le schéma
relationnel de BD.

3
FORMALISME

4
LA CLASSE
• C’est la description d’un ensemble d’objet qui partagent les même attributs ,
les mêmes opérations et la même sémantique.
• Le nom de la classe peut être simple ou complet (précédé par le nom du
paquetage dans lequel il existe)
• Le nom est formé d’une chaine de caractère ( les chiffres les lettres les signes
de ponctuation sauf les deux point)
• Le nom par convention doit être court, et chaque première lettre de chaque
mot doit être écrite en majuscule.

5
L’ATTRIBUT
• L’attribut est une propriété de la classe qui décrit un ensemble de
valeurs que cette propriété peut avoir comme instance.

• Une classe peut avoir zéro ou plusieurs attributs.

• Par convention la première lettre de chaque mot qui compose


l’attribut doit être en majuscule et le reste en minuscule.

6
L’ATTRIBUT
• La forme la plus courte de l’attribut est le nom de l’attribut
• La forme la plus complexe est la suivante :

Visibilité Nom_Attribut Multiplicité : Type =Valeur Initiale

7
L’ATTRIBUT
•Visibilité:
Publique : « + » : l’attribut est visible par toutes les autres classes

Privé : « - »:l’attribut n’est accessible et visible que dans la classe

Protégé : « # »: l’attribut est accessible dans sa classe et dans les sous


classes.

8
L’ATTRIBUT

•Multiplicité:
Represente le nombre d’instance que peut avoir un attribut.
Exemple:
Adresse domaine
Adresse bureau de 1 à 3 instances adresse [1..3]
Adresse vacance

9
ATTRIBUT
•Type:
Peut être simple : caractère, entier, chaine, booleen, réel…

Ou bien complexe: un enregistrement, une classe…

10
ATTRIBUT
•Valeur Initiale:
C’est la valeur prise par défaut
En UML 0 ou NULL

11
ATTRIBUT DERIVE
• C’est un attribut qui peut être calculé à partir d’autres attributs de
la classe .
• Il est précédé toujours par « / »: barre oblique

12
ATTRIBUT ÉTENDU
• Il concerne plusieurs objets(instance de la classe)
• Dans C++ c’est un attribut statique.
• L’attribut statique doit toujours être souligné

13
OPERATIONS
• UML différencie une opération de la méthode ,la méthode est
l’implémentation de l’opération qui peut être désignée par un
algorithme ou par un code dans un langage de programmation .
• La forme la plus courte de l’opération est son nom
• La forme la plus complexe est la suivante

Visibilité Nom_Operation (Argument) : Type Valeur Retournée

(+ , - , #)
14
L’ARGUMENT
• L’argument a la forme suivante:

Direction NomArg : Type = ValeurInitiale

(In, Out, In/Out)

Exemple :
Créer (In numFact, In dateFact, In montant, In-Out caTotal)
15
OPÉRATION ÉTENDU
• Une opération peut être (statique) : étendu lorsqu'elle manipule
des attributs étendu.
• L’opération doit être soulignée.

16
RELATION ENTRE CLASSES
Parmi les relations existantes entre les classes :
• Association
• Généralisation(Héritage)
• Agrégation par référence (Agrégation)
• Agrégation par valeur (Composition)

17
ASSOCIATION
• L’association permet de lier les objets d’une classe à d’autres objets
d’autres classes
• L’association est le reflet des futurs relations entre les tables de la
base de donnée.
• L’association se transforme en clés étrangères, classes associatives
et permet de faciliter l’accès aux données garces aux requêtes.

18
ASSOCIATION
Nom de l’association :
• En général on utilise des verbes à l’infinitif pour éviter l’ambiguité .

19
ASSOCIATION
Cardinalité:

1 1
0..1 0..1
0..* 0..*
1..* 1..*
* *
2 2
[3,6] [3,6]

20
CLASSE ASSOCIATION
• Si une association est porteuse de donnée alors elle est modélisée par une
classe association:

21
AGRÉGATION

• Permet de montrer qu’une classe peut être composés d’autres


classes.
• La durée de vie de la classe composée ou celle des classes
composantes sont indépendant
• C’est-à-dire qu’on peut supprimer la classe composé sans
supprimer la classe composante ( on ne supprime que les liens)

22
AGRÉGATION
Lors qu’on élimine l’ordinateur les autres classes ne sont pas supprimées:

23
COMPOSITION

• La classe composante est comme un attribut de la classe composée


• Si cette dernière disparait , les classes composantes aussi.

24
COMPOSITION

25
GÉNÉRALISATION/SPÉCIALISATION
• C’est une relation entre classe générale appelé , SuperClasse, mère
ou parent,
• Et une autre classe spécifique appelée sous classe, fille , ou enfant.
• La classe fille peut hériter de tout ce que contient la classe mère et
peut avoir des attributs et des opérations spécifiques.
• Il existe deux types de généralisations:
 Simple: chaque fille a une seule mère
 Multiple: une fille peut avoir plusieurs mères

26
GÉNÉRALISATION/SPÉCIALISATION

Généralisation
Spécialisation

27
GÉNÉRALISATION/SPÉCIALISATION
• Entre les sous classes on peut avoir des contraintes tel que :
• {Complete} : Toutes les sous classes ont été identifiées, il est
impossible d’en ajouter.
• {Incomplete}: La liste n’est pas complète, on peut en ajouter
d’autres.
• {Chevauchement} : il est impossible d’avoir une instance commune
entre les sous classes
• {Overlapping} : Il est possible d’avoir une instance commune entre
les sous classes.
28
GÉNÉRALISATION/SPÉCIALISATION

{Complete,Chevauchement}

29

Vous aimerez peut-être aussi