Conception d une BdD relationnelle Modèle entités-associations



Documents pareils
Modèle conceptuel : diagramme entité-association

II. Modèle conceptuel le modèle entité-association

BAREME sur 40 points. Informatique - session 2 - Master de psychologie 2006/2007

A. Définition et formalisme

Modélisation Conceptuelle. Partie 2: Le modèle Entité-Association

Rappel sur les bases de données

Langage et Concepts de Programmation Objet. 1 Attributs et Méthodes d instance ou de classe. Travaux Dirigés no2

I4 : Bases de Données

Corrigés des premiers exercices sur les classes

Qu est-ce qu une bonne candidature? La lettre de motivation

Langage SQL : créer et interroger une base

Serena Software. Damien Terrien Solution Architect

ISC Système d Information Architecture et Administration d un SGBD Compléments SQL

Modélisation de bases de données : Le modèle relationnel

Examen Médian - 1 heure 30

PROCEDURE D ACCUEIL. 1 Introduction

Marketing 1 to 1. Gilles Enguehard. DG société Atenys - Conseil & Management. Le marketing one to one. 1. Bref historique

Systèmes d informations nouvelles générations. Répartition, Parallèlisation, hétérogénéité dans les SGBD. Exemple d application d un futur proche

1ère partie Nadine Cullot. Bases de données déductives. Bases de données déductives Introduction et Motivation

lendrevie levy ca tor 11 e édition à l ère numérique accédez aux compléments en ligne testez vos connaissances en ligne

Poker. A rendre pour le 25 avril

Application web de gestion de comptes en banques

TP2_1 DE BUSINESS INTELLIGENCE ISIMA ZZ3 F3

VADE MECUM DEPARTEMENTALES 2015

Plateforme PAYZEN. Définition de Web-services

COMMENT RENSEIGNER LA FICHE PROFIL DE DT ULYSSE?

UE C avancé cours 1: introduction et révisions

JAVA TD0. Prise en main du langage Environnement de base JAVA 1

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

L AUDIT CREDIT. Financez vos projets immobiliers grâce à votre courtier

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril / 15

Synthèse des réponses à la consultation publique sur le Cloud computing lancée par la CNIL d octobre à décembre 2011 et analyse de la CNIL

Les bases de données

LES GRADES PROGRAMME D EXAMEN DE LA CEINTURE JAUNE A LA CEINTURE MARRON

Diagramme de déploiement

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

La stabilité des prix : pourquoi est-elle importante pour vous? Brochure d information destinée aux élèves

CODE PROFESSIONNEL. déontologie. Code de déontologie sur les bases de données comportementales

Table des matières Sources

Institut d Informatique & d Initiative Sociale


TP2 : Client d une BDD SqlServer

Le RC Max Offerte à vie à tous les bons conducteurs 1! Enfin. le bon conducteur indemnisé pour ses blessures par son assurance R.C. Auto!

TP2 DE BUSINESS INTELLIGENCE ISIMA ZZ3 F3

NF26 Data warehouse et Outils Décisionnels Printemps 2010

Cours 02 : Problème général de la programmation linéaire

NOM DE L ELEVE :.. Dossier à rendre complété avant le 16 Mars 2015 (afin de vous éviter le temps des formalités lors de la pré-rentrée).

Economie de l incertain et de l information Partie 1 : Décision en incertain probabilisé Chapitre 1 : Introduction à l incertitude et théorie de

ASSOCIATION DES SERVICES DES AUTOMOBILES VEREINIGUNG DER STRASSENVERKEHRSÄMTER ASSOCIAZIONE DEI SERVIZI DELLA CIRCOLAZIONE

Diatélic DP : télémédecine pour la prévention des aggravations de santé des dialysés à domicile

Espace de stockage intermédiaire. Compte de Messagerie. Communication «Asynchrone» «Compte de Messagerie»

RÉPUBLIQUE ET CANTON DE GENÈVE Echelle des traitements 2015 Valable dès le Office du personnel de l'etat Indexation de 0.

LMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr

Programmation en Java IUT GEII (MC-II1) 1

UML : DIAGRAMME D ETATS

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

C est aussi simple que cela. Les prestations du Help Point

Introduction aux bases de données. Généralités sur les bases de données. Fonctions d'un SGBD. Définitions. Indépendance par rapport aux traitements

BASES DE DONNEES ORIENTEES OBJETS BDA10.1

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour

Corrigés des cas pratiques

DOSSIER sur le transport des élèves à l UNSS

DUT Techniques de commercialisation Mathématiques et statistiques appliquées

PRIME D UNE OPTION D ACHAT OU DE VENTE

Exercices L2 : Les lettres officielles. Plouaret, le 20 octobre Mme la Directrice Restaurant les quatre flots 25 rue des alouettes LANNION

Convention Foyer des Jeunes Travailleurs Institut de Formation de l Artisanat

Plan de cette matinée

Java Licence Professionnelle CISII,

Bases de programmation. Cours 5. Structurer les données

jeudi 19 septembre 2013, Bournezeau Services et Solutions en Carrière

OFPPT ISTA BM. Base de données. Filière : TSTDI

CHARTE INFORMATIQUE LGL

Séminaire «Maîtrise de l information scientifique» Exploitation de l information : optimiser sa gestion documentaire

Design patterns. Design patterns - définition. Design patterns - avantages

# let rec concat l1 l2 = match l1 with [] -> l2 x::l 1 -> x::(concat l 1 l2);; val concat : a list -> a list -> a list = <fun>

Statistique : Résumé de cours et méthodes

CHAPITRE V SELECTION DES CONSULTANTS ET D AUTRES PRESTATAIRES DE SERVICES

TD d économétrie appliquée : Introduction à STATA

Conception des bases de données : Modèle Entité-Association

où «p» représente le nombre de paramètres estimés de la loi de distribution testée sous H 0.

Marketing 1 to 1. Gilles Enguehard. DG société Atenys - Conseil & Management. genguehard@atenys.com

Le Marketing Direct et la relation client

Parcours Génération plus. Bien gérer mon budget pour concrétiser mes projets RETRAITE PRÉVOYANCE SANTÉ ÉPARGNE

CHAPITRE 2. Les variables

Polymorphisme, la classe Object, les package et la visibilité en Java... 1

SQL Historique

Approche Contract First

TD/TP PAC - Programmation n 3

TUYAUX ASTUCES & CONSEILS. Crédits et Emprunts

comptable cours & Applications François Cartier Gep Éditions / Eyrolles Éducation, 2013 ISBN :

TDB-SSI LES EXTENSIONS

Maîtrise Responsabilité Sécurité Contrôle 1

1. Une petite économie ouverte dans un monde de capitaux parfaitement mobiles

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

150 conseils pour payer moins d impôts

P.S.E. 1 ère situation d évaluation

1 Modélisation d une base de données pour une société de bourse

Transcription:

Modèle entités-associations 1. Objectifs et démarche 2. Définition du modèle entités-associations 3. Exemples 4. Passage aux relations 5. Introduction de clés numériques 6. Limitations 1 Objectifs et démarche 1 - Observation de la réalité - Collecte d informations 2 Réflexion et modélisation Méthodologie 3 - Définition des tables (relations) d une BdD relationelle Contraintes : Obtenir une représentation correcte de la réalité Pouvoir faire évoluer facilement la représentation Difficile!! 2

Objectifs et démarche Pourquoi pas une seule table?! (ce serait si simple ) Exemple : bibliothèque Bibli(Titre, Auteur, ISBN,,, Adresse, Date) Problèmes : Un livre peut avoir plusieurs auteurs. Que faire? Duplication de données, ex : adresse d une personne empruntant plusieurs livres. Comment conserver un client qui rend son dernier livre? Bilan : Sémantique des données très mal représentée! (emprunteurs et livres non distincts) il faut définir plusieurs tables/relations 3 Objectifs et démarche Méthodologie de conception de la BdD relationnelle : 1. observation et collecte d informations 2. analyse et modélisation des données en suivant une méthode «concrète, simple, intuitive et non-ambiguë» (!) obtention d un schéma entités-associations 3. génération des tables (relations) de la BdD relationnelle à partir du schéma entités-associations, par une démarche systématique et simple obtention d un schéma relationnel 4

Modèle entités-associations 1. Objectifs et démarche 2. Définition du modèle entités-associations 3. Exemples 4. Passage aux relations 5. Introduction de clés numériques 6. Limitations 5 Définition du modèle entités-associations Concepts de base : Entités : «objets concrets ou abstraits» provenant de l observation du monde réel. Possède un nom : personne, livre, commande, enseignement, Occurrence : instanciation d une entité Attribut : propriété d une entité (nom, couleur, marque,...), il possède un domaine de valeurs. Clé/Identifiant : ensemble minimum d attributs dont les valeurs identifient de façon unique chaque occurrence de l entité. 6

Définition du modèle entités-associations Concepts de base : attributs : String : String Adresse : String NumSecuSociale : int DateNaissance : int entité clé : «Dupont» : «Jean» Adresse : «3 rue» NumSecuSociale : 17204 DateNaissance : 14-04-1972 occurrence 7 Remarque : la CNIL interdit de «ficher» des individus avec leur numéro de sécurité sociale! Définition du modèle entités-associations Concepts de base : Association : relation entre plusieurs entités. 1, 2, ou plus de 2 entités concernées, 2 ou plus de 2 occurrences concernées. Possède un nom : «emprunte», «conduit», Peut posséder des attributs. Voiture Immat : String Type : String Marque : String Couleur : String Association de 2 entités Appartient à Dateachat : int Attribut : String : String Adresse : String Age : int Sexe : String 8

Définition du modèle entités-associations Concepts de base : L association d une entité vers elle-même doit porter sur des occurrences différentes : String : String Adresse : String Age : int Grade : String Est dirigée par 9 Dupond Jean Paris 34 G3 Est dirigée par Durand Jacques Paris 52 G1 Définition du modèle entités-associations Concepts de base : Cardinalité d une association : «min.. max» «Compte le nombre de fois (min et max) où l entité peut se retrouver engagée dans l association» Cardinalité minimum : 0 : peut ne pas être engagée 1 : doit être engagée au moins une fois Cardinalité maximum 1 : ne peut pas être engagée plus d une fois n : peut être engagée plus d une fois min..max min..max 10

Définition du modèle entités-associations Concepts de base : Voiture Immat : String Type : String Marque : String Couleur : String 1..1 Appartient à Dateachat : int : String : String Adresse : String Age : int Sexe : String Une voiture appartient à une personne et une seule : Elle est engagée dans «1..1» association «Appartient à» Une personne peut posséder 0, 1 ou plusieurs voitures : Elle est engagée dans associations «Appartient à» Remarque : les cardinalités du modèle entités-associations semblent parfois «à l envers» 11 Modèle entités-associations 1. Objectifs et démarche 2. Définition du modèle entités-associations 3. Exemples 4. Passage aux relations 5. Introduction de clés numériques 6. Limitations 12

Exemples Exemple : 3 entités reliées par 2 associations Emprunteur : String : String Adresse : String 0..1 Emprunte Date emprunt : Date Livre Titre : String ISBN : String 1..n Est écrit par 1..n Auteur : String : String 13 Exemples Exemple : 2 entités reliées par 2 associations différentes Voiture NV : Int Type : String Marque : String Couleur : String Capacité : Int 1..n Est_conduit Appartient à Dateachat : int 1..1 : String : String Adresse : String 14

Exemples Exemple : associations de plus de 2 entités Plusieurs solutions. Celle-ci montre bien qu un accident s est produit avec «telle» voiture conduite par «telle personne». Accident Numéro : Int Type : String Description : String 1..1 Bing 15 Voiture NV : Int Type : String Marque : String Couleur : String Capacité : Int 1..n Est_conduit 1..1 Appartient à Dateachat : int : String : String Adresse : String Modèle entités-associations 1. Objectifs et démarche 2. Définition du modèle entités-associations 3. Exemples 4. Passage aux relations 5. Introduction de clés numériques 6. Limitations 16

Passage aux relations Principes : La transformation d un schéma entités-associations en un schéma relationnel peut être systématisée E1 0..1-0..1 E2 : ajout à une entité (E1 ou E2) de l identifiant (clé) de l autre et des attributs de l association. E1 0..1-1..1 E2 : ajout à E2 de l identifiant de E1 et des attributs de l association. E1 1..1-1..1 E2 : ajout à une entité (E1 ou E2) de l identifiant de l autre et des attributs de l association. Possibilité de ne faire qu une seule relation. E1 x..1 - y..n E2 : ajout à E1 de l identifiant de E2 ainsi que des attributs de l association. E1 x..n - y..n E2 : l association devient une nouvelle relation (3 relations au final), avec 17 les attributs de l association et les identifiants de E1 et E2. 18 Passage aux relations E1 0..1-0..1 E2 : ajout à une entité (E1 ou E2) de l identifiant (clé) de l autre et des attributs de l association. Si un professeur ne peut diriger au plus qu une seule thèse (à la fois) Relations générées : 0..1 0..1 NuméroEtudiant DateDébutThèse Dirige la thèse de DateDébutThèse Etudiant NuméroEtudiant DernierDiplome Année d étude Etudiant NuméroEtudiant DernierDiplome Année d étude Pb éventuel : Comment représenter un professeur qui ne dirige pas de thèse?

19 Passage aux relations E1 0..1-1..1 E2 : ajout à E2 de l identifiant de E1 et des attributs de l association. Si un professeur ne peut diriger au plus qu une seule thèse (à la fois) Relations générées : 0..1 1..1 Dirige la thèse de DateDébutThèse Doctorant NuméroEtudiant DernierDiplome Année d étude Directeur Directeur Directeur DateDébutThèse Doctorant NuméroEtudiant DernierDiplome Année d étude Passage aux relations E1 1..1-1..1 E2 : ajout à une entité (E1 ou E2) de l identifiant de l autre et des attributs de l association. Possibilité de ne faire qu une seule relation. Si tout professeur enseigne un cours et un seul : 1..1 1..1 Enseigne SalleDeCours OU Cours Titre Domaine Durée Niveau Relations générées : 20 TitreCours SalleDeCours Cours Titre Domaine Durée Niveau TitreCours DomaineCours DuréeCours NiveauCours SalleDeCours Cours Titre Domaine Durée Niveau Si cette entité n est pas engagée dans une autre association

Passage aux relations E1 x..1 - y..n E2 : ajout à E1 de l identifiant de E2 ainsi que des attributs de l association. Si un professeur peut répondre au plus à un appel à projet européen 0..1 Répond à appel à projet DateDeRéponse Appel à projet Référence Domaine Durée Financement Relations générées : 21 Référence DateDeRéponse Appel à projet Référence Domaine Durée Financement Pb éventuel : Comment représenter un professeur qui ne répond pas à un appel? Passage aux relations E1 x..n - y..n E2 : l association devient une nouvelle realtion (3 relations au final). Un professeur a publié plusieurs articles avec des collègues (différents) A publié TempsDeRédaction 1..n Article Titre Revue NbrDePages Date Relations générées : Article Titre Revue NbrDePages Date A-publié Titre Revue TempsDeRédaction 22

Passage aux relations Dans certains modèles entités-associations on définit l association particulière «est_un» (isa). - Ex : «est_un» Etudiants sont des «est_un» - C est une sorte d héritage! - Dans ce cas les entités et Etudiants n ont pas de clé dans le modèle entités-associations, et vont hériter d une clé. - «E1 est_un E2» : se traduit en modèle relationnel par l ajout de la clé de E2 dans la relation E1 (tout simplement!) 23 Modèle entités-associations 1. Objectifs et démarche 2. Définition du modèle entités-associations 3. Exemples 4. Passage aux relations 5. Introduction de clés numériques 6. Limitations 24

Motivation : Introductions de clés numériques Quand la clé est constituée de nombreux attributs il peut être efficace d introduire une clé (artificielle) numérique. Exemple : on veut identifier les employés d une société Idée 1 :clé = numéro de sécurité sociale Identifiant unique pour une personne : parfait Mais la CNIL l interdit!!! Idée 2 :clé = {nom, prénom, adresse, } Assez d attributs pour éviter les confusions Mais les associations vont générer des tables avec bcp d attributs (on reprend les clés des entités) Idée 3 :clé = numéro d employé (créé spécialement) n gérés par la base (incrément automatique) 25 Introductions de clés numériques A Att1 Att2 Att3 Att4 A IdA Att1 Att2 Att3 Att4 Conséquences : 26 A utilisé Date d utilisation A utilisé Date d utilisation B Att-a Att-b Att-c Att-d B IdB Att-a Att-b Att-c Att-d A Att1 Att2 Att3 Att4 A IdA Att1 Att2 Att3 Att4 B Att-a Att-b Att-c Att-d B IdB Att-a Att-b Att-c Att-d A-utilisé Att1 Att2 Att3 Att-a Att-b Att-c Att-d Date-Util A-utilisé IdA IdB Date-Util Tables globalement moins volumineuses Jointures plus rapides : efficacité accrue Mais perte de la 3NF (voir + loin) d autres optimisation ne seront plus possibles ex : table A : Att4 dépend de IdA (la clé) et de {Att 1, Att 2, Att 3}

Modèle entités-associations 1. Objectifs et démarche 2. Définition du modèle entités-associations 3. Exemples 4. Passage aux relations 5. Introduction de clés numériques 6. Limitations 27 Limitations Le modèle relationnel ne prend pas en compte : - Des objets structurés avec leurs opérations associées BdD orientées objets - Des objets peu structurés : texte, sons, images, BdD multimédia - Les techniques d IA déduisant de nouvelles données BdD déductives Le modèle entités-associations est simple mais : - La formalisation est parfois difficile - Pour un même ensemble de données il peut exister différentes modélisations Le passage systématique au modèle relationnel : - Ne donne pas des relations «optimales» et les opérations de mises-à-jour de la base peuvent être inutilement complexes (voir plus loin formes normales) 28