69
2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 1 Modélisation de données (modèle relationnel)

Embed Size (px)

Citation preview

Page 1: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 1

Modélisation de données(modèle relationnel)

Page 2: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 2

Modélisation de données

• On peut créer un modèle relationnel des données de deux manières:

1. Modèle entité-relation et traduction du modèle entité-relation en modèle relationnel

2. Produit directement un modèle relationnel qui est ensuite raffinné pour s’assurer de sa qualité

• Dans cette partie, on utilisera la deuxième

Page 3: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 3

Normalisation des données

• Permet produire un modèle relationnel de qualité– Sans redondance de données– Base de données facile à mettre à jour et à

interroger

Page 4: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 4

Modèle entité-relation

• Modèle abstrait (conceptuel)• Peut être traduit en un

– Modèle relationnel

– Modèle objet

– Modèle hiérarchique, réseau, XML, etc

• Les algorithmes de traduction du modèle entité-relation en modèle relationnel produise généralement un modèle relationnel normalisé

Page 5: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 5

Identifier les entités

• une relation est un objet d’intérêt pour l’utilisateur du système

• une relation peut représenter un objet physique ou virtuel (artificiel) du monde

• critères de pertinence– la relation a-t-elle une valeur pour le processus

d’affaires?– est-elle référencée par une fonction de maj et une

fonction d’interrogation?– y a-t-il plusieurs instances de l’entité?

Page 6: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 6

Sources pour l’identification des entités

• texte de l’étude de faisabilité

• diagramme des fonctions

• rapport ou autre document que l’on désire informatiser

• procédures

Page 7: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 7

La modélisation dans le processus de développement

Étude de faisabilité

1

Analyse fonctionnelle

2

Réalisation

3

données

fonctions

modèle logiquede données

diagramme desfonctions

ébauche dumodèle

de données

modèlede données

complet

Page 8: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 8

Processus de modélisation

Identifierfonctions et

entités

1

Élaborermodèlelogique

2

Élaborermodèle

physique

3

liste d'entités

liste de fonctions

modèle logiquedes données

modèled'un monde

"idéal"

optimisation dela performance

modèle physiquede données

Page 9: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 9

Modélisation de données et modélisation des fonctions

• le modèle de données et le diagramme des fonctions se développent en parallèle– l’identification d’une relation entraîne

l’identification de fonctions (maj, interrogation)– l’identification d’une fonction entraîne

l’identification de relations

• choisir l’approche la plus naturelle selon le domaine d’application

Page 10: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 10

Exemple d’identification des entités

• “On désire développer un système pour gérer les inscriptions aux cours dans une université. Les cours offerts sont décrits dans l’annuaire de l’université. On désire affecter les cours selon les disponibilités des professeurs, leur compétence et l’accessibilité des cours par session. Un étudiant s’inscrit à un groupe d’un cours pour une session donnée s’il a complété tous ses préalables. On désire également y consigner la note d’un étudiant.”

Page 11: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 11

Exemple candidats d’entité

• “On désire développer un système pour gérer les inscriptions aux cours dans une université. Les cours offerts sont décrits dans l’annuaire de l’université. On désire affecter les cours selon les disponibilités des professeurs, leur compétence et l’accessibilité des cours par session. Un étudiant s’inscrit à un groupe d’un cours pour une session donnée s’il a complété tous ses préalables. On désire également y consigner la note d’un étudiant.”

Page 12: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 12

Exemple d’élicitation de la liste des entités

• inscription – oui (elle a une valeur pour le processus d’affaires)

• cours– oui (valeur, idem)

• université– non– aucune valeur;– le système s’applique toujours à la même université;– si on gérait les cours pour un réseau d’université, ou pour

des programmes multi-universitaires, l’entité université serait alors pertinente)

Page 13: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 13

Exemple d’élicitation de la liste des entités

• annuaire– oui (il a une valeur, il contient la liste des cours)

• professeur– oui (valeur)

• disponibilités des professeurs– c’est un attribut de professeur; il a une valeur pour

gérer l’affectation des cours

• compétence– c’est un attribut de professeur; il a une valeur pour

gérer l’affectation des cours

Page 14: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 14

Exemple d’élicitation de la liste des entités

• accessibilité– oui (valeur pour gérer l’affectation des cours)

• session– non; pas nécessaire de gérer les sessions; il s’agit plutôt

d’un attribut de plusieurs entités

• étudiant– oui (valeur)

• note– oui (valeur)

Page 15: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 15

Exemple d’élicitation de la liste des entités

• groupe– oui (valeur)

• préalables– non (considérons le comme un attribut de

cours)

Page 16: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 16

Représentation graphiquecours

groupe

inscription

professeur

etudiant

accessibilité

annuaire

note

Page 17: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 17

Définition des attributs des entités

• pour chaque attribut, il faut– nom– type– contraintes d’intégrité

• pour l’instant, on se concentre sur le nom• représentation textuelle des attributs d’une

entité– entité(attribut1, ..., attributn)

Page 18: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 18

Exemple d’identification des attributs

• inscription(sigle, session, groupe, matricule)

• cours(sigle, titre, préalables)• annuaire

– c’est un ensemble de cours, donc déjà traité par l’entité cours; on élimine cette entité

• professeur(nom, matricule, salaire, disponibilités, compétences)

Page 19: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 19

Exemple d’identification des attributs

• accessibilité(sigle, session)

• étudiant(matricule, nom, coteZ)

• groupeCours(sigle, session, groupe, matricule)– matricule du prof qui enseigne le cours

Page 20: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 20

Exemple d’identification des attributs

• note (sigle, session, groupe, matricule, note)

• on peut combiner l’entité note avec inscription, car tous les attributs d’inscription sont inclus dans note

• inscription(sigle, session, groupe, matricule,note)

Page 21: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 21

Le modèle logique de gestion des cours avant normalisation

sigletitrepréalables

cours

siglesessiongroupematricule

groupeCours

siglesessionmatriculegroupenote

inscription

matriculenomsalairecompétencesdisponibilités

professeur

matriculenomcoteZ

etudiant

siglesession

accessibilité

Clé étrangère

Page 22: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 22

Normalisation des entités

• la normalisation des entités permet d’obtenir un schéma de BD relationnelle de bonne qualité

• la normalisation– minimise la redondance des données– facilite la mise à jour des données– facilite l’interrogation des données

Page 23: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 23

Formes normales

• une forme normale dénote un niveau de normalisation pour une entité

• il existe plusieurs formes normales– 1FN, 2FN, 3FN, BCNF, 4FN, 5FN

• on a– 1FN– BCNF 3FN 2FN – 5FN 4FN

• la plus courante est la 3FN• les deux premières (1FN et 2FN) sont à éviter

Page 24: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 24

Définition de 1FN

• Une relation E est en 1FN (première forme normale) ssi tous les attributs de E sont scalaires– attribut scalaire : attribut dont le type est

élémentaire (char, varchar, numeric, etc)– attribut vectoriel : ensemble, liste (c-à-d une

structure comportant des répétitions)

Page 25: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 25

Exemples et contre-exemples de 1FN

• les relations groupeCours, inscription, étudiant, et accessibilité sont en 1FN

• la relation cours n’est pas en 1FN, car l’attribut préalables est un ensemble de sigles

• la relation professeur n’est pas en 1FN, car les attributs compétences et disponibilités sont des ensembles

Page 26: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 26

Normalisation en 1FN

• si une relation E1 n’est pas en 1FN, on la normalise en créant une nouvelle relation E2 pour chaque attribut vectoriel

• les attributs de E2 sont :

– la clé primaire de E1

– les attributs des éléments de la structure vectorielle

• on enlève de la relation E1 les attributs vectoriel

Page 27: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 27

Normalisation en 1FN de cours

sigle titre préalablesIFT286 Lab. de BD IFT178

IFT486 BDIFT286IFT339

cours

courssigle titreIFT286 Lab. de BD

IFT486 BD

Page 28: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 28

Normalisation en 1FN de professeur

matricule salaire nom1 35 000 $ xyz2 25 000 $ abc

professeur

matricule salaire nom disponibilités compétences

1 35 000 $ xyzA01E02

IFT286IFT339

2 25 000 $ abc H01 IFT178

professeur

matricule session1 A011 E022 H01

disponibilitésmatricule sigle

1 IFT2861 IFT3392 IFT178

compétences

Page 29: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 29

Le modèle logique de cours après normalisation en 1FN

sigletitre

cours

siglesiglePrealable

prealableCours

siglesessiongroupematricule

groupeCours

siglesessionmatriculegroupenote

inscription

matriculesalairenom

professeur

matriculecoteZnom

etudiant

siglematricule

competence

matriculesession

disponibilite

siglesession

accessibilité

Page 30: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 30

Pourquoi normaliser en 1FN?

• parce que le modèle relationnel ne permet pas de stocker une structure vectorielle dans un attribut d’une table

• d’autres modèles permettent les répétitions– modèle relationnel étendu ou relationnel objet

(SQL3)– modèle orienté objets

Page 31: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 31

Dépendance fonctionnelle

• les définitions de 2FN, 3FN, BCNF reposent sur la notion de dépendance fonctionnelle

• une dépendance fonctionnelle est une fonction entre des listes d’attributs

• on dénote une dépendance fonctionnelle comme suit :

(A1, ..., An) An+1

on dit que

An+1 dépend de A1, ..., An

Page 32: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 32

Que représente une dépendance fonctionnelle?

• c’est une fonction, donc elle associe à une liste de valeurs des attributs A1, ..., An une et une seule valeur dans An+1

• exemple– dans une université, étant donné le matricule d’un étudiant, on

peut donner son nom

– il existe donc une dépendance fonctionnelle entre matricule et nom

matricule nom

– l’inverse n’est pas vrai : étant donné un nom, on ne peut déterminer le matricule d’un étudiant, car il peut y avoir plusieurs matricules, puisque plusieurs étudiants peuvent avoir le même nom

Page 33: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 33

Que représente une dépendance fonctionnelle?

• attention! la dépendance matricule nomne signifie pas que le nom associé à un matricule ne change jamais; le nom peut changer, mais, en tout temps, on peut déterminer le nom d’un étudiant à partir de son matricule

• cela ne signifie pas non plus que si on a deux matricules différents, alors leurs noms associés doivent être différents

• cela signifie que deux étudiants ne peuvent avoir le même matricule

Page 34: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 34

Dépendance fonctionnelle minimale

• si(A1, ..., An) B

alors on a aussi(A1, ..., An, An+1) B

• pour les fins de normalisation, on considère seulement les dépendances qui sont minimales selon la liste de gauche

Page 35: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 35

Dépendance fonctionnelle et clé candidate

• s’il existe une dépendance fonctionnelle minimale entre (A1, ..., An) et tous les autres attributs de la relation, alors on peut conclure que (A1, ..., An) est une clé candidate

• une dépendance fonctionnelle sera donc traduite en une contrainte primary key ou unique

Page 36: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 36

Quelques lois sur les dépendances fonctionnelles

Page 37: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 37

Comment déterminer les dépendances fonctionnelles?

• les dépendances fonctionnelles sont des contraintes du domaine d’application

• on les détermine à partir de notre connaissance des faits (règles, conditions, etc) du domaine d’application

• on peut déterminer s’il y a une dépendance fonctionnelle (A1, ..., An) An+1 en répondant à la question suivante:– étant donné une liste de valeurs pour A1, ..., An , peut-

on toujours associer une et une seule valeur pour An+1?

Page 38: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 38

Représentation graphique

• sigle titre

• (sigle,session,groupe) matricule

sigle titre

sigle session groupe matricule

Page 39: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 39

Exercice

• identifiez les dépendances fonctionnelles entre les attributs suivants– sigle, titre, matricule, nom, session, groupe,

note, salaire, coteZ

Page 40: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 40

Définition de 2FN

• une relation E est en deuxième forme normale ssi tous les attributs non premiers de E sont en dépendance fonctionnelle complète de chaque clé candidate de E– attribut premier : attribut d’une clé candidate– dépendance fonctionnelle complète : l’attribut

dépend de toute la clé (c-à-d il n’existe pas de dépendance fonctionnelle entre une partie d’une clé candidate et un attribut non premier)

Page 41: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 41

Modèle logique de courssigletitre

cours

siglesiglePrealable

prealableCours

siglesessiongroupematricule

groupeCours

siglesessionmatriculegroupenote

inscription

matriculesalairenom

professeur

matriculecoteZnom

etudiant

siglematricule

competence

matriculesession

disponibilite

siglesession

accessibilité

Page 42: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 42

Exemples de 2FN

• les relations suivantes sont en 2FN

– cours– prealablesCours– accessibilité– groupeCours– inscription

– professeur– competence– disponibilite– etudiant

Page 43: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 43

Contre-exemple de 2FN

une entité E est en deuxième forme normale ssi tous les attributs non premiers de E sont en dépendance fonctionnelle complète de chaque clé candidate de E

sigle session groupe matricule titre nom

titre ne dépend pas de toute la clé; il dépend seulement de sigle

Page 44: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 44

Normalisation en 2FN

• les attributs non premiers en dépendance partielle sont extraits– pour former une nouvelle relation

ou bien– sont ajoutés à une relation ayant une clé

primaire appropriée

Page 45: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 45

Exemples de normalisation en 2FN

A1 A2 A3 A4 A5

la relation n’est pas en 2NF car- la clé est (A1,A2)- A5 est non premier- A5 dépend seulement de A2

A1 A2 A3 A4 A2 A5

Page 46: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 46

Sont-elles en 2NF?

A1 A2 A3 A4 A5

oui- il y a deux clés candidates (A1,A2) et (A5)-seuls A3 et A4 sont non premiers-A3 et A4 dépendent complètement de toutes les clés candidates

A1 A2 A3 A4 A5

oui- il y a trois clés candidates (A1,A2), (A5), (A2)-seuls A3 et A4 sont non premiers-A3 et A4 dépendent complètement de toutes les clés candidates

Page 47: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 47

Pourquoi normaliser en 2FN?

• parce que cela élimine la redondance des données

• cela assure une meilleure intégrité des données tout en simplifiant les mise à jour

• on ne perd aucune information; on peut recréer la relation originale avec une jointure des deux relations normalisées

Page 48: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 48

Définition de 3FN

• Une relation E est en troisième forme normale ssi pour toute dépendance fonctionnelle X A de E, une des conditions suivantes est satisfaite:– X est une super clé– A est un attribut premier

• super clé : liste d’attributs contenant une clé candidate

Page 49: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 49

Exemples de 3FN

• les relations suivantes sont en 3FN

– cours– prealablesCours– accessibilité– groupeCours– inscription

– professeur– competence– disponibilite– etudiant

Page 50: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 50

Contre-exemple de 3FN

sigle session groupe matricule nom

Une relation E est en troisième forme normale ssi pour toute dépendance fonctionnelle X A de E, une des conditions suivantes est satisfaite:

–X est une super clé

–A est un attribut premier

cette relation n’est pas 3FN car :• matricule n’est pas une super clé• nom n’est pas premier

Page 51: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 51

Normalisation en 3FN

A1 A2 A3 A4 A5

A1 A2 A3 A4 A4 A5

A4 A6

A6

Page 52: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 52

Pourquoi normaliser en 3FN

• comme pour la 2FN– parce que cela élimine la redondance des

données– cela assure une meilleure intégrité des données

tout en simplifiant les mise à jour

• on ne perd aucune information; on peut recréer la relation originale avec une jointure des deux relations normaliées

Page 53: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 53

Définition de BCNF

• Une relation E est en forme normale de Boyce-Codd ssi pour toute dépendance fonctionnelle X A de E, la condition suivante est satisfaite:– X est une super clé

Page 54: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 54

Exemples de BCNF

• les relations suivantes sont en BCNF

– cours– prealablesCours– accessibilité– groupeCours– inscription

– professeur– competence– disponibilite– etudiant

Page 55: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 55

Contre-exemple de BCNF

• supposons qu’une institution d’enseignement décerne un seul diplôme (SEC, DEC, ou BAC) et qu’une personne obtient un diplôme d’une et une seule institution; on a les DF suivantes– (personne,diplôme) institution– institution diplôme

Page 56: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 56

Contre-exemple de BCNF

personne diplôme institution

cette entité n’est pas en BCNF, car il y a la DF institution diplôme,et institution n’est pas une super clé

Une entité E est en forme normale de Boyce-Codd ssi pour toute dépendance fonctionnelle X A de E, la condition suivante est satisfaite:

–X est une super clé

Page 57: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 57

Normalisation en BCNF

personne diplôme institution

personne institution diplôme institution

note:- on ne perd pas d’information,- on diminue la redondance-on perd une contrainte d’intégrité (personne,diplôme) institution

Page 58: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 58

Définition de 5FN

• Une relation E est en cinquième forme normale ssi E ne peut être obtenue par une jointure de relations E1, ..., En telle que l’une des Ei n’est pas une clé de E

• la quatrième forme normale est un cas particulier de 5FN; nous omettons sa définition

Page 59: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 59

Exemple de 5FN

• les relations suivantes sont en 5FN

– cours– prealablesCours– accessibilité– groupeCours– inscription

– professeur– competence– disponibilite– etudiant

Page 60: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 60

Contre-exemple de 5FN

• offreDeCours(sigle,session,matricule) représente le fait qu’un professeur peut enseigner le cours à une session donnée

• cette relation peut être obtenue par la jointure des 3 relations suivantes:– disponibilité(matricule, session)– compétence(matricule, sigle)– accessibilite(sigle, session)

Page 61: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 61

Contre-exemple de 5FN

sigle sessionIFT286 H01IFT286 E01

accessibilitématricule session

1 E012 E01

disponibilitématricule sigle

1 IFT2862 IFT286

compétence

sigle session matriculeIFT286 E01 1IFT286 E01 2

offreDeCours

=

Page 62: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 62

Normalisation en 5FN

sigle session matriculeoffreDeCours

sigle sessionaccessibilité

matricule sessiondisponibilité

matricule siglecompétence

Page 63: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 63

Normalisation vs Modèle ER

• Il arrive parfois que la traduction d’un modèle ER ne donne pas un modèle relationnel normalisé

• Exercice– Produisez le modèle ER du système de gestion des

inscriptions aux cours

– Traduisez votre modèle en modèle relationnel

– Comparez le modèle relationnel obtenu avec le modèle normalisé

Page 64: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 64

Modèle ER (erroné) de la gestion des cours

cours

sigle titre préalables session

sessionaccessibilité

professeur

donne

étudiant

inscrit

N N

N

1

(1,n)

(1,n)

(1,n)

groupe matricule

nomcoteZ

matricule disponibilités

compétences

notegroupe

Page 65: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 65

Modèle relationnel obtenu par traduction

sigletitre

cours

siglesiglePrealable

prealableCours

siglesessiongroupematricule

groupeCours

siglesessionmatriculegroupenote

inscription

matriculesalairenom

professeur

matriculecoteZnom

etudiant

siglematricule

competence

matriculesession

disponibilite

siglesession

accessibilité

Page 66: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 66

Modèle logique nornalisé de la gestion des cours

sigletitre

cours

siglesiglePrealable

prealableCours

siglesessiongroupematricule

groupeCours

siglesessionmatriculegroupenote

inscription

matriculesalairenom

professeur

matriculecoteZnom

etudiant

siglematricule

competence

matriculesession

disponibilite

siglesession

accessibilité

Page 67: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 67

Modèle ER correspondant au modèle normalisé

cours

sigle titre préalables session

sessionaccessibilité

professeur

donneétudiant

N N

N

1

groupe

matricule

nom coteZ

matricule disponibilités

compétences

note

groupe

affecte1

Ninscription

1N N

sigle

session

matricule

clé

1

1

N

Page 68: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 68

Modèle UML correspondant au modèle normalisé

accessibilité

session (c1)

Session

note

Inscription

groupe (cp1)

GroupeCours

sigle (c1)titre

Cours0..*

affecte0..1

matricule (c1)coteZnom

Etudiant

matricule (c1)salairenom

Professeurcompétences disponibilités

0..*

0..* 0..*

0..*

0..*

Page 69: 2012/03/12 1 Modélisation de données (modèle relationnel)

2012/03/12 69

Modèle ER avec une notation adaptée

cours

sigle titre préalables session

sessionaccessibilité

professeur

donneétudiant

N N

N

1

groupe

matricule

nom coteZ

matricule disponibilités

compétences

note

groupe

affecte1

N

(0,n)

inscrit

(0,n)

(0,n)