TD1 : conception d’une base de données relationnelle
UCBL - Bases de données pour la bioinformatique - janvier 2016
Objectif du TD : modélisation d’une BD, du diagramme E/A au modèle relationnel
Exercice 1 Modélisation conceptuelle
1. Modéliser par un diagramme entité/association (formalisme Merise) les besoins suivants. On cherche
à modéliser les interactions entre animaux de façon très simple (par exemple, pour un jeu éducatif
à destination d’un jeune public). L’animal est le concept principal du modèle. On attribue à chaque
animal un identiant et un nom. Les espèces, et donc les animaux, sont organisées selon différentes
classications1. En général, il existe des rangs taxonomiques (e.g., règne, famille, espèce). Chaque taxon
ou clade (e.g., eucaryotes, chordata, vertébrés) possède un label et appartient à un seul rang. Les taxons
sont organisés sous forme hiérarchique : un taxon peut donc inclure d’autres taxons (ls), et chaque
taxon possède un taxon parent. Une exception pour les taxons aux rangs les plus élevés, qui n’ont
évidemment pas de taxon parent. Un animal appartient à un seul taxon, le plus bas possible dans la
hiérarchie car le plus précis (la hiérarchie permettant ensuite d’accéder aux autres taxons de cet animal).
Dans cette version simpliée, les animaux se divisent en trois catégories selon leur milieu : terrestre,
marin, volant. On considère qu’un animal est forcément associé à l’une des catégories, et qu’il ne peut
pas être rattaché à plusieurs. Pour les animaux volants, on stockera le nombre d’ailes. Les animaux
terrestres possèdent aussi un ou plusieurs modes de déplacement (un type, par exemple marcher ou
ramper, et une description). Dans un système écologique, certains animaux sont des proies tandis que
d’autres sont des prédateurs. En théorie, chaque animal est la proie d’un autre. Pour échapper à ses
prédateurs, un animal dispose éventuellement de moyens de défense (e.g., fuite, venin, camouflage). Les
animaux évoluent dans des zones géographiques, qui se caractérisent par un identiant, un nom, et
des coordonnées (latitude, longitude). On distingue les zones où habitent les animaux pendant une ou
plusieurs saisons, et les zones où se reproduisent les animaux pendant une ou plusieurs saisons. Enn, on
prend en compte les facteurs climatiques, qui sont décrits par un identiant et un nom (e.g., incendie,
sécheresse, inondation). Lorsqu’une zone géographique subit un événement climatique, on stocke la date
de l’événement ainsi qu’une description détaillée.
2. Modier le diagramme pour prendre en compte la contrainte suivante : certains animaux (super-prédateurs)
ne sont jamais des proies.
3. Modier le diagramme pour prendre en compte la contrainte suivante : on souhaite pouvoir dénir des
animaux sans préciser leur catégorie (milieu), et on considère qu’un animal peut avoir plusieurs catégories
(milieux).
4. Modier le diagramme pour prendre en compte la contrainte suivante : on stocke pour un animal donné le
taxon le plus précis. Mais la classication des espèces évolue, et ce taxon diffère selon l’époque. Comment
garder un historique des taxons qui ont été associés à un animal ?
Exercice 2 Modélisation logique
1. Rappeler les trois règles de base pour transformer un diagramme E/A en modèle relationnel.
2. Transformer le diagramme corrigé de l’exercice 1 (sans les contraintes supplémentaires) en modèle rela-
tionnel.
1. La classication des espèces est bien plus complexe en réalité, mais on reste à un niveau basique.
1