1

Créer des entités : Support de cours

Support de cours : Créer les entités

Pour tracer le schéma conceptuel, on regroupe les métadonnées dans des entités de façon intuitive. En effet, les métadonnées sont les attributs des entités. Au bout d’un moment il reste des métadonnées que l'on n’arrive pas à placer. Il faut alors les laisser de côté car elles dépendent sûrement d'une association. On peut alors déterminer des identifiants pour chaque entité.

Pour vérifier si une métadonnées a bien sa place dans une entitié, on vérifie si la règle "Toutes les propriété d'une entité doivent être en dépendance fonctionnelle avec son identifiant" est bien respectée.

Une fois les entités créées, et les identifiants définis, il peut rester des métadonnées qu'on n'a pas réussi à placer. Il y a alors deux possibilités :

  • soit il faut créer une nouvelle entité,
  • soit il faudra placer ces métadonnées dans des associations (si elles sont en dépendance fonctionnelle avec au moins deux entités. 

Si certaines associations parraissent évidentes, il vaut mieux les créer pour voir s'il n'est pas possible de leur rattacher les métadonnées restantes.

Reprenons notre dictionnaire des données et la description du pour le site sur les animaux :

Ce site a besoin d’une base de données qui stocke des informations sur des espèces d’animaux (identifiant, nom, description, taille moyenne). Il indiquera les différents continents sur lesquels on peut trouver les différentes espèces. Si une espèce vit sur un continent, alors le site indiquera une estimation du nombre d’animaux sur ce continent. Pour chaque espèce, le site disposera d’une ou plusieurs photos. Chaque photo n'illustrera qu'une seule espèce. Les photos ne seront pas stockées directement dans la base de données. Par contre leur url et une description y seront. Voici le dictionnaire des données :

Métadonnées

Type

Description

id_esp

Entier

L’identifiant unique de chaque espèce

nom_esp

Chaine de caractères

Le nom de chaque espèce : par exemple chien, chat

description_esp

Texte long

Texte qui présente chaque espèce

taille_moyenne_esp

Entier

La taille moyenne en cm

continent

Chaine de caractères

Nom d’un continent.

url_photo

Chaine de caractères

url d’une photo pour pouvoir les afficher sur un site. 

Description_photo

Texte long

Texte qui sera affiché sous la photo.

Nombre_spécimen

Entier

Estimation du nombre de spécimens d'une espèce sur un contient. Par exemple : 18000 loups vivent en europe.

 

D'instinct, on peut regrouper les métadonnées qui décrivent les espèces dans une entité "Espèces" avec comme identifiant "id_esp"

Il nous reste alors les métadonnées "continent", 'url_photo", "description_photo" et "nombre de specimen" à placer. La première question que l'on peut se poser est : "faut-il les placer dans l'entité Espèces ?". Pour répondre à cette question, il faut se demander "Est ce que ces métadonnées sont en dépendance fonctionnel avec l'attribut id_esp ?" c'est à dire "Est ce que pour une occurence de l'entité, j'aurais une seule valeur de ces métadonnées ?"

Pour la métadonnées "continent" on a déjà vu que non. En effet, comme une espèce peut vivre sur plusieurs continents, on peut avoir plusieurs valeurs de continent pour une espèce données. Le loup vit en Europe et en Amérique. On ne place donc pas la métadonnée "Continent" dans l'entité "Espèce"

De la même façon, on ne place pas les métadonnées "url_photo" et "description_photo" dans l'entité "Espèces" car la description du site indique qu'il y aura une ou plusieurs photos pour chaque espèce.

Enfin, on a vue que le nombre de spécimens est en dépendance avec à la fois "id_esp" et "continent". On ne peut pas donc pas placer cette métadonnée dans l'entité "Espèces".

 Si on ne peut pas placer ces métadonnées dans l'entité Espèce, que faut il en faire ? Il y a deux possibilités. Soit on crée des entités, soit on les place dans des associations si elles sont en dépendances fonctionnelles avec deux entités.

Les deux métadonnées sur les photos sont clairement liées entre elles. Elles ne sont pas en dépendance fonctionnelle avec les autres métadonnées. On peut donc en créer une entité. Il faut aussi créer un identifiant pour cette entité.

La métadonnées "continent", n'est en dépendance fonctionnelle avec aucune autre entité. Au contraire "nombre_specimen" dépend en partie "Continent" et de Espèces. Si on crée une entité "Continents" alors  "nombre_specimen" sera en dépendance avec deux entités et pourra être placé dans une association. 

Nous avons donc maintenant 3 entités. Nous allons pouvoir les relier grâce à des associations

 



Cours validé