Conception du Diagramme de Classes

publicité
Conception d’une
Base de Données
Le Diagramme de Classes
UML
Conception d’une BD : les niveaux
•
•
•
•
schéma
conceptuel
schéma
logique
conceptuel
logique
physique
externe
Utilisateurs
schéma
physique
R1
R2
2
Conception d’une BD : les étapes
Produits
Monde Extérieur
Modélisation
(UML)
idPro
désignation
poids
Fournisseurs
<< Association >>
1
*
Fournir
1..*
1
prixAchat
idFour
raisonSociale
adresse
Schéma Conceptuel : DC
Règles de
passage
Produits (IdPro, désignation, poids)
Normalisation ?
Fournir(IdPro, IdFour, PrixAchat)
Fournisseurs(IdFour, RaisonSociale, adresse)
Mise en œuvre
de la BD
Schéma Logique ou Relationnel
Schéma Physique
3
Le Diagramme de Classes (DC) :
concepts de base
• Classe
– Ensemble d’objets concrets ou abstraits de même nature
– Une classe est décrite par ses attributs, méthodes et
contraintes
– Exemples : Etudiant, Employe, Produit, …
• Attribut
– Propriété décrivant une classe
– Valeur unique pour chaque classe
– Exemple : nom, prenom, adresse , ….
• Identifiant
– Attribut particulier permettant de repérer une occurrence
– Exemple : idClient, idEtudiant, ….
• Association
– Permet de relier une classe à une ou plusieurs autres
– 
4
Le Diagramme de Classes :
Notion d’Association
• Dimension d’une association
– Nombre de classes entrant liées
– Binaire : 2, Ternaire : 3, N-aire : n
• Nom d’une association
– Verbe à l’infinitif : Appartenir, Fournir, …
• Multiplicité
– Nombre minimum et maximum d’objets liés
Minimum, Maximum
Unicité
Multiplicité
Optionnel
Obligatoire
0..1
1..1 ou 1
0..* ou *
1..*
5
Représentation des classes
Étudiant
IneEtudiant
NomEtudiant
AdrEtudiant
Moyenne()
Modules_obtenus()
Inscription_correcte
Nombre_inscrits_dip
Nom de la Classe
Identifiant
Attributs
Méthodes
Contraintes
Procédures
Stockées
Déclencheurs
6
Associations de type Mère-Fille (1-N)
Etudiant
Diplome
IdDip
NomDip
RespDip
Inscrire
1
*
IneEtudiant
NomEtudiant
AdrEtudiant
Un diplôme (classe mère) peut concerner aucun ou plusieurs
étudiants (classe fille).
Un étudiant doit être inscrit à , au moins et au plus, un seul
diplôme.
7
Associations de type multiple (N-N)
sans attributs
Etudiant
IneEtudiant
NomEtudiant
AdrEtudiant
Stage
Choisir
*
1..*
IdStage
ThémeStage
Entreprise
RespStage
Un étudiant doit choisir au moins un stage et peut en choisir
plusieurs.
Un stage peut être choisi par aucun étudiant ou plusieurs.
8
Associations de type multiple (N-N)
avec attributs
Fournisseur
IdFour
NomFour
AdrFour
Produit
*
1..*
IdProduit
NomProduit
QtéStock
Fournir
Classe d’association
Prix
DélaiLivraison
QuantitéMin
9
Associations de type multiple (N-N)
N aires (N>2)
Conditionnement
IdCond
LibCond
Fournisseur
IdFour
NomFour
AdrFour
Produit
*
1..*
*
IdProduit
NomProduit
QtéStock
Fournir
Prix
DélaiLivraison
QuantitéMin
10
Associations de type symétrique (1-1)
Etudiant
IneEtudiant
NomEtudiant
AdrEtudiant
Stage
Effectuer
0..1
1
IdStage
ThémeStage
Entreprise
RespStage
Note stage
Un étudiant effectue au moins un et un seul stage.
Un stage peut être effectué par aucun ou un seul étudiant.
(Une association de type 1-1 est souvent le résultat d’un éclatement de classe)
11
Associations réflexives
 1-N réflexif
0..1
Est responsable de
Enseignant
IdEnseignant
NomEnseignant
Fonction
indice
*
A pour responsable 
12
Associations réflexives
 N-N réflexif
*
Est composé de
Produit
IdProduit
LibelléProduit
Prix
Composer
Quantité
*
Entre dans la composition de
13
Assemblage de classes
Reprise d’une classe d’association
• Certaines associations N-aires peuvent être
transformées en plusieurs associations binaires
• On associe d’abord les deux classes les plus
stables : stabilité du schéma
• La classe d’association se transforme en classe
normale pour la troisième classe associée
• Merise parlait d’agrégation d’entités
14
Reprise d’une classe d’association
Associations de type 1-N et N-N
Classes
stables
Joueur
IdLicence
NomJoueur
Classement
Amende
IdAmende
Montant
Tournoi
*
*
Recevoir
*
*
Association N-N
sans attribut
Obtenir
Participer
Résultat
IdTournoi
NomTournoi
Ville
Date
*
Prix
0..1
Association 1-N
IdPrix
Montant
(La classe d’association ‘Participer’ est transformée en classe normale)
15
Associations d’agrégation
et de composition
UV
Etudiant
IneEtudiant
Nom
1..8 IdUV
*
IntUV
Inscrire
Note
Résultat
En cas de suppression d’un étudiant : on supprime toutes ses inscriptions
On ne peut pas supprimer une UV ayant au moins un inscrit
16
Généralisation et Spécialisation
Personnel
IdPers
Nom
Indice
Ingénieur
Enseignant
Chercheur
Grade
Fonction
Domaine
Section
Titre
HeuresCours
Spécialité
Laboratoire
17
Téléchargement