Vous êtes sur la page 1sur 44

Faculté des Sciences de Bizerte

Chapitre
Conception d’une base de
données: le modèle
2 Entité/Association

Préparé par:
Mme O. DRIDI

1
Plan

1. Le modèle conceptuel des données (MCD)

2. Concepts de base du modèle Entités-Associations


(EA)

3. Guide de bonnes pratiques

2
Étapes de la conception d’une BD

Méthodologie pour traduire un système d'information naturel en une base de données

Univers de
l’application
Réel
Niveaux d’abstractions Analyse Perçu

Elaboration du Modèle Niveau Conceptuel


E-R MCD
Schéma
Conceptuel
Passage au Modèle
Niveau Logique MLD
Relationnel
Schéma
Logique
Implémentation MPD
Niveau Physique
Sur SGBD-R
La Modélisation Conceptuelle
Niveau conceptuel: description de haut niveau
de la structure de la BD. Il décrit le contenu en
Modèle conceptuel de données information et non les structures de stockage. Le
(Modèle E-A) MCD décrit les entités du monde réel, en terme
d’objets, de propriétés et de relations,
indépendamment de toute technique
Modèle logique de données d’organisation et d’implantation des données.
(Schéma des tables)

Niveau logique: description de la structure de la


Modèle physique de données BD qui est comprise par le SGBD. Il dépend du
(les tables elles mêmes) modèle logique choisi (Hiérarchique, Réseau,
Relationnel ou Objet). Le MLD précise le modèle
conceptuel par des choix organisationnels.
Niveau physique: description de l'implantation de la BD en mémoire
secondaire (structure de stockage et méthodes d'accès). Le MPD
permet d’établir la manière concrète dont le système sera mis en
place.
Modèle conceptuel de données

• Le MCD donne une vue d’ensemble des données et


des liens qui les caractérisent.
• L’élaboration de ce modèle est une tâche complexe
et essentielle qui conditionne la pertinence, la
robustesse et la durabilité de la base de données.
• Il doit être complet pour supporter toutes les
données nécessaires.
• Le formalisme le plus répandu pour la réalisation
d’une MCD est le modèle Entités/Associations.

5
Modèle Entités/Associations

• Origines: C.Bachman (1969), P.Chen (1976).


• C’est un modèle qui est à la base de la plupart des
outils d’aide à la conception (Merise, UML).
• L’idée fondamentale est de considérer comme
concepts génériques les objets, liens et propriétés.
• Ensemble de concepts pour décrire :
– Les données du monde réel
– Les liens entre les données
– La sémantique des données
• Ensemble d’opérations pour manipuler les données
Modèle Entités/Associations

q Un schéma E/A décrit l’application visée, c’est-à-dire une


abstraction d’un domaine d’étude, pertinente relativement
aux objectifs visés. Rappelons qu’une abstraction consiste à
choisir certains aspects de la réalité perçue (et donc à
éliminer les autres). Cette sélection se fait en fonction de
certains besoins qui doivent être précisément définis.

q Le modèle E/A utilise deux notations:


•Entités
•Associations
Objectifs de la Modélisation

• Permettre une meilleure compréhension


– Systèmes réels trop complexes
– Abstraction des aspects cruciaux du problème
– Omission des détails
• Permettre une conception progressive
– Abstractions et raffinements successifs
– Possibilité de prototypage rapide
– Découpage en modules ou vues
– Génération des structures de données et de traitements
• Faciliter la visualisation du système
– Diagrammes avec notations simple et précise
– Compréhension visuelle et non seulement intellectuelle
Concepts de base (1)

• Une entité est un ensemble d’objets qui possèdent une


sémantique et des propriétés communes.
• Les personnes, les livres et les voitures sont des exemples
d’entité. En effet, dans le cas d’une personne par exemple,
les informations associées (les propriétés), comme le nom et
le prénom, ne changent pas de nature.

• Une instance ou occurrence est un objet, une chose


concrète ou abstraite qui peut être reconnue distinctement
et qui est caractérisée par son unicité.
Exemple: le client X, le fournisseur Y, etc.
Représentation graphique d’une entité

• Une entité est représentée par un rectangle.

Personne Voiture

Client Fournisseur
Article

10
Concepts de base (2)

• Une association est un lien entre plusieurs entités. Elle est


représentée par un verbe matérialisant une relation entre
entités.

Exemple : “acheter” est une association entre les d’entités


Client et Fournisseur.
Concepts de base (2)

• Les entités intervenant dans une association sont appelées


participants.
• L’ensemble de participants d’une association est appelé la
collection de l’association.

• La dimension ou l’arité d’une association est le nombre


des entités contenu dans la collection.
• Une association est dite :
– N-aire : dans le cas général,
– Binaire : dans le cas où n=2 (la collection contient deux entités),
– Ternaire : dans le cas où n=3.
– Les associations avec n>2, bien qu’existantes, sont rares et problématiques.

12
Représentation graphique d’une
association
• Une association est représentée par une ellipse.

Personne Voiture

Possède

13
Concepts de base (3)

• Un attribut (ou propriété) est une caractéristique


associée à une entité ou à une association.
– Exemple : adresse est une propriété des entités de type Client et de
type Fournisseur.
• Le type d’une propriété peut être simple (mois, prix, etc.) ou
composé (date, adresse).
• Une valeur au niveau de l’entité ou de l’association, chaque
attribut possède un domaine qui définit l’ensemble des
valeurs possibles qui peuvent être choisies pour lui (entier,
chaîne de caractères, booléen…). Au niveau de l’entité,
chaque attribut possède une valeur compatible avec son
domaine.
Attributs

• simple (atomique) ou composite (décomposable en plusieurs


attributs plus simples). Exemple : l'attribut ADRESSE peut
être constitue des attributs plus simples RUE ET NUMERO,
BOITE, VILLE, CODE POSTAL, PAYS.
• obligatoire (une entité doit avoir une valeur pour cette
attribut) ou facultatif. Exemple : l'attribut BOITE intervenant
dans ADRESSE est facultatif.
• a valeur unique ou a plusieurs valeurs. Exemple : l'attribut
DIPLOMES (d'une personne) peut avoir plusieurs valeurs
pour une même personne.
• enregistré ou dérivé (d'un autre attribut). Exemple : l'attribut
AGE (d'une personne) peut être dérivé de l'attribut
enregistre DATE DE NAISSANCE.
Attributs

• Une entité possède au moins un attribut (son identifiant).


• Une association peut être dépourvue d’un attribut.
• Les relations peuvent avoir des attributs, exactement comme les
ensembles d'entités.
Article Fournisseur
Client
N°article N°Fournisseur
N°client désignation Prénom_Fr
Prénom_Cl Prix unitaire Nom_Fr
Nom_Cl de vente Fonction_Fr
Fonction_Cl …

Personne
Voiture
N°CIN
Prénom N°Véhicule
Nom Marque
Fonction Puissance
Concepts de base (4)

• Un identifiant d’une entité ou d’une association,


est un ensemble minimal d’attributs qui permet
d’identifier chaque entité ou association de manière
unique.
• La relation entre chaque entité ou association avec
son identifiant doit être bijective.
• L’identifiant est souvent utilisé comme clé.
Concepts de base (5)

• Les cardinalités d’une patte reliant une association et une


entité précisent le nombre de fois minimal et maximal
d’interventions d’une occurrence dans une association. La
cardinalité minimale doit être inférieure ou égale à la
maximale.

• Il faut lire la cardinalité comme suit :


– Un abonné peut Emprunter 0 ou plusieurs livres.
– Un livre ne peut être Emprunté que par un seul abonné.

18
Cardinalités (2)

• L’association “achète”
• Un client achète à un nombre de fournisseurs allant
de 0 à n. Un fournisseur a de 0 à n clients qui
achètent ses produits.

• L’association “achète” a ainsi deux “pattes” de


cardinalités minimales 0 et de cardinalités
maximales n.
Cardinalités (3)

• L’association “propriétaire”
• Une personne peut ne pas avoir d’appartement (0)
ou être propriétaire de plusieurs appartements (n).
Un appartement est possédé par au moins une
personne (1), et peut l’être par plusieurs personnes
(n).

• L’association “propriétaire” a ainsi deux pattes de


cardinalités maximales égales à n.
A retenir

• L’expression de la cardinalité est obligatoire pour chaque


patte d’une association.
• Il ne peut y avoir de cardinalité maximale égale à 0, car elle
rendrait l’association inutile.
• Une cardinalité minimale est toujours 0 ou 1 et une
cardinalité maximale est toujours 1 ou n.
• Si une cardinalité est connue et vaut 2 ou plus, alors nous
considérons qu’elle est indéterminée et vaut n. En effet, si
cette valeur est définie lors de la conception, il se peut
qu’elle évolue dans le futur. Il est donc considérer n comme
inconnue dès la conception.

21
A retenir

• Les seules cardinalités admises sont :


– 0,1 : une occurrence d’une entité peut exister en étant
impliquée soit dans aucune association soit au maximum
dans une seule.
– 0,n : une occurrence d’une entité peut exister en étant
impliquée soit dans aucune association soit dans plusieurs
associations (sans limite).
– 1,1 : une occurrence d’une entité ne peut exister que si
elle est impliquée dans exactement une association.
– 1,n : une occurrence d’une entité ne peut exister que si
elle est impliquée dans au moins une association.

22
Identifiant d’une association

• Les associations peuvent être catégorisées en fonction des


cardinalités maximales de leurs pattes :

Catégories d’une Description Autre appellation


association
Binaire La cardinalité maximale sur Association 1 vers 1
chacune de ses pattes est 1.
Fonctionnelle Une cardinalité maximale est à Association 1 vers n
1 et une cardinalité maximale
est à n.
maillée La cardinalité maximale de Association n vers n
chacune de ses pattes est à n.

23
Identifiant d’une association

• L’identifiant d’une association fonctionnelle est


composé des identifiants du participant situé du
coté de la cardinalité maximale de 1.
• Une association binaire dit 1 vers 1, possède deux
identifiants candidats issus des deux participants. Il
suffit d’en choisir un.

24
Identifiant d’une association

• L’identifiant d’une association maillée est composé des identifiants de


ses participants. Cet identifiant n’est pas mentionné sur le modèle, il est
implicite.
• Soit le modèle suivant. Il précise qu’un livre peut être Emprunté par
plusieurs abonnés, et qu’un abonné peut Emprunter plusieurs livres.

• Si un abonné Emprunte un même livre à deux différentes dates, alors


l’identifiant du type-association Emprunter comptera un doublon, ce qui
est impossible.

25
Association plurielle

• Deux mêmes entités peuvent être plusieurs fois en


association.
Association cyclique ou réflexive
Association n-aire (n>2)

28
Entité faible

• Jusqu’à présent nous avons considéré le cas d’entités indépendantes les


unes des autres. Chaque entité, disposant de son propre identifiant,
pouvait être considérée isolément. Il existe des cas où une entité ne
peut exister qu’en étroite association avec une autre, et est identifiée
relativement à cette autre entité. On parle alors d’entité faible.
Cinéma
— Clé d’identification d’une salle est alors constituée Nom
Ville
de deux parties: Rue
1. La clé de Cinéma, qui indique dans quel Numéro
cinéma se trouve la salle ; (1,n)

2. Le numéro de la salle au sein du cinéma.


Appartenir
— La présence d’une entité faible B associé à une
entité A implique également des contraintes fortes (1,1)
sur les créations, modifications et destructions des
Salle
instances de B et de A car on doit toujours
Id
s’assurer que la contrainte est valide. Capacité
DateConstr
Guide de bonnes pratiques

• Normalisation des entités

Deux entités homogènes peuvent être fusionnées


Guide de bonnes pratiques

• Normalisation des identifiants


– Éviter les identifiants composés de plusieurs attributs.
– Préférer un identifiant court pour rendre la recherche la
plus rapide possible.
– Éviter également les identificateurs susceptibles de
changer au cours du temps.
Guide de bonnes pratiques

• Dans un modèle entités-associations, le nom d'une


entité, d'une association ou d'un attribut doit être
unique.

32
Guide de bonnes pratiques

• Spécialisation, généralisation, héritage (Orienté-


Objet).

Personne
N°Sécu
Nom
Prénom
Adresse

Etudiant Enseignant
N°Etudiant N°Enseignant
Promo Grade
Groupe Fonction

33
Guide de bonnes pratiques
• Normalisation des attributs : Il faut remplacer un attribut
multiple en une association et une entité supplémentaires.
Guide de bonnes pratiques

• Un attribut est une donnée élémentaire, ce qui exclut des


données calculées ou dérivées.

• Il faut supprimer l’attribut montantTotal de l’entité


COMMANDE, car il peut être calculé à partir des attributs
quantité et prixUnitaire.

35
Guides de bonnes pratiques

• Un attribut peut-être placé dans une association uniquement


lorsqu’il dépend de toutes les entités liées par l’association.

36
Synthèse

• Un modèle Entité-Relation contient les


éléments suivants:
– Entités
• Propriétés (ou attributs)
• Clés primaires
– Relations
• Éventuellement munies de propriétés (ou attributs)
– Cardinalités
• Ces éléments sont TOUS OBLIGATOIRES

37
Critique du modèle Entité/Association

J Avantages L Inconvénients
– Sémantique riche – Uniquement un modèle
– Extension aux concepts de description de
objets (héritage, ...) données
– Aspect visuel – Pas de langage de
manipulation associé
Þ Modèle de conception
– Pas de SGBD E/A
de BD
Þ Pas un modèle
d’implantation de BD

38
QUESTIONS???

39
Exercice 1

• On souhaite gérer le personnel d'une société. Chaque


membre du personnel a un nom, une fonction, un salaire,
une commission, une date d'entrée dans la société. Chaque
membre du personnel travaille dans un département
caractérisé par son nom (commercial, production, personnel,
comptable et recherche) et la ville dans lequel il se trouve.
Chaque membre du personnel a un supérieur hiérarchique
lui-même membre du personnel. Dans l’entreprise
précédente, le service des Ressources Humaines veut gérer
la carrière des employés. Pour cela il connaît les postes
occupés dans les différents services, la date de début
d’occupation du poste et le salaire. On considère que chaque
augmentation de salaire et chaque changement de poste est
une étape dans la carrière de l’employé.
40
Exercice 2

• Une entreprise veut améliorer sa gestion du matériel ainsi que celle des
commandes de ces clients. Pour cela, elle envisage les orientations
suivantes :
• Elle veut connaître à tout instant la quantité disponible d’un matériel dans
un magasin donné.
• Les matériaux sont classés en catégories pour faciliter leur gestion.
• On doit pouvoir connaître les composants d’un matériel et les matériaux
dans lesquels on trouve un composant donné.
• Lors d’une rupture de stock, un matériel peut être remplacé par un
matériel de substitution.
• Chaque client a un seuil maximal de commandes autorisé (droit
d’approvisionnement) par catégorie de matériel pour une période donnée.
• Un client ne peut s’approvisionner que dans un magasin et un seul.
• Une commande est définie par un numéro : elle concerne un seul client et
différents matériaux, et précise la quantité commandée.
41
Exercice 3

• La compagnie veut conserver les coordonnées des passagers, y compris


s’ils se sont désistés, ou après le départ.
• Un passager peut avoir plusieurs réservations.
• Un vol est une liaison entre 2 lieux.
• Il peut être régulier, tous les jours à telle heures, ou occasionnel.
• En conséquence, un vol peut avoir plusieurs départs (un départ est un
exemplaire d’un et un seul vol).
• La compagnie dispose d’un ensemble de personnels, dont certains sont
des « volants » (pilotes ou personnels de bord) qui sont affectés au
départ de certains vols, et d’autres sont à terre (entretien, accueil etc.).
• Il n’y a jamais plus de 6 « volants » affectés à un départ. Un départ peut
n’avoir encore aucun personnel affecté.
• La compagnie a décidé de ne considérer comme pilote que ceux qui sont
brevetés pour au moins un des modèles d’avions qu’elle possède ou
prévoit à terme. Elle prend en compte des modèles d’avion même si elle
n’a pas encore de pilote breveté pour ce modèle. 42
Exercice 4

• La seule activié de Fnak.com est la vente de CD musicaux au public français sur


Internet. Les visiteurs du site de vente en ligne ne peuvent acheter qu’après
avoir ouvert un compte client auquel ils se connectent en entrant leur e-mail et
un mot de passe d’au moins huit caractères. Lors de leur inscription, il leur est
demandé leur état civil, leur adresse (celle qui sera utilisée pour la facturation
des CD achetés) et leur numéro de carte de fidélité des magasins Fnak (s’ils en
possèdent une). Pour chaque CD du catalogue, un visiteur peut visualiser la
pochette de l’album et un commentaire de cet album. Il peut également savoir si
c’est une édition spéciale de l’album (un CD Collector par exemple). Le numéro
de code barre d’un CD est différent selon l’édition de l’album. Le prix (exprimé
en euros) d’un CD dépend de la date depuis laquelle il est sorti. En général, à sa
sortie, son prix est modéré, puis quelques semaines plus tard, le prix est
rehaussé. Enfin, les CD à succès sont vendus à prix cassé au bout de quelques
mois. Lors d’une visite sur le site, un client peut créer un nouveau ”panier” dans
lequel il met le ou les CD qu’il veut acheter ainsi que le nombre d’exemplaires
qu’il souhaite acheter. Ce panier est modifiable tant que le paiement de celui-ci
n’est pas validé et confirmé. Le paiement s’effectue par un intermédiaire
spécialisé qui se charge de prélever le coût de leur commande aux clients, de
confirmer à Fnak.com que la commande a bien été payée et d’éditer un numéro 43
unique de paiement. Une facture est alors établie, chaque facture a un numéro
Exercice 4 Partie 2

• Quelques mois après l’ouverture du site Fnack.com, le succès est


tel que le directeur souhaite proposer son service dans d’autres
pays. Proposer une modification de votre schéma permettant de
prendre en compte ce nouveau paramètre. Tous les pays ne sont
pas francophones, il faut donc traduire les informations et
proposer à un client une version du site traduite dans sa langue
maternelle. Les monnaies ne sont pas les mêmes, le prix est donc
calculé en fonction du taux de change (qui change tous les jours)
et arrondi à une puissance de 10 dépendante de la monnaie
utilisée (on arrondit par exemple à 10 yens japonais près mais à
0,01 dollars canadien près). Les frais de livraison dépendent du
pays. Le prix dépend du nombre de colis ou du nombre de CD
contenus dans le colis ou d’une combinaison de ces deux critères.

44

Vous aimerez peut-être aussi