0% ont trouvé ce document utile (0 vote)
69 vues24 pages

Modèle Entité-Association en BD

Le document décrit les éléments de base du modèle Entité-Association pour la conception de bases de données, y compris les entités, attributs, associations et différents types d'associations.

Transféré par

el brak
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)
69 vues24 pages

Modèle Entité-Association en BD

Le document décrit les éléments de base du modèle Entité-Association pour la conception de bases de données, y compris les entités, attributs, associations et différents types d'associations.

Transféré par

el brak
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

BASES DE DONNEES

Eléments de conception et d’exploitation d’une Base de Données

Equipe Bases de Données, Université LYON 1, LIRIS.

LYON 1 - UFR Informatique - Laboratoire LIRIS

8 septembre 2022

Equipe BD Université LYON 1 Conception des Bases de Données 1


Le modèle Entité-Association

1 Le modèle Entité-Association

Equipe BD Université LYON 1 Conception des Bases de Données 2


Le modèle Entité-Association

Un formalisme graphique de travail

E/R (Entity-Relationship) en anglais.


Langage graphique pour élaborer un Modèle Conceptuel de
Données (MCD)
Modélise les entités, leurs attributs et leurs associations
(interactions)
Très intuitif, simplifie les échanges autour du cahier des charges
Bien intégré à la démarche de conception logicielle, proximité
avec un diagramme ce classe UML.
Fourni une documentation précieuse pour l’évolutivité
Se traduit automatiquement ver le modèle logique (relationnel)

Equipe BD Université LYON 1 Conception des Bases de Données 3


Le modèle Entité-Association

Un formalisme graphique de travail

Attention à ne pas tomber dans la facilité


Simple langage sans mécanisme de raisonnement
Des choix dépendent du concepteur, de son expérience
Pouvoir d’expression limité -> tendance à trop simplifier

Rester proche des besoins


Démarche itérative
Bien critiquer ses choix et lister les manques pour la suite
Importance de connaître les bonnes pratiques

Equipe BD Université LYON 1 Conception des Bases de Données 4


Le modèle Entité-Association

Les élements du langage

Entités
Associations
Binaires (entre deux entités) ou bien n-aires.
Attributs
Décrivent les entités, où les associations
Certains attributs d’entité sont des Identifiants.
Deux types particuliers d’entités 1 , presque indispensables :
Entité faibles
Entités spécialisées

1. appartiennent au modèle E/A dit "étendu"


Equipe BD Université LYON 1 Conception des Bases de Données 5
Le modèle Entité-Association

Entités et Classes d’entités

Entité :
Une "chose" du monde réel qu’on cherche à modéliser
Exemple
Un étudiant, un diplôme. . .
Classe d’entités
Modélisation commune d’entités
Exemple : "Un étudiant est représenté par son num, son nom et
son prenom."
Une entité appartient à une classe d’entité
Par abus de langage, Entité = Classe d’entité.

Equipe BD Université LYON 1 Conception des Bases de Données 6


Le modèle Entité-Association

Associations et Classes d’Association

Association :
Une relation entre deux ou plusieurs entités.
Exemple :
Tom est inscrit en Master Informatique
Classe d’Association :
Décrit de façon commune un ensemble d’associations
Exemple : Un étudiant s’inscrit dans un diplôme

Par abus de langage, Assocation = Classe d’association.

Equipe BD Université LYON 1 Conception des Bases de Données 7


Le modèle Entité-Association

Attributs

Attribut :
Propriété d’une entité ou d’une association prend ses valeurs dans
un domaine de valeurs de type simple (caractère, chaîne de
caractères, entier, date).
Exemple :
L’entité Etudiant a pour attributs Num, Nom et Prenom
L’association "inscrit" peut avoir pour attribut la date d’inscription
On peut accepter les attributs multivalués, marqués du symbole ’*’.
Ils peuvent alors prendre une liste de valeurs.
Exemple : un document peut avoir plusieurs mots clés, une personne
plusieurs prénoms
Attention : chaque valeur reste bien atomique.

Au moins un ensemble d’attributs permet d’identifier de façon unique


une entité. On souligne cet identifiant 2 .

2. Un attribut multivalué ne peut pas être identifiant


Equipe BD Université LYON 1 Conception des Bases de Données 8
Le modèle Entité-Association

Formalisme de représentation des associations

EntitéA Relation EntitéB

Attribut1 Attributk
....

1,n Relation 1,n


EntitéA EntitéB
Att1
...

Equipe BD Université LYON 1 Conception des Bases de Données 9


Le modèle Entité-Association

Connectivité et participation aux associations


Dans une association entre E1 et E2 , on doit définir :
A combien d’entité E2 peut se connecter une entité E1 et
inversement : c’est la connectivité de chaque classe d’entité. Elle
vaut soit 1, soit N
Si chaque entité E1 (ou E2 ) est obligée de participer à
l’association : c’est la participation de chaque classe d’entité. Elle
vaut soit 0, soit 1.
Exemples :
Un étudiant DOIT être inscrit dans au moins une formation
(participation obligatoire)
Un étudiant doit être inscrit AU PLUS dans une formation
(connectivité simple)
Une formation peut avoir PLUSIEURS étudiants (connectivité
multiple)
Une formation peut n’avoir aucun étudiant (participation optionnelle)

Equipe BD Université LYON 1 Conception des Bases de Données 10


Le modèle Entité-Association

Connectivité et participation aux associations

Equipe BD Université LYON 1 Conception des Bases de Données 11


Le modèle Entité-Association

Entités Faibles

Salle Bâtiment
N°Salle N°Bat.
Nom Nom
Capacité 1,1 Est_Dans 1,n
Adresse
... ...

Que se passe-t-il s’il y a deux salles 1 dans deux bâtiments différents ?


L’attribut "N Salle" ne permet pas d’identifier une salle.
Il faut savoir de quel bâtiment il s’agit.
Lien existentiel : la salle n’existe que si le bâtiment existe.
Caractérisé par une flèche ID.

Equipe BD Université LYON 1 Conception des Bases de Données 12


Le modèle Entité-Association

Entités Faibles

Pour savoir de quelle salle on parle, il faut connaître dans quel


bâtiment elle est. Une salle est donc "identifiée" par : un numéro de
salle N umSalle (identifiant local) et un numéro de bâtiment N umBat.

Equipe BD Université LYON 1 Conception des Bases de Données 13


Le modèle Entité-Association

Spécialisation / Généralisation

Une entité représente un cas particulier d’une autre entité


Les entités "filles" héritent des attributs des entités "parents", y
compris de l’identifiant.
Donc il ne faut répéter aucun de ces attributs ni identifiants.
Exemple :
Une salle de visio, en plus des autres, possède un matériel
spécifique, des identifiants de connexion, un modes de réservation,
etc. . .
Il faut donc les modéliser de façon distincte des autres salles
Sans perdre de vue que c’est bien une salle !

Equipe BD Université LYON 1 Conception des Bases de Données 14


Le modèle Entité-Association

Exemple

Attention : contrairement à une entité faible qui possède un identifiant


local souligné, une entité spécialisée n’a JAMAIS d’attribut souligné.
Son identifiant provient totalement de l’entité "mère" à laquelle elle est
reliée.
Equipe BD Université LYON 1 Conception des Bases de Données 15
Le modèle Entité-Association

Associations n-aires

Il est possible de faire interagir trois entités ou plus dans une même
association :
C’est parfois une première intention naturelle
Mais beaucoup de "fausses" associations n-aires, faites un peu
rapidement
Tous les sous-ensembles d’entités peuvent-ils se répéter ?
Si la réponse est non, utiliser des associations d’associations
(aggrégation)

Equipe BD Université LYON 1 Conception des Bases de Données 16


Le modèle Entité-Association

Associations réflexive

Une association réflexive associe des entités de même type.


Il faut alors ajouter un rôle à chaque élément de l’association,
pour lever les ambiguïtés.

Supervisé

0,n

Employé Supervision

0,1

Superviseur

Equipe BD Université LYON 1 Conception des Bases de Données 17


Le modèle Entité-Association

Pour aller plus loin dans les contraintes

Sur les liens de spécialisations


Contrainte de totalité (couverture) notée T : toutes les entités
correspondent à au moins une spécialisation.
Contrainte d’exclusivité notée X : une entité ne peut pas être dans
deux spécialisations.
Contrainte de partition notée XT , toutes les entités correspondent
à exactement une spécialisation

Entre des associations qui impliquent les mêmes entités


Totalité T , exclusivité X et partition XT sur les participations
Contrainte d’inclusion I entre les associations A1 et A2 : les
entités participant à A1 participent aussi à A2 .
Contrainte d’égalité = : inclusion dans les deux sens.

Equipe BD Université LYON 1 Conception des Bases de Données 18


Le modèle Entité-Association

Exemples de contraintes avancées

Equipe BD Université LYON 1 Conception des Bases de Données 19


Le modèle Entité-Association

Exemples de contraintes avancées

Equipe BD Université LYON 1 Conception des Bases de Données 20


Le modèle Entité-Association

Remarques
On ne peut pas tout Modéliser
Beaucoup de subjectivité ! Et des limites d’expressivité.
Lister les spécifications non modélisées
Elles permettront d’affiner sur le modèle logique plus tard
Et enventuellement modifier le schéma E/A en conséquence

Quelques points de vigilance


Le graphe final doit être connexe. Il manque probablement
quelque chose sinon.
Une association n’a jamais d’attribut souligné. Si vous avez
"besoin" de le faire, c’est qu’il vous manque une entité...
Un cycle dans le graphe n’est pas une erreur, mais mérite de
l’attention.
Idem pour les associations
Equipe BD Université LYON 1 Conception des Bases de Données 21
Le modèle Entité-Association

Quelques exercices 3 (1)

A l’université
Des enseignants (identifiés par PID) donnent des cours (CID). Un
enseignant peut donner plusieurs cours ; un cours est donné par
exactement un enseignant. On précise le semestre.
Faites un deuxième schéma pour qu’un enseignant puisse
redonner un même cours à un semestre différent.
Faites un troisième schéma pour qu’un cours, le même trimestre,
ne soit affecté qu’à un seul enseignant.
Finalement, on ajoute que lorsqu’un enseignant donne un cours,
c’est toujours le même !

3. Inspirés de [Ramakrishnan, Gehrke, DBMS systems, 2003]


Equipe BD Université LYON 1 Conception des Bases de Données 22
Le modèle Entité-Association

Quelques exercices (2)

Au travail
Une entreprise stocke les informations sur ses employés. Ils ont un
numéro de sécurité social qui les identifie, un salaire et un numéro de
téléphone. Les départements de l’entreprise sont identifiés par leur
numéro, possèdent un nom et un budget. Les employés peuvent avoirs
des enfants avec un nom et une date de naissance (on fera ici
l’hypothèse qu’un seule parent travaille dans l’entreprise). Chaque
employé travaille dans des départements, chaque département est
dirigé par un employé.

Equipe BD Université LYON 1 Conception des Bases de Données 23


Le modèle Entité-Association

Quelques exercices (3)

Un peu de culture
On considère la base de données d’une galerie d’art. Elle garde des
informations sur les artistes (un nom unique, un ville de naissance, un
style). Chaque oeuvre est réalisée par un artiste, avec une année de
réalisation, un titre unique, et un prix. Elle appartient à un ou plusieurs
groupes d’œuvres qu’on crée pour les classer (portraits, oeuvre de
Picasso,...). Chaque groupe est identifié par son nom. La gallerie
garde des informations sur ses clients (nom unique, adresse,
préférences.) Chaque client peut effectuer des commandes à des
dates différentes ; chaque commande porte sur une ou plusieurs
oeuvres.

Equipe BD Université LYON 1 Conception des Bases de Données 24

Vous aimerez peut-être aussi