Modélisation relationnelle

publicité
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 identifiant et un nom. Les espèces, et donc les animaux, sont organisées selon différentes
classifications1 . 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 (fils), 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 simplifié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 identifiant, 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. Enfin, on
prend en compte les facteurs climatiques, qui sont décrits par un identifiant 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. Modifier le diagramme pour prendre en compte la contrainte suivante : certains animaux (super-prédateurs)
ne sont jamais des proies.
3. Modifier le diagramme pour prendre en compte la contrainte suivante : on souhaite pouvoir définir des
animaux sans préciser leur catégorie (milieu), et on considère qu’un animal peut avoir plusieurs catégories
(milieux).
4. Modifier le diagramme pour prendre en compte la contrainte suivante : on stocke pour un animal donné le
taxon le plus précis. Mais la classification 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 relationnel.
1. La classification des espèces est bien plus complexe en réalité, mais on reste à un niveau basique.
1
Téléchargement