Vous êtes sur la page 1sur 35

Bases de données avancées

LICENCE 3
ESTM
2020-2021

B. D. DIACK:
B.D.Diack/ bayedemba@gmail.com
Consultant Développeur-admin
1
BD
Chapitre 2
Notion de modélisation
des données

ESTM 2020
Introduction
• La méthode permet de distinguer les entités qui
constituent la base de données, et les associations
entre ces entités.
• Ces concepts permettent de donner une
structure à la base, ce qui s’avère indispensable.
• Nous commençons par montrer les problèmes
qui surviennent si on traite une base relationnelle
comme un simple fichier texte, sans se soucier de
lui donner une structure correcte.
B.D.Diack/ Consultant Développeur-admin
3
BD
Critiques
• Apres lecture et analyse du fichier Excel Même
pour une information aussi simple, il est facile
d’énumérer tout un ensemble de problèmes
potentiels. Tous ou presque découlent d’un
grave défaut de la table ci-dessus : il est
possible de représenter la même information
plusieurs fois.

B.D.Diack/ Consultant Développeur-admin


4
BD
Anomalies lors d’une insertion
• Rien n’empêche de représenter plusieurs fois le
même film. Pire : il est possible d’insérer
plusieurs fois le film Vertigo en le décrivant à
chaque fois de manière différente, par exemple en
lui attribuant une fois comme réalisateur Alfred
Hitchcock, puis une autre fois John Woo, etc.
• Une bonne question consiste d’ailleurs à se
demander ce qui distingue deux films l’un de
l’autre, et à quel moment on peut dire que la
même information a été répétée.
B.D.Diack/ Consultant Développeur-admin
5
BD
Anomalies lors d’une insertion
• Peut-il y avoir deux films différents avec le
même titre par exemple ?
• Si la réponse est non, alors on devrait pouvoir
assurer qu’il n’y a pas deux lignes dans la table
avec la même valeur pour l’attribut titre.
• Si la réponse est oui, il reste à déterminer quel
est l’ensemble des attributs qui permet de
caractériser de manière unique un film.

B.D.Diack/ Consultant Développeur-admin


6
BD
Anomalies lors d’une modification
• La redondance d’information entraîne également des
anomalies de mise à jour. Supposons que l’on modifie
l’année de naissance de Hitchcock pour la ligne Vertigo
et pas pour la ligne Psychose.
• On se retrouve alors avec des informations
incohérentes.
• Les mêmes questions que précédemment se posent
d’ailleurs.
• Jusqu’à quel point peut-on dire qu’il n’y a qu’un seul
réalisateur nommé Hitchcock, et qu’il ne doit donc y
avoir qu’une seule année de naissance pour un
réalisateur de ce nom ?

B.D.Diack/ Consultant Développeur-admin


7
BD
Anomalies lors d’une destruction
• On ne peut pas supprimer un film sans
supprimer du même coup son metteur
en scène. Si on souhaite, par exemple, ne
plus voir le film Titanic figurer dans la
base de données, on va effacer du même
coup les informations sur James
Cameron.

B.D.Diack/ Consultant Développeur-admin


8
BD
La bonne méthode
– Une bonne méthode évitant les anomalies ci-dessus
consiste à :
1. être capable de représenter individuellement les films
et les réalisateurs, de manière à ce qu’une action sur
l’un n’entraîne pas systématiquement une action sur
l’autre ;
2. définir une méthode d’identification d’un film ou d’un
réalisateur, qui permette d’assurer que la même
information est représentée une seule fois ;
3. préserver le lien entre les films et les réalisateurs,
mais sans introduire de redondance.

B.D.Diack/ Consultant Développeur-admin


9
BD
Les modèles de BD sont souvent trop limités
pour pouvoir représenter directement le monde
réel
Méthodologies de conception présentées en
ACSI, SGBD2 B.D.Diack/ Consultant Développeur-admin
10
BD
Le modèle Entité-Association
• EA en français, ER en anglais
(pour Entity Relationship)
• Formalisme retenu par l'ISO pour décrire
l'aspect conceptuel des données à l’aide
d’entités et d’associations

B.D.Diack/ Consultant Développeur-admin


11
BD
Le modèle Entité-Association
• Le modèle E/A, conçu en 1976, est à la base de la
plupart des méthodes de conception.
• La syntaxe employée ici est celle de la méthode
MERISE(principalement utilisée en France) .
• Il existe beaucoup d’autres notations, dont celle
de la méthode UML(reprise à peu près à
l’identique de celle de la méthode OMT).
• Ces notations sont globalement équivalentes.
Dans tous les cas la conception repose sur deux
concepts complémentaires, entité et association.
B.D.Diack/ Consultant Développeur-admin
12
BD
Le concept d’entité
Représentation d’un objet matériel ou immatériel
– Par exemple un employé;
– un projet;
– un bulletin de paie
Les entités peuvent être
regroupées en types d’entités
Par exemple, on peut considérer que
tous les employés particuliers sont des
instances du type d’entité générique
EMPLOYE
Par exemple l’employé nommé DUPONT
est une instance ou occurrence de
l’entité EMPLOYE B.D.Diack/ Consultant Développeur-admin
13
BD
Les propriétés
Données élémentaires relatives à une entité
• Par exemple
– un numéro d’employé;
– une date de début de projet
➢On ne considère que les propriétés qui
intéressent un contexte particulier
➢Les propriétés d’une entité sont également
appelées des attributs, ou des caractéristiques
de cette entité
B.D.Diack/ Consultant Développeur-admin
14
BD
L’identifiant
• propriété ou groupe de propriétés qui sert à
identifier une entité
• L’identifiant d’une entité est choisi par
l’analyste de façon à ce que deux occurrences
de cette entité ne puissent pas avoir le même
identifiant
• Par exemple:
• le numéro d’employé sera l’identifiant de l’entité EMPLOYE
• Id_pays sera l’identifiant de pays
B.D.Diack/ Consultant Développeur-admin
15
BD
• Le type d’une entité est composé des
éléments suivants :
• son nom ;
• la liste de ses attributs avec, –
optionnellement – le domaine où l’attribut
prend ses valeurs : les entiers, les chaînes de
caractères ;
• l’indication du (ou des) attribut(s) permettant
d’identifier l’entité : ils constituent la clé.
B.D.Diack/ Consultant Développeur-admin
16
BD
Cle
• Soit E un type d’entité et A l’ensemble des attributs
de E .
• Une clé de E est un sous ensemble minimal de A
permettant d’identifier de manière unique une entité
parmi n’importe quelle extension de E

• Un internaute est caractérisé par plusieurs


• attributs : son email, son nom, son prénom, la région
où il habite

B.D.Diack/ Consultant Développeur-admin


17
BD
Ses caractéristiques
• Il est possible d’avoir plusieurs clés pour un même
ensemble d’entités.
• Dans ce cas on en choisit une comme clé primaire, et
les autres comme clés secondaires. Le choix de la clé
(primaire) est déterminant pour la qualité du schéma
de la base de données.
• Les caractéristiques d’une bonne clé primaire sont les
suivantes :
– sa valeur est connue pour toute entité ;
– on ne doit jamais avoir besoin de la modifier ;
– enfin, pour des raisons de performance, sa taille de
stockage doit être la plus petite possible.
B.D.Diack/ Consultant Développeur-admin
18
BD
Les associations
• Représentation d’un lien entre deux entités
ou plus
• une association peut avoir des propriétés
particulières
• Par exemple, la date d’emprunt d’un livre

B.D.Diack/ Consultant Développeur-admin


19
BD
Les cardinalités
La cardinalité d’une association pour une entité
constituante est constituée d’une borne
minimale et d’une borne maximale :

Minimale : nombre minimum de fois qu’une


occurrence de l’entité participe aux occurrences de
l’association, généralement 0 ou 1
Maximale : nombre maximum de fois qu’une
occurrence de l’entité participe aux occurrences de
l’association, généralement 1 ou n
B.D.Diack/ Consultant Développeur-admin
20
BD
• La cardinalité 0,3 indique qu’un adhérent peut
être associé à 0, 1, 2 ou 3 livres, c’est à dire
qu’il peut emprunter au maximum 3 livres.

• A l’inverse un livre peut être emprunté par un


seul adhérent, ou peut ne pas être emprunté.
B.D.Diack/ Consultant Développeur-admin
21
BD
• Un auteur est né dans un et un seul pays
• Dans un pays sont nés plusieurs auteurs

B.D.Diack/ Consultant Développeur-admin


22
BD
➢Les cardinalités maximum sont nécessaires
pour concevoir le schéma de la base de
données
➢Les cardinalités minimums sont nécessaires
pour exprimer les contraintes d’intégrité

En notant uniquement les cardinalités


maximum, on distingue 3 type de liens :
• Lien fonctionnel 1:n
• Lien hiérarchique n:1
• Lien maillé n:m

B.D.Diack/ Consultant Développeur-admin


23
BD
Lien fonctionnel 1:n
• Une instance de A ne peut être associée qu'à
une seule instance de B

B.D.Diack/ Consultant Développeur-admin


24
BD
Exemples

B.D.Diack/ Consultant Développeur-admin


25
BD
Lien hiérarchique n:1
• Un département emploie généralement
plusieurs employés

• Un département emploie généralement plusieurs employés


B.D.Diack/ Consultant Développeur-admin
26
BD
Lien maillé n:m
• Une instance de A peut être associée à
plusieurs instances de B et inversement

B.D.Diack/ Consultant Développeur-admin


27
BD
Lien maillé n:m
• Exemple

• De ce schéma, on déduit qu’un employé peut


participer à plusieurs projets.

B.D.Diack/ Consultant Développeur-admin


28
BD
Exemple de diagramme Entité
Association

B.D.Diack/ Consultant Développeur-admin


29
BD
Avantages et inconvénients du
modèle E/A
• Le modèle Entité/Association est simple et
pratique.
1. Il n’y a que 3 concepts : entités, associations
et attributs.
2. Il est approprié à une représentation
graphique intuitive, même s’il existe beaucoup
de conventions.
3. Il permet de modéliser rapidement des
structures pas trop complexes.
B.D.Diack/ Consultant Développeur-admin
30
BD
Avantages et inconvénients du modèle
E/A
• Il y a malheureusement plusieurs
inconvénients. Tout d’abord il est
non-déterminisme : il n’y a pas de
règle absolue pour déterminer ce qui
est entité, attribut ou relation.

B.D.Diack/ Consultant Développeur-admin


31
BD
Exemple 1
est-il préférable de représenter le metteur en
scène (MES) comme un attribut de Film ou
comme une association avec Artiste?
Réponse : comme une association ! Les
arguments sont les suivants :
1. On connaît alors non seulement le nom, mais aussi
toutes les autres propriétés (prénom, âge, ...).
2. L’entité MES peut-être associée à beaucoup d’autres
films : on permet le partage de l’information.
B.D.Diack/ Consultant Développeur-admin
32
BD
Exemple 2
Est-il indispensable de gérer une entité Horaire ?
Réponse : pas forcément ! Arguments :
Pour. Permet de normaliser les horaires.
Plusieurs séances peuvent alors faire référence
au même horaire (gain de place, facilité de
mise à jour, cohérence, ...)
Contre. On alourdit le schéma inutilement : un
horaire est propre à une séance. On peut le
représenter comme un attribut de Séance.

B.D.Diack/ Consultant Développeur-admin


33
BD
Avantages et inconvénients du modèle
E/A
• Enfin on a vu qu’une association pouvait être
transformée en entité. Un des principaux
inconvénients du modèle E/A reste sa
pauvreté : il est difficile d’exprimer des
contraintes d’intégrité, des structures
complexes.

B.D.Diack/ Consultant Développeur-admin


34
BD
Avantages et inconvénients du modèle
E/A
• Beaucoup d’extensions ont été proposées, mais la
conception de schéma reste en partie matière de
bon sens et d’expérience. On essaie en général :
1. de se ramener à des associations entre 2 entités
: au-delà, on a probablement intérêt a
transformer l’association en entité ;
2. d’éviter toute redondance : une information doit
se trouver en un seul endroit ;
3. enfin – et surtout – de privilégier la simplicité et
la lisibilité, notamment en ne représentant que
ce qui est strictement nécessaire.
B.D.Diack/ Consultant Développeur-admin
35
BD

Vous aimerez peut-être aussi