Conception d’une Base de Données Le Diagramme de Classes UML
Conception d’une BD : les niveaux conceptuel logique physique externe schéma conceptuel schéma logique Utilisateurs schéma physique R1 R2
Conception d’une BD : les étapes Modélisation (UML) Monde Extérieur Schéma Conceptuel : DC Règles de passage Produits (IdPro, désignation, poids) Fournir(IdPro, IdFour, PrixAchat) Fournisseurs(IdFour, RaisonSociale, adresse) Normalisation ? Schéma Logique ou Relationnel Mise en œuvre de la BD Schéma Physique
Le Diagramme de Classes (DC) : concepts de base 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
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 Optionnel Obligatoire Unicité 0..1 1..1 ou 1 Multiplicité 0..* ou * 1..*
Représentation des classes Étudiant Nom de la Classe IneEtudiant NomEtudiant AdrEtudiant Identifiant Attributs Moyenne() Modules_obtenus() Procédures Stockées Méthodes Inscription_correcte Nombre_inscrits_dip Contraintes Déclencheurs
Associations de type Mère-Fille (1-N) Diplome Etudiant Inscrire IdDip NomDip RespDip IneEtudiant NomEtudiant AdrEtudiant 1 * 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.
Associations de type multiple (N-N) sans attributs Etudiant Stage Choisir IdStage ThémeStage Entreprise RespStage IneEtudiant NomEtudiant AdrEtudiant * 1..* Un étudiant doit choisir au moins un stage et peut en choisir plusieurs. Un stage peut être choisi par aucun étudiant ou plusieurs.
Associations de type multiple (N-N) avec attributs Fournisseur Produit IdProduit NomProduit QtéStock IdFour NomFour AdrFour * 1..* Fournir Prix DélaiLivraison QuantitéMin Classe d’association
Associations de type multiple (N-N) N aires (N>2) Conditionnement IdCond LibCond Fournisseur Produit * IdFour NomFour AdrFour IdProduit NomProduit QtéStock * 1..* Fournir Prix DélaiLivraison QuantitéMin
Associations de type symétrique (1-1) Etudiant Stage Effectuer IdStage ThémeStage Entreprise RespStage Note stage IneEtudiant NomEtudiant AdrEtudiant 0..1 1 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)
Associations réflexives 1-N réflexif 0..1 Est responsable de Enseignant IdEnseignant NomEnseignant Fonction indice * A pour responsable
Associations réflexives N-N réflexif * Est composé de Produit Composer IdProduit LibelléProduit Prix Quantité * Entre dans la composition de
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
Reprise d’une classe d’association Associations de type 1-N et N-N Joueur Classes stables Tournoi IdLicence NomJoueur Classement IdTournoi NomTournoi Ville Date * * Recevoir Obtenir Amende Participer Prix * * 0..1 IdAmende Montant Résultat * IdPrix Montant Association 1-N Association N-N sans attribut (La classe d’association ‘Participer’ est transformée en classe normale)
Associations d’agrégation et de composition Etudiant UV IneEtudiant Nom IdUV IntUV 1..8 * 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
Généralisation et Spécialisation Personnel IdPers Nom Indice Ingénieur Enseignant Chercheur Grade Fonction Domaine Section Titre HeuresCours Spécialité Laboratoire