Upload
hakien
View
217
Download
3
Embed Size (px)
Citation preview
Réda DEHAK [email protected] 2012/2013
http://www.lrde.epita.fr/~reda/bdd
Plan
1. Modélisation 2. Modèle E/A
1. Entité, type d’entité, attributs, identifiant 2. Association, type d’association, attributs, identifiant 3. Cardinalités 4. Entité faible 5. Spécialisation 6. Agrégation 7. Contraintes d’intégrités
Réda DEHAK 2
But de la modélisation
• Fournir des outils et un cadre rigoureux pour l’analyse des données et de leurs liaisons.
• Décrire la réalité perçue à travers les données mises en jeu.
• Indépendance par rapport aux opérations que l’on effectuera ultérieurement dessus.
Réda DEHAK 3
Générations des méthodes de modélisation
• 1ère génération : Méthodes d'analyse et de décomposition hiérarchiques – Diviser pour régner (Problème ⇒ Sous problème) – Warnier, SADT, Jackson, De Marco
• 2ème génération : Méthodes d'analyse et de représentation systémiques – Séparation des données et traitements – Merise, Axial, SSADM
• 3ème génération : Méthodes d'analyse et de conception orientées objets – Réconciliation données et traitements – Réutilisation de composants
Réda DEHAK 4
Phases de la conception d’une BD
Réda DEHAK 5
Mini-monde
Recueil et analyse des besoins
Besoins en données Besoins fonctionnels
Conception Analyse fonctionnelle
Schéma conceptuel (dans un modèle de données
de haut niveau)
Définition de transaction de haut niveau
Indépendant du SGBD
Phases de la conception d’une BD
Réda DEHAK 6
Schéma conceptuel (dans un modèle de données
de haut niveau)
Définition de transaction de haut niveau
Conception logique
(Mapping du modèle de données)
Schéma logique (conceptuel)
(Spécifique au SGBD)
Conception physique
Schéma interne
Conception des programmes applicatifs
Implémentation de transaction
Programmes applicatifs
Dépendant du SGBD
Le modèle Entité Association (EA)
• Origines : Peter Chen (1976). • Concepts de base :
– Entité – Type d’entité – Association – Type d’association – Attribut – Valeur – Type de valeur
Réda DEHAK 7
Les outils
• Sybase : Power AMC
• Win’design
• Oracle designer
• Visio
• Rational Rose
• …
Réda DEHAK 8
Exemple
Optique : Conception d’une base de données destinée à conserver des descriptions d’articles parus dans les journaux.
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.
Réda DEHAK 9
Diagramme E/A
Réda DEHAK 10
ARTICLE Titre
Résumé
NUMERO N°
Date
AUTEUR Nom
Prénom
Adresse
Date de naissance
EDITEUR Nom Ed
Adresse
JOURNAL Nom J
EDITEUR EN CHEF
Nom
Prénom
EDITER (1,n) (1,1)
SORTIE
PARUTION RÉDACTION
DIRIGE
(1,n)
(1,1)
(0,n)
(1,n) (1,n)
(1,1)
(1,1)
(1,1)
Plan
1. Modélisation 2. Modèle E/A
1. Entité, type d’entité, attributs, identifiant 2. Association, type d’association, attributs, identifiant 3. Cardinalités 4. Entité faible 5. Spécialisation 6. Agrégation 7. Contraintes d’intégrités
Réda DEHAK 11
Entité
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.
• Entité = chose concrète ou abstraite, objet Exemples : • Chaque crayon qui se trouve sur la table de l’étudiant
Dupont. • Le projet Tiger.
Réda DEHAK 12
Type d’entité
Dans un processus de modélisation, on ne s’intéresse pas à chaque entité séparément mais à un type d’entité.
Définitions: 1. Un type d’entité est la classe de toutes les entités de la
réalité perçue qui sont de même nature est qui jouent le même rôle.
2. 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
Réda DEHAK 13
Attributs
Chaque entité possède ses propriétés particulières appelées attributs.
Définitions : 1. Un attribut est une caractéristique ou une qualité d’une
entité ou d’une association, il peut prendre une (ou plusieurs) valeur (s).
2. Une valeur est un symbole utilisé pour représenter un fait élémentaire.
Réda DEHAK 14
Exemples
• 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.
Par abus de langage :
• Entité ⇔ Type d’entité.
• Une occurrence d’une entité est un individu particulier faisant partie de l’entité.
Réda DEHAK 15
Exemples
Réda DEHAK 16
Entités Attributs Valeurs
Auteurs
Nom Blaise Prénom Pascal, Pierre Adresse Paris Date de
naissance 12 Nov 1842
Attributs atomiques : Nom, Prénom, Adresse
Attributs composés : Date de naissance(jour, mois, année)
Attributs monovalués (Une seule valeur pour une entité donnée) : Nom, Adresse, Date de naissance.
Attributs Multivalués (Plusieurs valeur pour une entité donnée) : Prénom
Diagramme E/A
Réda DEHAK 17
AUTEUR
Nom Prénom adresse
Date de naissance
Jour Mois Année
Exemple
Optique : Conception d’une base de données destinée à conserver des descriptions d’articles parus dans les journaux.
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.
Réda DEHAK 18
Entité : Schéma, Intention et extension
• La description d’une entité est appelée le schéma de l’entité (intension de l’entité).
• L’ensemble des occurrences d’une entité qui existent (dans la base de données) à un instant donné s’appelle l’extension de l’entité.
• Le schéma de l’entité ne va pas changer fréquemment car il représente la structure de l’entité.
Réda DEHAK 19
Exemple
• Schéma, Intension : Auteur(Nom, Prénom, Adresse, Date de naissance)
• Extension :
Réda DEHAK 20
Auteur Nom Prénom Adresse Date de naissance Doignon Jean Paris 14 novembre 1970 Legrand David Londre 12 janvier 1968
Beaudoin David Marseille 24 février 1973 ……………………..
Type de valeur ou domaine d’un attribut
• Le type de valeur ou le domaine d’un attribut est la spécification de toutes les valeurs possibles que peut prendre un attribut.
• Exemples :
– Nom : Chaîne de caractères alphabétiques. – Numéro de journal : entier compris entre 1 et 366. – Couleur : {rouge, bleu, jaune, vert, blanc, noir}
Réda DEHAK 21
Clé d’une entité
• On appelle attributs clé ou identifiant d’une entité un groupe minimal d’attributs (et/ou rôles) tel qu’à chaque combinaison de valeurs prises par ce groupe correspond au plus une occurrence de cette entité.
1. Cas 1 : L’identifiant est formé d’un ou plusieurs attributs de l’entité à identifier.
Nom de l’éditeur est la clé de l’entité éditeur. Nom et prénom sont les attributs clé de l’entité auteur.
2. Cas 2 : on ajoute à l’entité un attribut artificiel, un numéro arbitraire dont l’unicité est garantie
Réda DEHAK 22
Exemple
Réda DEHAK 23
Auteur Nom Prénom Adresse Date de naissance Doignon Jean Paris 14 novembre 1970 Legrand David Londre 12 janvier 1968
Beaudoin David Marseille 24 février 1973 Legrand Christophe Toulouse 13 mars 1976
Diagramme E/A
Réda DEHAK 24
AUTEUR
Nom Prénom adresse
Date de naissance
Jour Mois Année
Exemples
Liste des entités Liste d’attributs auteur nom, prénom, adresse, date de naiss. éditeur nom ed, adresse journal nom j.
rédacteur en chef nom, prénom article titre, résumé
Numéro n°, date
Réda DEHAK 25
Diagramme E/A
Réda DEHAK 26
AUTEUR Nom
Prénom
Adresse
Date de naissance
EDITEUR Nom Ed
Adresse
JOURNAL Nom J
ARTICLE Titre
Résumé
NUMERO N°
Date
EDITEUR EN CHEF
Nom
Prénom
Plan
1. Modélisation 2. Modèle E/A
1. Entité, type d’entité, attributs, identifiant 2. Association, type d’association, attributs, identifiant 3. Cardinalités 4. Entité faible 5. Spécialisation 6. Agrégation 7. Contraintes d’intégrités
Réda DEHAK 27
Association
• Une association est une correspondance entre deux ou plusieurs occurrence d’entités à propos de laquelle on veut conserver des informations.
• L’existence d’une association exige l’existence des occurrences d’entités qu’elle met en correspondance.
• Chaque occurrence d’entité joue un rôle particulier dans l’association.
• On dit que ces occurrences d’entités participent à l’association.
Réda DEHAK 28
Exemples
• Jérôme travaille sur la machine FIDJI L’association TRAVAILLE relie la personne JEROME à la
machine FIDJI. Jérôme : rôle de travailleur Fidji : rôle l’outil de travail
• Le Real de Madrid a battu Juventus au stade Delle Alpi Association BATTRE relie : l’équipe du REAL, l’équipe de
JUVENTUS et le stade DELLE ALPI REAL : rôle équipe gagnante. JUVENTUS : rôle équipe perdante. DELLE ALPI : rôle lieu du match.
Réda DEHAK 29
Association, type d’association
• 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.
Par abus de langage : • Association ⇒ type d’association • Occurrence d’association ⇒ association
Exemple : • Ecriture(Auteur, Article)
Réda DEHAK 30
Diagramme E/A
Réda DEHAK 31
MACHINE N° IP
NOM
Processeur
T. Mémoire
EQUIPE Nom
Adresse
STADE Nom S
Adresse
Nombre de plae
PERSONNE Nom
Prénom
Adresse
Date de naissance
TRAVAILLER Travailleur
Outil
BATTRE
gagnant
perdant
lieu
Degré d’une association
• Nombre d’entité qui participe à une association.
• Exemple : – Ecriture(Auteur, article) degré =2 – Cours(Salle, Groupe, Prof) degré =3
Réda DEHAK 32
Attribut d’une association
Une association peut avoir ses attributs propres.
Exemples : – Commande(Client, Produit, qte) – Cours(Salle, Groupe, Prof, date, durée)
Réda DEHAK 33
Association réflexive
Appelée aussi cyclique ou récursive.
Exemple : – FILIATION(père : PERSONNE, fils : PERSONNE)
Dans une occurrence d’association une personne peut assumer un des deux rôles père ou fils.
– Compose( composant : PRODUIT, composé : PRODUIT)
Réda DEHAK 34
Diagramme E/A
Réda DEHAK 35
personne
nss nom prénom
parents est père ou mère de
Fils, fille
Diagramme E/A
Réda DEHAK 36
produit
nprod nom volume
compose est composé
est composant
Clé de l’association
• L’identifiant de l’association est implicite : – une association est identifiée par l’ensemble des rôles assumés
par les entités qu’elle met en correspondance. – L’identifiant de l’association sera formé par l’ensemble des
identifiants des entités qui participent à l’association.
• Remarque : – Il peut exister qu’une seule occurrence d’association entre les
mêmes occurrences d’entité
Réda DEHAK 37
Diagramme E/A
Réda DEHAK 38
Employe Service
ssn nom prénom
sno budget snom
dirige
depuis
Chef de Est dirigé par
E1
E2
…
En
S1
S2
…
Sn faux
Diagramme E/A
• Jérôme dirige le service administration depuis le 11/01/88 • Jérôme dirige le service scolarité depuis 15/02/90 • …. • Jérôme dirige le service administration depuis le 13/01/09
Réda DEHAK 39
Employe Service
ssn nom prénom
sno budget snom
dirige
depuis
Chef de Est dirigé par
Diagramme E/A
Réda DEHAK 40
musicien
orchestre
instrument Engagement
date
est engagé est joué
engage
M1
M2
O1
O2
I1
I2
I3
I4
faux
Plan
1. Modélisation 2. Modèle E/A
1. Entité, type d’entité, attributs, identifiant 2. Association, type d’association, attributs, identifiant 3. Cardinalités 4. Entité faible 5. Spécialisation 6. Agrégation 7. Contraintes d’intégrités
Réda DEHAK 41
Cardinalité
• Exprime le nombre minimum et le nombre maximum de participations de chaque occurrence d’entité à une association. (min, max)
Réda DEHAK 42
Employe Service dirige Chef de Est dirigé par
E1
E2
E3
E4
S1
S2
S3
S4
(0,n) (1,1)
Cardinalité
• Exprime le nombre minimum et le nombre maximum de participations de chaque occurrence d’entité à une association. (min, max) – Min = 0 : toute occurrence de Ei peut exister indépendamment
de A; Participation partielle de Ei à A. – Min = 1 : Aucune occurrence de Ei ne peut exister
indépendamment de A; Participation totale de Ei à A. – Max = 1 : Toute occurrence de Ei assume au plus une fois le
rôle roi. – Max = k>1 : Toute occurrence de Ei assume au plus k fois le
rôle roi. – Max = n : Toute occurrence de Ei peut assumer un nombre
non limité de fois le rôle roi.
Réda DEHAK 43
Exemples
Réda DEHAK 44
Employe Service
ssn nom prénom sno budget snom
dirige
depuis
Chef de Est dirigé par
(0,1) (1,1)
Client Produit
ssn nom prénom nprod prix pnom
CDE
date
commande Est commandé par
(1,n) (0,n)
qte
Diagramme E/A
Réda DEHAK 45
produit
nprod nom volume
compose est composé
est composant
0,n
0,n
Diagramme E/A
Réda DEHAK 46
personne
nss nom prenom
parents est père ou mère de
Fils, fille
0,n
2,2
Exemple
Optique : Conception d’une base de données destinée à conserver des descriptions d’articles parus dans les journaux.
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.
Réda DEHAK 47
Diagramme E/A
Réda DEHAK 48
ARTICLE Titre
Résumé
NUMERO N°
Date
AUTEUR Nom
Prénom
Adresse
Date de naissance
EDITEUR Nom Ed
Adresse
JOURNAL Nom J
EDITEUR EN CHEF
Nom
Prénom
EDITER (1,n) (1,1)
SORTIE
PARUTION RÉDACTION
DIRIGE
(1,n)
(1,1)
(0,n)
(1,n) (1,n)
(1,1)
(1,1)
(1,1)
Plan
1. Modélisation 2. Modèle E/A
1. Entité, type d’entité, attributs, identifiant 2. Association, type d’association, attributs, identifiant 3. Cardinalités 4. Entité faible 5. Spécialisation 6. Agrégation 7. Contraintes d’intégrités
Réda DEHAK 49
• Ne peut pas être identifiée que par rapport à une autre entité, dite dominante, à laquelle elle se refère. Son identificateur est formé d’un identificateur partiel augmenté de l’identificateur de l’entité dominante.
• Exemple :
Entité faible
Réda DEHAK 50
Chien Personne Propriétaire
nom prénom adresse nom
(1,1) (0,N)
La cardinalité du rôle de l’entité faible au sein de l’association identifiante est (1,1)
Diagramme E/A
Réda DEHAK 51
ARTICLE Titre
Résumé
NUMERO N°
Date
AUTEUR Nom
Prénom
Adresse
Date de naissance
EDITEUR Nom Ed
Adresse
JOURNAL Nom J
EDITEUR EN CHEF
Nom
Prénom
EDITER (1,n) (1,1)
SORTIE
PARUTION RÉDACTION
DIRIGE
(1,n)
(1,1)
(0,n)
(1,n) (1,n)
(1,1)
(1,1)
(1,1)
Diagramme entité association
Réda DEHAK 52
Min,Max E A
Entité
Entité faible
Association
Association identifiante
Attribut
Attribut clé
Attribut multivalué
Attribut composé
Cardinalité
Attribut clé partielle
Plan
1. Modélisation 2. Modèle E/A
1. Entité, type d’entité, attributs, identifiant 2. Association, type d’association, attributs, identifiant 3. Cardinalités 4. Entité faible 5. Spécialisation 6. Agrégation 7. Contraintes d’intégrités
Réda DEHAK 53
Spécialisation
• Une classe d’entité E1 est une spécialisation d’une autre classe d’entités E2 si E2 a les mêmes propriétés que E2 ou plus.
E1 IS-A E2 • Buts:
– Ajouter des attributs spécifiques à une sous classe. – Pour identifier les entités qui participent à une
association.
Réda DEHAK 54
Employé
Cadre
isa
Exemple
Réda DEHAK 55
Employé
Ingénieur Secrétaire Vendeur
isa
nom
N°
Adresse
Salaire
Projet Bureau Bureau Spécialité Région Voiture
Plan
1. Modélisation 2. Modèle E/A
1. Entité, type d’entité, attributs, identifiant 2. Association, type d’association, attributs, identifiant 3. Cardinalités 4. Entité faible 5. Spécialisation 6. Agrégation 7. Contraintes d’intégrités
Réda DEHAK 56
Agrégation
• Est utilisée quand on veut faire participer une association dans une autre.
Réda DEHAK 57
Projet Service
nproj pdebut pbudget sno budget snom
sponsors
depuis
sponsorisé par sponsorise
1,n 0,n
Employé
ssn nom prénom
participe Jusqu’a 0,n
Agrégation
• Est utilisée quand on veut faire participer une association dans une autre.
• Permet d’utiliser une association comme une entité.
Réda DEHAK 58
Plan
1. Modélisation 2. Modèle E/A
1. Entité, type d’entité, attributs, identifiant 2. Association, type d’association, attributs, identifiant 3. Cardinalités 4. Entité faible 5. Spécialisation 6. Agrégation 7. Contraintes d’intégrités
Réda DEHAK 59
Contrainte d’intégrité
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.
But : Spécifier les propriétés du monde réel non exprimable avec le modèle E/A.
Deux types de C.I. : 1. C.I. statique 2. C.I. dynamique
Réda DEHAK 60
Contrainte d’intégrité statique
Une propriété qui doit être vérifiée à tout moment. Exemples : • Un auteur doit écrire au moins un article
(cardinalité). • La date de mariage d’une personne > sa date de
naissance.
Réda DEHAK 61
C.I. statiques (déjà vues)
1. Contrainte d’identification : (obligatoire) Toute entité ou association doit avoir une clé (sous ensemble minimal d’attributs), elle permet de déterminer de manière unique chaque occurrence de ce type.
2. Contrainte de cardinalité : (obligatoire) Définit le nombre minimum et le nombre maximum de participations de chaque occurrence d’entité à une association.
Réda DEHAK 62
C.I. statiques obligatoires (2)
3. Attribut obligatoire et attribut facultatif : (obligatoire) Un attribut facultatif ne prend une valeur que pour certaine occurrence de l’entité ou de l’association.
Réda DEHAK 63
sexe
Personne
NSS nom prénom
adresse
nom jeune fille
Tous les attributs formant une clé sont obligatoires
Contrainte d’intégrité dynamique
Une 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
Exemples : • Le salaire d’un employé ne peut que croître. • Le changement d’état civil d’une personne doit
respecter le graphe de transition suivant :
Réda DEHAK 64
célibataire marié divorcé
veuf
Exercice : Aéroport • Pour les besoins de la gestion d'un aéroport on souhaite mémoriser dans une base de
données les informations nécessaires à la description des faits suivants: – chaque avion géré est identifié par un numéro d'immatriculation. Il est la propriété soit d'une
société, soit d'un particulier: dans les deux cas on doit connaître le nom, l'adresse et le numéro de téléphone du propriétaire, ainsi que la date d'achat de l'avion;
– chaque avion est d'un certain type, celui-ci étant caractérisé par son nom, le nom du constructeur, la puissance du moteur, le nombre de places;
– la maintenance des avions est assurée par les mécaniciens de l'aéroport. Par sécurité, les interventions sont toujours effectuées par deux mécaniciens (l'un répare, l'autre vérifie). Pour toute intervention effectuée, on conserve l'objet de l'intervention, la date et la durée;
– pour chaque mécanicien on connaît son nom, son adresse, son numéro de téléphone et les types d'avion sur lesquels il est habilité à intervenir;
– un certain nombre de pilotes sont enregistrés auprès de l'aéroport pour chaque pilote on connaît son nom, son adresse, son numéro de téléphone, son numéro de brevet de pilote et les types d'avion qu'il est habilité à piloter avec le nombre total de vols qu'il a effectué sur chacun de ces types.
Des questions types auxquelles l'application doit pouvoir répondre sont les suivantes: – liste des avions de la société "Voltige"; – liste des avions propriété de particuliers; – durée totale des interventions faites par le mécanicien Durand au mois d'août; – liste des avions de plus de 4 places, avec le nomdu propriétaire; – liste des interventions (objet, date) faites sur l'avion numéro 3242XZY78K3.
Réda DEHAK 65