Fichiers & Base de données

Mariem Farhat Jaouani

Chapitre 4 : Modèle Entité Association

Référence
• Ce cours a été réalisé en se basant sur :
– le cours de L. Nerima Faculté des lettres Université de Genève. – Le cours de Stéphane Crozat - Université de Technologie de Compiègne. – Les notes de cours de Jean Claude Marti – Université des Sciences et technologies de Lille – Le cours de Philippe Rigaux

Mariem FARHAT JAOUANI

2

Introduction
• En anglais: Entity-Relationship (ER) • Origines: C.Bachman (1969), P.Chen (1976). • Modèle de données –> décrire la réalité perçue à travers les données mises en jeu (indépendamment des opérations que l’on effectuera ultérieurement dessus). • But: fournir des outils et un cadre rigoureux pour l’analyse des données et de leurs liaisons.
Mariem FARHAT JAOUANI 3

Concepts
• Concepts de base: entité, association, attribut et valeur (et type de valeur). • Définition: “Une entité est une chose concrète ou abstraite de la réalité perçue à propos de laquelle on veut conserver des informations. Une entité a une existence autonome”. • Exemples: étudiant, toute personne, tout animal, une organisation, tout cours à l’université, • Chaque entité possède des propriétés particulières appelées attributs.
Mariem FARHAT JAOUANI 4

Entité, attribut et valeur
• Définition: “Un attribut est une caractéristique ou une qualité d’une entité ou d’une association”. Il peut prendre une (ou plusieurs) valeur(s)”. • Définition: “Une valeur est un symbole utilisé pour représenter un fait élémentaire”.

Mariem FARHAT JAOUANI

5

Entité, attribut et valeur
• Exemple d’entité avec ses valeurs d’attribut:

Mariem FARHAT JAOUANI

6

Entité, attribut et valeur
• Les attributs peuvent être:
– atomiques. Ex: Prénom, nom, … – composés. Ex:

– monovalué (une seule valeur pour une entité donnée). Ex: Nom, Adresse, Date de naissance. – multivalué (plusieurs valeurs pour une entité donnée). Ex: Prénom, Tél…
Mariem FARHAT JAOUANI 7

Entité, attribut et valeur
• Dans un processus de modélisation on ne s’intéresse pas à chaque entité séparément mais à un type d’entité. • Définition: “Un type d’entité est la classe de toutes les entités de la réalité perçue qui sont de même nature et qui jouent le même rôle”. • Un type d’entité est décrit par:
– un nom – une définition qui précise la signification que nous voulons retenir de ce type d’entité dans le cadre de la base de données. – une liste d’attributs

• Exemple: Le type d’entité “auteur” regroupe des personnes auteur d’articles de journaux caractérisées par leur nom, leur prénom, leur adresse et leur date de naissance. • Simplification de la terminologie:
– on appellera entité un type d’entité – on appellera occurrence d’une entité un individu particulier faisant partie de l’entité.

Mariem FARHAT JAOUANI

8

Entité, type d’entité
• La description d’une entité est appelée le schéma de l’entité ou l’intention de l’entité. • L’ensemble des occurrences d’une entité qui existent (dans la base de données) à un instant particulier dans le temps s’appelle l’extension de l’entité

Mariem FARHAT JAOUANI

9

Entité, type d’entité
• Exemple:

Mariem FARHAT JAOUANI

10

Entité: schéma, intention et extension
• Remarques:
– Le schéma d’une entité ne va pas changer fréquemment car il décrit la structure de l’entité. – L’extension peut changer souvent: à chaque insertion ou suppression d’une occurrence d’entité.

Mariem FARHAT JAOUANI

11

Type de valeur ou domaine d’un attribut
• Définition: “Le type de valeur ou le domaine d’un attribut est la spécification de toutes les valeurs possibles que peut prendre un attribut”. • Utilité:
– vérifier la validité d’une donnée – ultérieurement, estimer la place de stockage des données

• La spécification d’un type de valeur est donnée soit:
– par la liste des valeurs – par la propriété que doivent vérifier les valeurs

• Exemples:
– couleur = {rouge, bleu, jaune, vert} – numéro de journal = entier compris entre 1 et 366 – nom = chaîne de caractères alphabétiques
Mariem FARHAT JAOUANI 12

Identifiant d’une entité
• Contrainte: chaque occurrence d’une entité doit pouvoir être repérée individuellement et distinguée de toutes les • autres –> c’est le rôle de l’identifiant. • Définition: “On appelle attributs clé ou identifiant d’une entité un groupe minimal d’attributs et/ou tel qu’à chaque combinaison de valeurs prises par ce groupe correspond au plus une occurence de cette entité”. • L’identifiant est formé d’un ou plusieurs attributs de l’entité à identifier. • Exemples:
– le nom de l’éditeur est l’attribut clé de l’entité éditeur. – le nom et le prénom de l’auteur sont les attributs clé de l’entité auteur.
Mariem FARHAT JAOUANI 13

Représentation graphique du schéma d’une entité selon Chen
Représentée par un rectangle contenant le nom du type de l'entité et entourée par ses attributs. L’identifiant (un ou plusieurs attriibuts doi(ven)t être souligné(s).

Mariem FARHAT JAOUANI

14

Application
• Optique: conception d’une base de données destinée à conserver des descriptions d’articles parus dans les journaux. • Réalité perçue: (1) Un éditeur édite des journaux. Il est caractérisé par un nom et une adresse. (2) Un journal est édité par un éditeur et publie des articles dans ses numéros. On conservera le nom du journal et le nom de son rédacteur en chef. (3) Un numéro de journal contient une collection d’articles. (4) Chaque article paru dans un numéro est signé par un auteur. On désire conserver le titre et un résumé de l’article ainsi que le nom de son auteur. (5) Les auteurs sont connus par leur nom, leur prénom, leur adresse et leur date de naissance.
Mariem FARHAT JAOUANI 15

Application
• A partir de l’énoncé, Enumérez la liste des entités en précisant pour chacune :
– Le nom, La définition, la liste d’attributs et l’identifiant de l’entité – Exemple

Mariem FARHAT JAOUANI

16

Application
• Et pour chaque attribut, vous spécifiez le nom, la définition, la structure, le domaine de valeurs et si l’attribut est obligatoire ou non

Mariem FARHAT JAOUANI

17

Association
• Définition: “Une association est une correspondance entre deux ou plusieurs occurrences d’entités à propos de laquelle on veut conserver des informations”. • L’existence d’une association est contingente à l’existence des occurences d’entités qu’elle met en correspondance. • Chaque occurrence d’entité joue un rôle particulier dans l’association. • On dit aussi que les occurrences d’entités mises en correspondance par l’association participent à l’association
Mariem FARHAT JAOUANI 18

Association
• Exemple: • L’écriture (association) de l’article “L’ordinateur va-t’il changer notre mode de penser?” par Gustave Moeckli exprime la correspondance qui existe entre Gustave Moeckli et l’article “L’ordinateur...”. • le rôle joué par l’occurence de l’entité auteur Gustave Moeckli: il écrit l’article “L’ordinateur...” • le rôle joué par l’occurrence de l’entité article “L’ordinateur...”: il est écrit par Gustave Moeckli.
Mariem FARHAT JAOUANI 19

Association, type d’association
• Définition: “Un type d’association est la classe de toutes les associations possibles de la réalité perçue qui vérifient la définition constitutive du type”. • Définition constitutive d’un type d’association (schéma):
– un nom et une liste d’entités (non nécessairement distinctes) qui participent au type d’association avec leurs rôles respectifs; notation: A(ro1: E1,ro2: E2,..., ron: En) – notation simplifiée: A(E1, E2,..., En) – une description qui précise la signification que nous voulons retenir de ce type d’association dans le cadre de la base de données.

Mariem FARHAT JAOUANI

20

Association, type d’association
• Exemple: ECRITURE(écrit : AUTEUR, est écrit par : ARTICLE) • Le type d’association ECRITURE exprime le fait qu’un auteur écrit un ou plusieurs articles ou, symétriquement, qu’un article est écrit par un auteur. • Simplification de la terminologie: - on appellera association un type d’association - on appellera occurrence d’association toute correspondance qui existe entre deux ou plusieurs occurrences d’entités.
Mariem FARHAT JAOUANI 21

Extension d’une association
• L’ensemble des occurrences d’une association qui existent (dans la base de données) à un instant particulier dans le temps s’appelle l’extension de l’association.

Mariem FARHAT JAOUANI

22

Extension d’une association
• Exemple: une extension de l’association “écriture”

Mariem FARHAT JAOUANI

23

Représentation graphique du schéma d’une association
– Représentées par un losange contenant le nom de l'association – Souvent nommé par un verbe ou un substantif – Les entités participantes de chaque association sont rattachées à l'association au moyen de lignes continues. – Chacune de ces lignes est étiquetée par la cardinalité et les rôles des entités.
Entité 2
Rôle E2 (min,max) Nom association
Mariem FARHAT JAOUANI

Rôle E1 (min, max)

Entité 1
24

Représentation graphique du schéma d’une association
Personne Propriétaire Possède

Voiture Possédée

fournisseur vendeur

Vend vendu

Produit

Mariem FARHAT JAOUANI

25

Représentation graphique du schéma d’une association
• Le lien (l’arc) n'est pas orienté : les commandes comportent des produits veut dire également que les produits peuvent être commandés.
Commande Comporte Produit

comporte

Est commandé

Mariem FARHAT JAOUANI

26

Degré d’une association
• Degré d’une association: nombre d’entités qui participent à une association • cas fréquent: degré 2 (association binaire) qui relie deux entités. • Exemple : l’association écriture relie les deux entités Article et Auteur; elle est dite binaire.
Auteur

Ecrit

Ecrivain

Article A été écrit

Mariem FARHAT JAOUANI

27

Cardinalité d'une association
• One to one
1
Habite

Personne

habite N
Possède

Adresse Est habité par 1

1

• One to many • Many to many

Personne

possède N vend

Voiture Est possèdé par
M Produit Vendu par

Vendeur

Vend

Mariem FARHAT JAOUANI

28

Cardinalité (min,max)
• But: exprimer le nombre minimum et le nombre maximum de participations de chaque occurrence d’entité à une association. • Exemple:
– on exprime la contrainte que tous les auteurs doivent écrire au moins un article. On écrira min=1 et max=N (N veut dire nombre indéterminé). – on exprime la contrainte que tout article doit être écrit par un et un seul auteur. On écrira min=1 et max=1.
Mariem FARHAT JAOUANI 29

Cardinalité (min,max)
• Plus généralement: • Soit A(ro1: E1, ro2: E2,..., ron: En) une association. La contrainte de cardinalité de A est définie par un ensemble de couple (mini, maxi) 1≤ i ≤n. • Mini: indique le nombre minimum de fois, qu’à tout moment toute occurrence de Ei doit assumer le rôle roi. • Maxi: indique le nombre maximum de fois qu’à tout moment toute occurrence de Ei peut assumer le rôle roi.
Mariem FARHAT JAOUANI 30

Cardinalité (min,max)
Valeur Mini = 0 Signification toute occurrence de Ei peut exister indépendamment de A; on parle de participation partielle de Ei à A (min,max) (min,max) conduire

Personne

(0,

Voiture

Mariem FARHAT JAOUANI

31

Mini = 1

aucune occurrence de Ei ne peut exister indépendamment de A; on parle de participation totale de Ei à A

(min,max)

(min,max) conduire

Personne

(0,

(1,

Voiture

Mariem FARHAT JAOUANI

32

Maxi = k (k>1)

toute occurrence de Ei assume au plus k fois le rôle roi

(min,max)

(min,max) conduire

Personne

(0, 2)

(1, n)

Voiture

Mariem FARHAT JAOUANI

33

Maxi = N

toute occurrence de E peut assumer un nombre non limité de fois le rôle roi

(min,max)

(min,max) conduire

Personne

(0, n)

(1, n)

Voiture

Mariem FARHAT JAOUANI

34

Maxi = 1

toute occurence de Ei assume au plus une fois le rôle roi

(min,max)

(min,max) possède

Personne

(0, n)

(1, 1)

Voiture

Mariem FARHAT JAOUANI

35

Représentation graphique du schéma d’une association
• Exemple: association “écriture”

Une occurrence de l’entité auteur a écrit au moins une fois Une occurrence de l’entité auteur a écrit au plus N fois Une occurrence de l’entité article a été écrite au moins une fois Une occurrence de l’entité article a été écrite au plus une fois

Mariem FARHAT JAOUANI

36

Instance de l’association « écriture »
E1 AR1 AR2 AR3 AR4 E4 AT3 E5 E6 AT4 E7 E8
Mariem FARHAT JAOUANI 37

AT1

E2
E3

AT2

AR5 AR6 AR7

AR8

Application
Donnez le rôle de chaque entité qu’elle joue dans l’association. Expliquez la cardinalité (min, max) de chaque entité en donnant un exemple et déduire le type de l’association.
ville (1,1) capitale (1,1) Pays

Journaliste
Mariem FARHAT JAOUANI

(1,N) travaille (1,N) Journal
38

Application
• Selon le schéma suivant Est-ce qu’:
– un patient peut effectuer plusieurs visites, – un médecin peut recevoir plusieurs patients pendant la même consultation, – un médecin peut prescrire plusieurs médicaments lors d'une même consultation, – deux médecins différents peuvent prescrire le même médicament,
Mariem FARHAT JAOUANI 39

Attributs d’une association
• Une association peut avoir ses attributs propres • Exemple: le nombre de médicament qui a été prescrit dans une consultation • Notation: Prescrit(prescrit : consultation, A été prescrit : médicament, nbrPrise)

Mariem FARHAT JAOUANI

40

Exemple
Code

NbrPrise

Numéro

Médicament

prescrit

Consultation

libellé

Date

• Donnez d’autres exemples

Mariem FARHAT JAOUANI

41

Application
• Schématisez les associations suivantes:
– Un joueur peut participer dans plusieurs match et gagner. On souhaite enregistrer les matchs joués et ceux qui ont été gagné ainsi que le score du match gagné. – Un joueur peut participer dans plusieurs match, il peut perdre ou gagner, on souhaite enregistrer le total des scores des match qu’il a joué. – Un joueur peut participer dans plusieurs match, on souhaite enregistrer la date de chaque match joué.
Mariem FARHAT JAOUANI 42

Identification d’une association
• L’identifiant est implicite. • Par définition, une association est identifiée par l’ensemble des rôles assumés par les entités qu’elle met en correspondance. • Exemple: ECRITURE(écrit: AUTEUR, est écrit par: ARTICLE) Identifiant: (écrit: AUTEUR, est écrit par: ARTICLE)
Mariem FARHAT JAOUANI 43

Cas particulier
• Association (lien) réflexive • Association entre plusieurs entités (plus que deux) • Plusieurs associations entre deux entités

Mariem FARHAT JAOUANI

44

Association (lien) réflexive
• Appelée aussi cyclique ou récursive • Une association "réflexive" est une association qui lie des occurrences d'une même entité entre elles (c'est un cas particulier de la dimension 2) • Exemple: FILIATION(père: PERSONNE, fils: PERSONNE) où dans une occurence d’association une personne Peut assumer un des deux rôles père ou fils.
Mariem FARHAT JAOUANI 45

Représentation graphique d’une association réflexive
Est père de

Personne

Filiation

Est fils de

Mariem FARHAT JAOUANI

46

Exemple
• Exemple d’extension de l’association FILIATION:

• Donnez des exemples d’association réflexive
Mariem FARHAT JAOUANI 47

Association entre plusieurs entités (plus que deux)
• On peut envisager des associations entre plus de deux entités • Même s’il n’y a en principe pas de limite sur le degré d’une association, en pratique on ne va jamais au-delà d’une association entre trois entités. • Qq difficultés:
– elles sont plus difficiles à comprendre, et surtout la signification des cardinalités devient beaucoup plus ambigue. – La définition des contraintes
Mariem FARHAT JAOUANI 48

Association entre plusieurs entités (plus que deux)
• Exemple: un film peut être projeté dans plusieurs salle à certains horaires différentes • Chaque instance de cette association lie un film, un horaire et une salle. • les cardinalités sont, implicitement, (0,N). Il n’est pas possible de dire qu’une entité ne participe qu’une fois à l’association.
horaire Film
Mariem FARHAT JAOUANI

projeté

Salle
49

Association entre plusieurs entités (plus que deux)
• elle ne permet pas d’imposer certaines contraintes comme, par exemple, le fait que dans une salle, pour un horaire donné, il n’y a qu’un seul film. Comme le montre la figure il est tout à fait possible de créer deux liens distincts qui s’appuient sur le même horaire et la même salle.

Mariem FARHAT JAOUANI

50

Association entre plusieurs entités (plus que deux)
• Les associations de degré supérieur à deux sont donc difficiles à manipuler et à interpréter. Il est toujours possible de remplacer cette association par un type d’entité. horaire
(1,n) Film (1,n) réalisé (1,1) (1,1) Salle (1,n)

projection

Scéance
(1,1)

S’effectue
51

Mariem FARHAT JAOUANI

Association entre plusieurs entités (plus que deux)
• Soit A une association entre les types d’entité (E1, E2, …). La transformation de A en type d’entité s’effectue en trois étapes : 1. On attribue un identifiant à A. 2. On crée une association Ai de type (1,n) entre A et chacun des Ei. La contrainte minimale, du côté de A , est toujours à 1.

Mariem FARHAT JAOUANI

52

Association entre plusieurs entités (plus que deux)
• On reprend l’exemple précédant: • L’association projection peut être transformée en un type d’entité Séance. On lui attribue un identifiant idSeance et des associations (1,n) avec Film, Horaire et Salle.

Mariem FARHAT JAOUANI

53

Autre exemple

Mariem FARHAT JAOUANI

54

Plusieurs associations entre deux entités
• On peut définir plusieurs associations entre deux entités qui vont faire correspondre des de différents occurrences • Exemple: Entre deux entités personnes etPersonne voiture on peut définir
(0,n) – Association ‘possède’ qui fait correspondre (0,n) chaque personne aux voitures qu’ils possèdent conduit possède – Association ‘conduire’ qui fait correspondre chaque personne aux différents voitures qu’il peut (1,n) (1,1) conduire Voiture
Mariem FARHAT JAOUANI 55

Exemple
Po1 Po2 Po3 Po4

P1 P2 P3 P4 P5 P6 P7 P8 P9

C1 C2 C3 C4 C5
Mariem FARHAT JAOUANI

V1 V2 V3 V4 V5 V6 V7

56

Mariem FARHAT JAOUANI

57

Application
• Analyser ce schéma et discuter ses cardinalités. • Est-ce qu’un tournoi permet les matchs de double? • Est-ce que les joueurs peuvent gagner des matchs auxquels ils n'ont pas participé • Est-ce que deux matchs différents peuvent se dérouler sur le même terrain à la même heure • pensez vous que ce modèle soit un bon modèle pour la gestion d'un tournoi de tennis?
Mariem FARHAT JAOUANI 58

Application
(1) Un éditeur édite des journaux. Il est caractérisé par un nom et une adresse. (2) Un journal est édité par un éditeur et publie des articles dans ses numéros. On conservera le nom du journal et le nom de son rédacteur en chef. (3) Un numéro de journal contient une collection d’articles. (4) Chaque article paru dans un numéro est signé par un auteur. On désire conserver le titre et un résumé de l’article ainsi que le nom de son auteur. (5) Les auteurs sont connus par leur nom, leur prénom, leur adresse et leur date de naissance.
Mariem FARHAT JAOUANI 59

Application
• A partir de l’énoncé, Enumérez la liste des associations en précisant pour chacune :
– Le nom, La définition, la liste des entités qui participent, les rôles et les cardinalités et la liste des attributs – Exemple

Mariem FARHAT JAOUANI

60

Notion d’entité faible
• Certaines entités dites "faibles" n'existent qu'en référence à d'autres entités dites « forte ». • Une entité de type faible, également appelée entité non identifiée, possède une clé locale (appelée identifiant relatif) qui permet d'identifier une de ses occurrences parmi l'ensemble des occurrences associées à une occurrence de l'entité identifiante. La clé complète d'une entité faible est la concaténation de la clé de l'entité identifiante et de sa clé locale.
Mariem FARHAT JAOUANI 61

Exemple
• L'entité Tâche est complètement dépendante de l'entité Projet et sa clé locale (No_tâche) n'est pas suffisante à l'identifier de façon absolue.
NomProjet N°Projet Projet duréeProjet (1,n) contenir (1,1) N°tâche

Tâche
NomTâche

• Remarque: La cardinalité du rôle de l’entité faible au sein de l’association est (1,1) • Donnez d’autres exemples
Mariem FARHAT JAOUANI

N°Projet

62

• Identifiez les entités faibles dans le schéma suivant et justifier

Mariem FARHAT JAOUANI

63

QCM
S'il existe une occurrence d'association, alors
il existe nécessairement une occurrence de chacune des entités associées. il se peut qu’il n’existe pas d’occurence des entités associées.

Il existe au moins une occurrence de l’une des entités associées
ne peuvent participer à la même occurence de l'association

Deux occurrences d'une entité

Dans certains cas ils peuvent participer dans la mm occurence
Participent chacune dans deux occurrences distinctes de l’association

Mariem FARHAT JAOUANI

64

Conventions graphiques du modèle E.A.

Mariem FARHAT JAOUANI

65

(1) Un éditeur édite des journaux. Il est caractérisé par un nom et une adresse. (2) Un journal est édité par un éditeur et publie des articles dans ses numéros. On conservera le nom du journal et le nom de son rédacteur en chef. (3) Un numéro de journal contient une collection d’articles. (4) Chaque article paru dans un numéro est signé par un auteur. On désire conserver le titre et un résumé de l’article ainsi que le nom de son auteur. (5) Les auteurs sont connus par leur nom, leur prénom, leur adresse et leur date de naissance.
Mariem FARHAT JAOUANI 66

schéma conceptuel de la publication des articles de journaux

(5) Un éditeur édite 1 ou plusieurs journaux. Chaque journal est édité par exactement un éditeur. (6) Chaque journal sort 1 ou plusieurs numéros. Chaque numéro est sorti par exactement un journal. (7) Un numéro regroupe plusieurs articles (éventuellement 0). Un article paraît au moins une fois. Un article est écrit par un seul auteur. Les auteurs écrivent un ou plusieurs articles.
Mariem FARHAT JAOUANI 67

schéma conceptuel de la publication des articles de journaux

• Proposez un diagramme E/A pour l’énoncé.

Mariem FARHAT JAOUANI

68

Généralisation et spécialisation
• La spécialisation est la division d'un ensemble d'entités en sous-classes. • A l'inverse la généralisation est un regroupement d'un ensemble d'entités en une super classe. Le schéma ci-dessous montre la représentation d'une spécialisation/généralisation sur un schéma relationnel (ISA = ... is a ...)  Association ‘IS A’ ou ‘est un’
Mariem FARHAT JAOUANI 69

Héritage
• une entité spécialisée hérite des attributs de l’entité généralisée.

• Il n’y a pas besoin de nouveau identifiant. • Le VACATAIRE dispose de 7 attributs dont 4 par héritage, sa clé est code_ens. Idem pour TITULAIRE (7 > 6)
Mariem FARHAT JAOUANI 70

Contraintes d’intégrité
• But: spécifier des propriétés sémantiques du réel perçu qui ne sont pas exprimables avec le modèle E.A. • Définition: “Une contrainte d’intégrité (C.I.) est une propriété non représentée par les concepts de base du modèle E.A. que doivent satisfaire les données appartenant à la base de données”. • Effet: limiter les occurences possibles des structures d’information.
Mariem FARHAT JAOUANI 71

Contrainte d’intégrité statique / dynamique
• Statique: propriété qui doit être vérifiée à tout moment. • Ex.
– un auteur doit écrire au moins un article (cardinalité) – date de mariage d’une personne >date de naissance

• Dynamique: propriété que doit respecter tout changement d’état de la base de données –> définit les séquences possibles des changements d’état de la BD • Ex.
– le salaire d’un employé ne peut que croître
Mariem FARHAT JAOUANI 72

C.I. statiques obligatoires
• Elles complètent obligatoirement la description d’un schéma. • 3 types de C.I. obligatoires : identification, cardinalité, attribut obligatoire ou facultatif. (1) Contrainte d’identification: • Toute entité ou association doit avoir un identifiant: il permet de repérer de manière univoque chaque occurence de ce type.
Mariem FARHAT JAOUANI 73

C.I. statiques obligatoires
(2) Contrainte de cardinalité(ou de connectivité): Définit le nombre minimum et le nombre maximum de participations de chaque occurrence d’entité à une association. (3) Attribut obligatoire ou facultatif: Un attribut facultatif prend la valeur inexistante s’il n’a pas de sens pour une occurrence d’entité donnée, inconnue si sa valeur n’est pas connue à une date d’observation donnée. • Remarque: Tous les attributs formant un identifiant sont obligatoires.
Mariem FARHAT JAOUANI 74

C.I. statiques facultatives
• Dans la définition de cette entité, il est normal de considérer comme attributs obligatoires :
– – – – – N°AVS, Nom, Prénom, Sexe, adresse;

• comme attribut facultatif : nom de jeune fille–> cet attribut ne prend une valeur que pour les personnes mariées de sexe féminin.
Mariem FARHAT JAOUANI 75

Régles de validation d’un schéma E.A.
• Buts: (1) vérifier la complétude du schéma (2) vérifier la cohérence du schéma (absence de contradictions) (3) mise sous forme canonique du schéma (la forme canonique possède des propriétés très intéressantes pour les bases de données).

Mariem FARHAT JAOUANI

76

la complétude du schéma
• Chaque classe d’objets (entité, association, attribut, ...) possède toutes les propriétés requise par le modèle E.A.

Mariem FARHAT JAOUANI

77

la complétude du schéma

Mariem FARHAT JAOUANI

78

la complétude du schéma

Mariem FARHAT JAOUANI

79

la complétude du schéma

Mariem FARHAT JAOUANI

80

la cohérence du schéma (absence de contradictions)
• A titre d’exemple:

• Avec la C.I. (contrainte d’inclusion): “un sportif de haut niveau ne peut participer à une compétition que s’il est affilié à une association sportive”.
Mariem FARHAT JAOUANI 81

la cohérence du schéma (absence de contradictions)
• incohérence entre les contraintes de cardinalité et la contrainte d’inclusion ! • Remède:
– soit affaiblir la cardinalité du rôle “participe:SPORTIF H.N.” à (0,N) – soit supprimer la contrainte d’inclusion

Mariem FARHAT JAOUANI

82

Mise sous forme canonique d’un schéma
• Buts: la production d’un schéma aussi significatif que Possible • la production d’un schéma stable, c-à-d qui vise à limiter les besoins de restructuration de la base de données lorsque des nouveaux types (entités ou associations) sont introduits • éviter les anomalies de mise à jour de la base de données (lorsque celle-ci sera en exploitation).
Mariem FARHAT JAOUANI 83

Mise sous forme canonique d’un schéma
• Caractéristiques:
– élimination ou contrôle de la redondance – élimination des ambiguïtés.

• Processus à posteriori (généralement):
– application d’une suite de règles sur le schéma conceptuel produit par la modélisation

Mariem FARHAT JAOUANI

84

Règles de mise sous forme canonique n°1 et 2
• Règle n°1: unicité des noms et absence d’homonymes • Chaque objet du schéma (entité, association, attribut, rôle et C.I.) reçoit un nom unique. • La présence d’homonymes provient de:
– on a attribué le même nom à deux objets sémantiques différents –> compléter ou changer le nom – on a modélisé deux fois le même objet sémantique –> éliminer un des objets et restructurer le schéma
Mariem FARHAT JAOUANI 85

Règles de mise sous forme canonique n°1 et 2
• On tolère la présence d’homonymes pour les cas suivants:
– les associations ISA – les attributs “date” – les attributs “nom” (parfois)

Mariem FARHAT JAOUANI

86

Règle n°2: abscence de synonymes
• Deux objets sémantiques équivalents se retrouvent dans le schéma sous des noms différents –> éliminer un des objets et restructurer le schéma

Mariem FARHAT JAOUANI

87

Règle n°3: tout identifiant doit être minima
• Définition: “Si l’identifiant d’une entité ou d’une association est constitué d’un groupe d’attributs et/ou rôles, alors il n’existe pas au sein de ce groupe un sous-groupe qui forme un identifiant”. • Exemple: entité ÉDITEUR
– Le nom d’éditeur permet de déterminer de façon l’adresse de celui-ci l’attribut nom éditeur est lui seul l’identifiant
Mariem FARHAT JAOUANI 88

Règle n°4: mise en évidence des attributs dérivables
• “Un attribut est dérivable si sa valeur peut être calculée à partir de la valeur d’autres attributs”. • Exemples: total, moyenne, écart-type –> donner sous forme de C.I. la règle de calcul

Mariem FARHAT JAOUANI

89

Règle n°5: élimination de structures redondantes
• Attribut redondant avec une association

• Association sémantiquement redondante avec d’autres association

Mariem FARHAT JAOUANI

90

Règle n°5: élimination de structures redondantes
• Contre Exemple:

Mariem FARHAT JAOUANI

91

désagrégation d’une entité
• Une entité est désagrégeable : • lorsqu’au moins un de ses attributs exprime un objet de la réalité perçue représentable sous la forme d’une association ou d’une entité.

Mariem FARHAT JAOUANI

92

désagrégation d’une entité
• lorsqu’il y a un attribut répétitif ou composé

Mariem FARHAT JAOUANI

93

désagrégation d’une entité
• lorsqu’il y a des attributs qui dépendent d’autres attributs non identifiant.

Mariem FARHAT JAOUANI

94

désagrégation d’une entité
• lorsqu’il y a des attributs prenant la valeur “inexistante” en fonction de la valeur des autres attributs.

• Si l’ouvrage est de type livre:
– ISSN et périodicité prennent une valeur inexistante

• Si l’ouvrage est de type revue:
– ISBN, auteur, n°édition, hauteur et largeur prennent une valeur inexistante  désagrégation
Mariem FARHAT JAOUANI 95

désagrégation d’une entité

Mariem FARHAT JAOUANI

96

Mise sous forme canonique
• Mise sous forme canonique = processus de conception • E.A. : modèle sémantique -> mise sous forme canonique ≠ application systématique de règles (comme c’est le cas dans la normalisation relationnelle) • Critères à prendre en compte:
– – – – élimination de la redondance Clarté concision stabilité du schéma
Mariem FARHAT JAOUANI 97

Sign up to vote on this title
UsefulNot useful