Le modèle Entité-Association

45
Maria Berger - Maîtrise d'AES 1 Le modèle Entité- Association

description

Le modèle Entité-Association. Analyse des systèmes d'information. Compétitivité d'une entreprise déterminées par : Les éléments matériels L'infrastructure Les supports financiers Les éléments intellectuels La compétence des employés La motivation des employés - PowerPoint PPT Presentation

Transcript of Le modèle Entité-Association

Page 1: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES1

Le modèle Entité-Association

Page 2: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES2

Analyse des systèmes d'information

Compétitivité d'une entreprise déterminées par :– Les éléments matériels

L'infrastructure Les supports financiers

– Les éléments intellectuels La compétence des employés La motivation des employés Le recueil et l'exploitation optimale des informations utiles

Implication de tous les employés dans la gestion et l'exploitation des données.

Page 3: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES3

Définitions des S.I.

Une information est un élément qui permet de compléter notre connaissance sur un objet, un évènement, une personne ...

Un système d'information est constitué par l'ensemble des informations relatives à un domaine bien défini.

Un système d'information existe indépendamment des techniques informatiques.

Page 4: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES4

Le modèle entité-association

Modèle le plus connu de la classe des modèles sémantiques.

Modélisation de la sémantique = préoccupation de bon nombre de recherches fin 70-début 80.

Motivation : les systèmes à base de données n'ont qu'une compréhension limitée de la signification des données.

Si les sytèmes en comprenaient un peu plus, ils pourraient répondre de manière plus intelligente aux interactions de l'utilisateur.

Page 5: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES5

Présentation globale de l'approche

Modélisation sémantique caractérisée par les 4 étapes suivantes :– on identifie des concepts sémantiques utiles pour

décrire le système d'informations– on imagine l'ensemble d'objets symboliques qui sont

utilisés pour représenter ces concepts sémantiques – on imagine un ensemble de règles d'intégrité

formelles pour donner une signification à ces objets formels.

– on développe un ensemble d'opérateurs formels pour manipuler ces objets formels.

Page 6: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES6

Présentation globale de l'approche

Concept Définition formelle Exemples

ENTITE un objet que l’on peutdistinguer

Fournisseur, pièce, cargaison,PersonneEmployé, département

P ROPRIETE une information quidécrit une entité

N° fournisseur, qté cargaison,département d’employé, poidsde personne

ASSOCIATION une entité qui permetde connecter 2 entitésou plus

Cargaison( fournisseur-pièce)Affectation( employé-département)

Page 7: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES7

Un aperçu du modèle E-A : les objets sémantiques

Modèle introduit par Chen en 1976, raffiné par Chen et d'autres.

Entité [définition de Chen] :– chose qui peut être identifiée distinctement

Propriété (ou Attribut) :– les entités (et les associations) sont décrites par des propriétés

caractérisées par un nom et un type

Association [définition de Chen] :– Lien entre entités– elle peut être binaire, ternaire, n-aire

Page 8: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES8

Les diagrammes E-A

Les entités– Représentées par un rectangle contenant le nom du

type de l'entité

Les propriétés (ou attributs)– le nom de la propriété écrit dans l'entité ou

l'association correspondante– Les propriétés clés sont soulignées

Page 9: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES9

Les diagrammes E-A

Les associations– Représentées par une ellipse contenant le nom de

l'association– 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é de l'association.

Page 10: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES10

Entité

ENTITE : – Concept :

pourvu d'une existence propre conforme aux besoins de gestion de l'entreprise

– Il peut représenter une notion concrète : CLIENT ou une notion abstraite : PORTEFEUILLE D'ACTIONS

– Synonymes : INDIVUDU, OBJET

Page 11: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES11

Association

ASSOCIATION : – Lien sémantique entre deux ou plusieurs entités. – Le lien n'est pas orienté : les commandes

comportent des produits veut dire également que les produits peuvent être commandés.

– Souvent nommé par un verbe ou un substantif– Synonyme : RELATION

Page 12: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES12

Entités vs Associations

Il est difficile de faire une distinction entre les 2 concepts.

Le même objet peut être vu comme entité par certains utilisateurs et comme association par d'autres.

Exemple : le mariage– association entre deux personnes– une entité à part entière (si l'on veut connaître, par

exemple, le nombre de mariages célébrés dans cette église depuis le début de l'année)

Page 13: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES13

Propriété

PROPRIETE : – Donnée élémentaire permettant de décrire une entité ou une

association. – Cette donnée peut se mesurer par une valeur.– Synonyme : ATTRIBUT

REGLES DE BASE : – Une propriété ne peut pas figurer sur deux objets différents.– Une entité possède au moins une propriété (son identifiant : par

exemple le N° de commande).– Une association peut ne pas avoir de propriété

Page 14: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES14

Un diagramme

Page 15: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES15

OCCURRENCE

OCCURRENCE : – Réalisation particulière d'une entité, propriété ou association. – Synonyme : INSTANCE

Le mot "commande" est donc ambigü : ou bien le concept ou bien l'instance. Si l'on souhaite l'éviter, on peut employer pour les concepts les mots de : ENTITE-TYPE et ASSOCIATION-TYPE.

En pratique, et en l'absence de précision, un mot sera relatif à un concept et lorsque l'on voudra parler d'un individu, on dira occurrence de ...

Page 16: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES16

Les cardinalités

La cardinalité est une notion OBLIGATOIRE du modèle qui permet de résoudre la question de l'anomalie d'une commande qui aurait pris la liberté de ne point comporter de produits.

C'est donc l'expression d'une CONTRAINTE (une "loi") perçue sur le monde, et que l'on écrit dans le modèle. Par exemple, "il n'est pas possible qu'une commande ne concerne aucun produit".

Comme il s'agit d'exprimer des lois, on ne peut pour ce faire qu'utiliser une autre loi :

– Pour une occurence de cette entité, combien y a-t-il d'occurrences de l'association auxquelles cette occurrence d'entité participe, au plus et au moins ?

Page 17: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES17

Cardinalités

Association 1,1– Un client donné ne commande qu'un seul produit.– Un produit donné n'est commandé que par un seul

client.

CLIENT PRODUITCommande1,1 1,1

Page 18: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES18

Cardinalités

Association 1,N– Un client donné commande plusieurs produits.– Un produit donné n'est commandé que par un seul

client.

CLIENT PRODUITCommande1,N 1,1

Page 19: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES19

Cardinalités

Association 0,1– Un client donné commande plusieurs produits.– Un produit donné est commandé au maximum par un

seul client mais peut ne pas être commandé.

CLIENT PRODUITCommande1,N 0,1

Page 20: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES20

Cardinalités

Recette : – Pour calculer la cardinalité, se POSITIONNER sur l'entité

concernée et regarder EN FACE combien de fois l'une de ses occurrences participe à l'association.

– Puis se DEPLACER du côté de l'autre entité et faire la même chose dans l'autre sens.

Page 21: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES21

Cardinalités

CARDINALITES MINIMUM : Valeur Définition Exemple

O Une occurrence de l'entité peut existersans participer à l'association

un produit peutne pas êtrecommandé

1 Une occurrence de l'entité participenécessairement au moins une fois à uneoccurrence d'association

toute commandeconcerne aumoins un produit

CARDINALITES MAXIMUM : Valeur Définition Exemple

1 Une occurrence de l'entitéparticipe au plus une fois

un employé travaille auplus dans un service

N Une occurrence de l'entité peutparticiper plusieurs fois

une commande peutconcerner plusieursproduits

Page 22: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES22

Cardinalités

CONFIGURATIONS POSSIBLES : O,1 Une occurrence participe au moins 0 fois et au plus 1 fois à

l'assocciation1,1 Une occurrence participe exactement 1 fois à l'assocciation0,N Une occurrence peut ne pas participer ou participer

plusieurs fois1,N Une occurrence participe au moins 1 fois, voire plusieurs

Page 23: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES23

Les identifiants

IDENTIFIANT D'ENTITE : – Propriété PARTICULIERE de l'entité telle que pour chacune des valeurs

de cette propriété, il existe une occurrence UNIQUE de l'entité. Remarque :

Si l'on ne sait pas trouver d'identifiant à une entité, c'est qu'elle n'a peut être pas d'existence propre. Il pourrait donc s'agir d'une association.

Présentation : L'identifiant est inscrit en tête de la liste des propriétés et souligné. Dans les modèles très denses il peut suffire à résumer les autres propriétés, pour faciliter la lecture.

Page 24: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES24

Les identifiants

Page 25: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES25

Les identifiants

IDENTIFIANT D'ASSOCIATION : – Une association N'A PAS D'IDENTIFIANT explicite :

l'association dépend des entités qu'elle relie. Son identifiant se déduit par calcul du produit cartésien des identifiants des entités associées.

Exemple : – Pour l'association CONCERNE qui relie

COMMANDE à PRODUIT, l'identifiant est le produit cartésien de N° Commande et N°Produit.

Page 26: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES26

Dimensions d'une association

On appelle DIMENSION d'une association le nombre d'entités qu'elle relie. On dit souvent : son nombre de "pattes".– Remarques :

Il n'existe pas de limite au nombre de pattes d'une association. Cependant, un nombre de pattes élevé est un indice que l'étude a été superficielle et approximative.

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) .

Page 27: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES27

Dimension supérieure à 2 d'une association et cardinalités

Supposons une société immobilière dont l'activité consiste à louer des locaux commerciaux

Remplacer les points d'interrogation par des cardinalités :

Page 28: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES28

Dimension supérieure à 2 d'une association et cardinalités

Supposons qu'il soit nécessaire de "maîtriser les dépenses de santé". Il nous faut savoir ce que font exactement les médecins du Centre Médical.

Remplacer les points d'interrogation par des cardinalités :

Page 29: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES29

Règles de construction du modèle

STATUT ET FONCTION DES REGLES DE CONSTRUCTION EN GENERAL – Elles prescrivent des normes qui assurent que les

définitions des concepts du modèle sont bien respectées.

– Elles concernent donc l'aspect SYNTAXIQUE des schémas.

– Mais un modèle bien formé n'est pas nécessairement convenable. C'est l'aspect SEMANTIQUE.

Page 30: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES30

Règles relatives aux entités

Une entité possède au moins une propriété : son identifiant.

– Permet de garantir que toutes les occurrences d'une entité sont distinctes.

– Chacune des propriétés d'une entité doit caractériser toute occurrence de cette entité de la même manière.

Exemple : Dans une bibliothèque, on gère des ouvrages. Les uns sont achetés en librairie et les autres mis à disposition gratuitement par les éditeurs.

Soit l'entité suivante, qu'en pensez vous ? :

Page 31: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES31

Règles relatives aux associations

S'il existe une occurrence d'association, alors il existe nécessairement une occurrence de chacune des entités associées.

Deux occurrences d'une entité ne peuvent participer à la même occurence de l'association (sauf si l'association est réflexive).

Page 32: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES32

Règles relatives aux propriétés

Une même propriété ne peut figurer que sur UN SEUL objet (que ce soit une entité ou une association).

Une propriété doit être ELEMENTAIRE, atomique, de telle sorte qu'on ne puisse pas la décomposer.

– Il y a deux façons pour une propriété de n'être pas atomique : lorsqu'elle est constituée d'une agrégation de propriétés plus

élémentaires : Domiciliation bancaire est un composé de : Code banque, Code Guichet, N° Compte, Clé

lorsqu'elle admet plusieurs valeurs comme c'est le cas dans une liste : La propriété Enfants pour une Personne est multivaluée et n'est donc pas élémentaire.

Page 33: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES33

Règles relatives aux propriétés

Une propriété doit dépendre PLEINEMENT (c'est- à-dire : de la totalité) de l'identifiant. (éviter des redondances de valeurs dans la base de données.

Une propriété doit dépendre DIRECTEMENT de l'identifiant (c'est-à-dire sans passer par l'intermédiaire d'une autre propriété). Elle vise à empêcher des redondances et permet de mettre au jour une entité qui était imbriquée dans un objet (entité ou association)

33

Page 34: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES34

Passage EA – modèle relationnel

QUEL EST LE PROBLEME ? On ne sait pas implémenter aisément un

modèle Entité-Association dans une machine : – une association de dimension supérieure à 2 doit

être transformée – une association porteuse de données n'est pas

toujours implémentable telle quelle

Page 35: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES35

Passage EA – modèle relationnel

QU'EST-CE QUE LE NIVEAU LOGIQUE ? – Le niveau logique est une REPRESENTATION du système tel

qu'il sera implémenté dans des ordinateurs.

Vu qu'il s'agit d'une représentation, on utilisera également un modèle et :

– il ne faut pas confondre le modèle conceptuel (entité- association par ex.) avec le modèle logique (relationnel par exemple)

– il ne faut pas confondre le modèle logique (relationnel par ex. ) avec son implémentation physique en machine (avec Access ou Oracle par ex.)

Page 36: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES36

Passage EA – modèle relationnel LA SOLUTION CLASSIQUE:

On passe du modèle conceptuel au modèle logique par une opération de TRADUCTION

Page 37: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES37

UNE RELATION

Une RELATION est une partie finie du produit cartésien de n ensembles (ou domaines).

Un attribut prend ses valeurs dans un DOMAINE (soit l'ensemble de ses valeurs possibles)

Page 38: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES38

UNE RELATION

CLE de relation : un attribut particulier tel qu'il ne peut exister qu'une seule valeur de cet attribut pour tous les n-uplets de la table.

– Ressemble donc étrangement à notre définition d'un identifiant. CARDINALITE de relation : le nombre de ses n-uplets

(ou lignes). – Rien à voir donc avec la cardinalitédu modèle entité-

association. DEGRE (ou encore ORDRE, ARITE) de relation : le

nombre d'attributs (ou colonnes). – Rien à voir donc avec la dimension d'une association.

Page 39: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES39

Règles de passage

REGLE N°1 : TOUTE ENTITE DEVIENT UNE RELATION dans laquelle : – les attributs traduisent les propriétés de l'entité– la clé primaire traduit l'identifiant de l'entité

Page 40: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES40

Règles de passage

REGLE N°2 : UNE ASSOCIATION DE DIMENSION 2 AVEC CARDINALITE 1,1 SE REECRIT EN : portant dans la relation fille la clé primaire de la relation mère. L'attribut ainsi ajouté s'appelle clé étrangère. Symbole : #.

Page 41: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES41

Règles de passage

Relation fille

Page 42: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES42

Règles de passage

REGLE N°3 : UNE ASSOCIATION DE DIMENSION 2 AVEC CARDINALITE PLUSIEURS A PLUSIEURS SE REECRIT EN : – créant une relation particulière qui contient comme

attributs les identifiants des 2 entités associées – ces attributs constituent à eux 2 la clé primaire de la

relation ils sont individuellement clés étrangères ajoutant la ou les éventuelles propriétés de l'association à

cette relation.

Page 43: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES43

Règles de passage

Page 44: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES44

Règles de passage

REGLE N°4 : UNE ASSOCIATION DE DIMENSION SUPERIEURE A 2 SE REECRIT SELON LA REGLE 3

Page 45: Le modèle Entité-Association

Maria Berger - Maîtrise d'AES45

Règles de passage : CONCLUSION

Les règles de passage d'un modèle Entité-Association en schéma logique d'une Base de Données Relationnelles sont totalement formalisables (pourvu que le modèle E-A soit au moins en 3ème Forme Normale) – Par conséquent, on peut les automatiser au moyen

d'un programme : c'est ce que font tous les Ateliers de Génie Logiciel qui vous aident à dessiner votre modèle E-A et vous génèrent ensuite tous seuls le schéma de la BD