0% ont trouvé ce document utile (0 vote)
22 vues16 pages

Chapitre 6

Transféré par

imene hamitouche
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
22 vues16 pages

Chapitre 6

Transféré par

imene hamitouche
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

23/12/2023

Université d’Alger 1-Ben Youcef Ben Khedda


Faculté des Sciences
Département d’Informatique

A. Benghalia

4) Diagramme de classes - vue statique-

1
23/12/2023

Introduction

• En UML, le modèle structurel ou statique d’un système est décrit


à l'aide de :
− Diagrammes de classes (description de tout ou d'une partie du
système d'une manière abstraite en termes de classes et de
relations).
− Diagrammes d'objets (description d'exemples de configuration
de tout ou partie du système, en termes d'objets, de valeurs et de
liens).

Introduction

• Les diagrammes de cas d'utilisation modélisent à QUOI sert le


système.
• Le système est composé d'objets qui interagissent entre eux et
avec les acteurs pour réaliser ces cas d'utilisation.
• Les diagrammes de classe permettent de spécifier la structure et
les liens entre les objets dont le système est composé.

2
23/12/2023

Définition d’une classe

• Une classe est la description d'un ensemble d'objets ayant une


sémantique, des attributs, des méthodes et des relations en commun.
• Elle spécifie l'ensemble des caractéristiques qui composent des
objets de même type.
• Une classe est composée d'un nom, d'attributs et d'opérations.
• Selon l'avancement de la modélisation ces informations ne sont pas
forcément toutes connues.

Diagramme de classe
Intérêt
• Le diagramme de classes est considéré comme le plus important de
la modélisation orientée objet. Il est le seul obligatoire lors d’une
telle modélisation. Il permet de:
 Définir les futures composantes du système final.
 Structurer le travail de développement de manière très efficace.
 Séparer les composantes de manière à pouvoir répartir le travail
de développement entre les membres (développeurs), dans le
cas de travaux réalisés en groupe (surtout dans les milieux
industriels).

3
23/12/2023

Notion de classe

• La notion de classe est essentielle en programmation


orientée objet : elle définit une abstraction, un type
abstrait qui permettra plus tard d’instancier des objets.
• On distingue généralement des classes abstraites (qui ne
peuvent pas être instanciées) et des classes "normales",
qui servent à définir des objets.
• La classe intègre les concepts de type (en tant que
«moule à instances »)

NOTATION :

• Tout nom de classe commence par une majuscule


•Une classe est un classeur représenté par un rectangle divisé en trois
compartiments.
NomAttribut : type = ValeurInitiale
NomOpération(ListeArguments) : typeRetour

NomClasse

4
23/12/2023

Attribut
• Les attributs définissent les propriétés des objets de la classe.
• Un attribut est défini par un nom, un type de données, une
visibilité et peut être initialisé. Le nom de l’attribut doit être
unique dans la classe.
• Les attributs représentent les données encapsulées dans les
objets de cette classe.
• La syntaxe d'un attribut est la suivante :
• Visibilité nomAttribut [multiplicité] : typeAttribut = Initialisatio
n;
9

Exemple

10

5
23/12/2023

Méthode

• Une méthode ou opération est un service qu’une instance d’une classe


peut exécuter. Elle doit être unique. La notion de visibilité est la même
que celle des attributs.
 Opération : effectuée par l’objet
 Méthode : effectuée par la classe

• Sa syntaxe est la suivante :


Visibilité nomFonction(directionParamètreN nomParamètreN : type
ParamètreN) : typeRetour

11

Classe abstraite

• une classe abstraite est une classe dont l'implémentation n'est pas
complète et qui n'est pas instanciable. Elle sert de base à d'autres
classes dérivées (héritées). Pour indiquer qu’une classe est abstraite, on
ajoute le mot-clé abstract derrière son nom.
• Le mécanisme des classes abstraites permet de définir des
comportements (méthodes) dont l'implémentation (le code dans la
méthode) se fait dans les classes héritées.

12

6
23/12/2023

Classe abstraite

• Exemple :
• vous avez une classe Humain, à partir de laquelle dérivent la
classe Homme et la classe Femme.
• En toute logique, Homme et Femme sont instanciables (les
objets créés ont une existence en soi),
• Par contre la classe Humain sera déclarée abstraite car un
objet Humain n'existe pas en tant que tel, puisqu'il manque
l'information sur le sexe.
• Ici, la classe Humain servira à implémenter des méthodes qui
seront utilisées à la fois pour Homme et pour Femme.

13

Relations entre les classes

14

7
23/12/2023

Héritage
(Généralisation/Spécialisation)

• Les propriétés principales de l’héritage sont :


• Tous les attributs qui se trouvent dans la Super-Classe sont vrais
dans toutes les sous-classes.
• La classe enfant possède toutes les propriétés de ses classes parents,
mais elle ne peut accéder aux propriétés privées de celle-ci.
• Toutes les associations de la classe parent s’appliquent aux classes
dérivées.

15

Classe plus
SUPER CLASSE
spécialisation
généralisation

générale

SOUS Classe plus


CLASSE détaillée

16

8
23/12/2023

Association

• Une association est une relation entre deux classes


(association binaire) ou plus (association n-aire), qui décrit
les connexions structurelle entre leurs instances ("est
produit par", "est affilié à","se trouve à", "est conduit
par"…).

17

Classe - Association
• Une classe-association possède à la fois les propriétés des
associations et des classes : elle se connecte à deux ou plusieurs
classes et possède également des attributs et des opérations.
• Une classe-association est reliée par un trait discontinu à
l’association qu’elle représente.

18

9
23/12/2023

Agrégation et composition

• Une agrégation est une forme spéciale d’association exprimant une


relation d’inclusion structurelle ou comportementale d’éléments
(agrégés) dans un ensemble (agrégat).
• Graphiquement, on ajoute un losange vide du côté de l’agrégat.
• La composition, également appelée agrégation composite, décrit une
contenance structurelle (contenance physique) entre instances.
Ainsi, la destruction de l’objet composite implique ladestruction de
ses composants.
• Graphiquement, on ajoute un losange plein du côté de l’agrégat.
19

Multiplicités :
1 un et un seul M..N de M à N (entiers naturels)
* plusieurs 1..* de 1 à plusieurs
0..1 zéro ou un 0..* de zéro à plusieurs

Emploie >
Université 0..1 * Personne
Employeur Employé

Contrairement aux cardinalités de Merise, les multiplicités


UML sont placées du côté de la destination. Une
Université emploie plusieurs Personnes : le symbole * est
placé du côté Personne. à une Personne est associée
zéro ou une Université (avec le rôle Employeur) : le
symbole 0..1 est placé du côté Université.
20

10
23/12/2023

MULTIPLICITES (cardinalités):

SERVICE 1 Un et un seul
0..1 Zéro ou Un
0 .. 1 0 .. 1 0 .. 1
M.. De M à N (entiers naturels)
rattacher à

N
diriger

prêter

0..* De Zéro à plusieurs


1 *
1 .. *
*
PERSONNE
1..* De Un à plusieurs
N Exactement N (entier naturel)
21

Définition d’une base de donnée

• Une base de données (son abréviation est BD, en anglais DB,


data base) est une entité dans laquelle il est possible de
stocker des données de façon structurée et avec le moins de
redondance possible afin d’être utilisées par des programmes
et par des utilisateurs différents.
• Ainsi, la notion de base de données est généralement couplée
à celle de réseau, afin de pouvoir mettre en commun ces
informations, d'où le nom de base.
• On parle généralement de système d'information pour
désigner toute la structure regroupant les moyens mis en
place pour pouvoir partager des données.
22

11
23/12/2023

Définition d’une base de donnée

• La gestion de la base de données se fait grâce à un système


appelé SGBD (système de gestion de bases de données) ou en
anglais DBMS (Data base management system).
• Le SGBD est un ensemble de services (applications logicielles)
permettant de gérer les bases de données, c'est-à-dire :
• permettre l'accès aux données de façon simple
• autoriser un accès aux informations à de multiples
utilisateurs
• manipuler les données présentes dans la base de données
(insertion, suppression, modification).
23

Définition d’une base de donnée

• Une base de données relationnelle est une base de données


structurée suivant les principes de l’algèbre relationnelle.

24

12
23/12/2023

25

Passage de UML vers un schéma


relationnel

• But du passage :
• Comme le modèle relationnel est très populaire,
l’investissement des entreprises dans les bases de données
relationnelles est tellement important, qu’il est délicat de le
remettre en cause pour bénéficier des avantages liés aux
technologies objet.

26

13
23/12/2023

Passage de UML vers un schéma


relationnel

• Une classe définit une structure de données à laquelle


souscrivent des instances ;
• Elle correspond donc à une table du modèle relationnel :
chaque attribut donne lieu à une colonne,
• chaque instance stocke ses données dans une ligne (T-uplet)
et son OID sert de clé primaire.
• OID est un identifiant unique pour les objets (Object
IDentifier).

27

Passage de UML vers un schéma


relationnel
• Certains attributs de type complexe ne correspondent à
aucun des types SQL ;
• on rencontre fréquemment ce cas pour les attributs
représentant une structure de données.
• Un type complexe peut être conçu :
• soit avec plusieurs colonnes, chacune correspondant à un
champ de la structure.
• soit avec une table spécifique dotée d’une clé étrangère
pour relier les instances aux valeurs de leur attribut
complexe.

28

14
23/12/2023

Règles de passage

29

Passage de UML vers un schéma


relationnel
Modèle objet Modèle relationnel
Classe Table
Attribut de type simple Colonne

Attribut de type composé Colonne ou clé étrangère

Instance T-uplet
Identifiant Clé primaire
Association Clé étrangère
Héritage Clé primaire identique sur
plusieurs tables 30

15
23/12/2023

Max A=1 Max A>1

Max B=1 Regarder les Min sinon si Mettre clé B dans A


MinA=MinB Alors faire un comme clé étrangère
choix
Max B>1 Mettre clé A dans B Créer une relation
comme clé étrangère association comme clé
A et clé B

31

16

Vous aimerez peut-être aussi