Conception des bases de données avec merise. Partie I. Abdelfettah IDRI

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

Rappel sur les bases de données

I4 : Bases de Données

DEVAKI NEXTOBJET PRESENTATION. Devaki Nextobjects est un projet sous license GNU/Public.

Conception d une base de données

CQP ADMINISTRATEUR DE BASES DE DONNÉES (ABD)

Modélisation des données

Le Langage De Description De Données(LDD)

Cours 6. Sécurisation d un SGBD. DBA - M1ASR - Université Evry 1

Création et Gestion des tables

MERISE. Modélisation de Systèmes d Information. Pierre Gérard. DUT Informatique 2ème année 2004/2005. IUT de Villetaneuse - Université de Paris 13

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

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

Information utiles. webpage : Google+ : digiusto/

Méthode d analyse Merise

Optimisations des SGBDR. Étude de cas : MySQL

Bases de Données Avancées

BASES DE DONNÉES. CNAM Centre associé de Clermont-Ferrand Cycle A Année J. Darmont I. INTRODUCTION II. LES SYSTÈMES HIÉRARCHIQUES

Dossier I Découverte de Base d Open Office

GUIDE DE DEMARRAGE V1.02

CONCEPTION Support de cours n 3 DE BASES DE DONNEES

Bases de données Cours 1 : Généralités sur les bases de données

Introduction aux bases de données Cours 1 : Généralités sur les bases de données

Modèle conceptuel : diagramme entité-association

Introduction aux Bases de Données

Concevoir un modèle de données Gestion des clients et des visites

Les bases de données

Les bases de données Page 1 / 8

Cours de bases de données. Philippe Rigaux

Bases de Données relationnelles et leurs systèmes de Gestion

Bases de données. Chapitre 1. Introduction

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

Langage SQL : créer et interroger une base

Conception, architecture et urbanisation des systèmes d information

Application web de gestion de comptes en banques

SQL SERVER 2008, BUSINESS INTELLIGENCE

Cours Bases de données

Du 10 Fév. au 14 Mars 2014

Introduction aux Bases de Données

Présentation du module Base de données spatio-temporelles

Table des matières. Avant-propos

Tickets 3:3. ChevauxPartants

Bases de données relationnelles

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Vincent Augusto

Base de Données et Langage SQL

Cours Base de données relationnelles. M. Boughanem, IUP STRI

UNIVERSITE DE CONSTANTINE 1 FACULTE DES SIENCES DE LA TECHNOLOGIE DEPARTEMENT D ELECTRONIQUE 3 ème année LMD ELECTRONIQUE MEDICALE

Nom de l application

1 Introduction et installation

Mercredi 15 Janvier 2014

CHAPITRE 1. Introduction aux bases de données

INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES. 2. Les questions sont indépendantes les unes des autres.

Gestion des bases de données (1 ère partie)

NF26 Data warehouse et Outils Décisionnels Printemps 2010

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

Bases de données Outils de gestion

INTRODUCTION AUX BASES de DONNEES

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

IFT3030 Base de données. Chapitre 2 Architecture d une base de données

Bases de données élémentaires Maude Manouvrier

Débuter avec EXPRESS. Alain Plantec. 1 Schema 2

Chaîne opératoire de réalisation d une base de données. ANF «Comment concevoir une base de données» (29-30/01/2015)

Faculté des sciences de gestion et sciences économiques BASE DE DONNEES

CREATION WEB DYNAMIQUE

MASTER II ECONOMIE ET GESTION Spécialité Management des Organisations de la Neteconomie

Objectifs du TP : Initiation à Access

Olivier Mondet

Merise. Introduction

Réalisation d une première base de données (Tutoriel - version 4.2 ; 19 septembre 2014)

Comprendre Merise et la modélisation des données

Structure fonctionnelle d un SGBD

1/ Présentation de SQL Server :

Développement de base de données Microsoft SQL Server Durée : 5 jours Référence : DPSQL12. Contenu

Auto-évaluation Oracle: cours de base

Introduction aux bases de données: application en biologie

GUIDE PRATIQUE MODÈLE CONCEPTUEL DES DONNÉES MODÈLE LOGIQUE DES DONNÉES STANDARD MODÈLE LOGIQUE DES DONNÉES OPTIMISÉ

Utiliser Access ou Excel pour gérer vos données

Le modèle de données

16H Cours / 18H TD / 20H TP

UE 8 Systèmes d information de gestion Le programme

Bases de données relationnelles & SQL

MERISE. Modélisation et Conception de Systèmes d Information

La problématique de la Préservation des Bases de Données. Olivier ROUCHON CINES Groupe PIN Jeudi 7 Octobre

Le langage SQL (première partie) c Olivier Caron

Bases de Données. Plan

Master I Génie Logiciel

PHP 5. La base de données MySql. A. Belaïd 1

Bases de données avancées Introduction

Systèmes d information et bases de données (niveau 1)

Ecole des Hautes Etudes Commerciales HEC Alger. par Amina GACEM. Module Informatique 1ière Année Master Sciences Commerciales

TP Contraintes - Triggers

Introduction aux bases de données

Big Data. Cyril Amsellem Consultant avant-vente. 16 juin Talend

OMGL6 Dossier de Spécifications

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

Chapitre 1 Généralités sur les bases de données

PROJET DE PORTAIL INTRANET YNNA

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Bases de données relationnelles : Introduction

Transcription:

Conception des bases de données avec merise Partie I Abdelfettah IDRI

plan Le modèle conceptuel de données MCD Le modèle logique de données relationnelles MLDR Le modèle physique de données MPD Langage SQL

Cycle d abstraction Système d information manuel Expression des besoins (CPS) Abstraction Spécifications Fonctionnelles Détaillées Conception MCD MLDR MPD Implémentation Tests Déploiement Système d information automatisé Instanciation

Base de données / Fichier plat SQL PARSER EXECUTER TABLE CACHE TABLES Fonctionnement d un SGBD (DBMS) DISKS

Base de données / Fichier plat Utilisateur : sécurité niveau utilisateur Transactions : exécution d une séquence de requêtes sous forme d un seul lot logique élémentaire Tables : tout est basé sur la table Cache : Performance (exécution) et scalabilité Disque : persistance

Base de données / Fichier plat Vitesse Stockage Persistance Temps d accès Taille du Block Mémoire versus Disque Mémoire 1000 fois rapide que le disque Disque 100 fois plus spacieux au même coût Mémoire volatile, disque persistant Ns vs ms 4 KB / word

Base de données / Fichier plat Gestion et structuration du stockage sur le disque Indexation Tables de hachage (Hash Tables) Arbres binaires (Binary trees)

Base de données / Fichier plat Tables de hachage (Hash Tables) Fonction de Hachage Buckets L objectif est d identifier le «bucket» contenant l information ciblée.

Base de données / Fichier plat Identificateur (clé) 1 N1, P1, DN1 2 N2, P2, DN2 3 N3, P3, DN3 4 N4, P4, DN4 Etudiant (nom, prénom, date de naissance)

Base de données / Fichier plat Fonction de hachage: f(id) = id 1 2 4 3 Store hash 1 2 3 4 1 2 3 4

Base de données / Fichier plat Identificateur (clé) 1 N1, P1, DN1 2 N2, P2, DN2 3 N3, P3, DN3 4 N4, P4, DN4 5 N5, P5, DN5 6 N6, P6, DN6 10 N10, P10, DN10 12 N12, P12, DN12 Etudiant (nom, prénom, date de naissance)

Base de données / Fichier plat Fonction de hachage: f(id) = id mod 4 5 10 12 6 Store hash 1 2 3 0 Nouvellement ajoutés 1 2 3 4 5 10 12 6

Base de données / Avantages Flexibilité : séparation des données du programme de traitement indépendance du stockage disque et de modifications des données au niveau DB Accès rapide : une seule base de données logique et intégrée (tables liées logiquement) avec SQL on peut formuler des requêtes complexes Accès concurrent Stockage optimisé (non redondant) Accès Sécurisé

Analyse des besoins Transformation de l information relative au système à analyser en un texte simple et claire Modélisation sur la base de cette spécification fonctionnelle Spécification fonctionnelle = contrat ou lien entre l informaticien et l utilisateur Modéliser en termes d entités

Conception : MCD Entité Propriété / attribut Identifiant Association Occurrence Cardinalité

Entité / définition Une entité est une classe d éléments (abstraits ou concrets) du monde réel défini par : une existence propre une utilité pour l organisation étudiée possède des occurrences multiples (au moins deux) des propriétés (au moins une) Généralement : l entité est statique, (nom)

entité Exemples: Personne Voiture Agence Ecole Adresse cours

entité Formalisme Une entité est représentée par un rectangle

Entité ENCG Inscription Etudiant Voyage Agence

Propriété / attribut /Définition C est l information élémentaire, donnée élémentaire ou rubrique, la propriété désigne l élément d information indécomposable et manipulable pour décrire l entité Possède un nom bien défini «nom de propriété» Possède un type (texte, nombre, date, boolean,..) Prend ses valeurs dans un domaine de valeurs A un sens dans le système d information étudié.

Propriété / attribut Exemples: Nom prénom Age Couleur Ville Pays date

Propriété / attribut Formalisme Les propriétés sont représentées dans le même rectangle de l entité

Identifiant / définition Parmi toutes les propriétés d une entité, une ou plusieurs d entre elles doivent jouer un rôle particulier, celui de permettre de distinguer chaque occurrence de l entité par rapport à toutes les autres. L identifiant garantit l unicité de la correspondance des entités entre le monde réel et le système d information à modéliser

Identifiant / définition Type d identifiants Simple : une seule propriété Composé: deux propriétés ou plus

Identifiant Exemples: Identificateur d un abonné CIN Numéro de téléphone Adresse : appartement, rue, ville, pays Professeur, classe, date, cours

Identifiant Formalisme L identifiant d une entité est l ensemble des propriétés soulignées

Associations / définition Une association est une liaison logique entre les entités C est un type d élément du monde réel défini par : une absence d existence intrinsèque Possède au moins une occurrence Peut avoir des propriétés Possède une dimension mesurée par le nombre d entités rattachées représente une utilité pour l organisation étudiée Généralement : c est une action (verbe)

Associations Formalisme L association est représentée par un ovale

association Dimensions d association Association binaire : association entre deux entités (dimension 2)

association Dimensions d association Association ternaire : association entre trois entités (dimension 3)

association Dimensions d association Association réflexive: association circulaire (dimension 1)

association Exemple

Cardinalité / définition La cardinalité d une entité par rapport à une association s exprime par deux nombres appelés cardinalité minimale et cardinalité maximale La cardinalité minimale peut être égale à 0 ou à 1

Cardinalité / définition Si la cardinalité minimale est égale à 0, c est qu il existe au moins une occurrence de l entité qui ne participe pas aux occurrences de l association. Si la cardinalité minimale est égale à 1, chaque occurrence de l entité participe aux occurrences de l association La cardinalité maximale exprime le nombre de fois maximal où une occurrence de l entité participe aux occurrences de l association. On la note «n»

Cardinalité Formalisme 1

cardinalité Exemple

cardinalité Un stagiaire peut ne pas avoir de note, c est à dire qu il peut exister un stagiaire qui n a pas passé l'évaluation (cardinalité minimale =0). Un stagiaire peut être inscrit à plusieurs module et avoir une note pour chacun des modules auxquels il est inscrit (cardinalité maximale = n) Il est possible que personne ne se présente à l'évaluation pour un module (cardinalité minimale = 0) Plusieurs notes peuvent être attachées à un même module (cardinalité maximale = n)

cardinalité exemple

cardinalité Exemple

occurrence Une occurrence de propriété est une valeur que peut prendre une propriété : c est une instance possible d une propriété

Occurrence / entité Une occurrence d entité est un ensemble ayant une existence propre d occurrences de ses propriétés Exemple: L ensemble {OMAR, AZIZI, 10/11/1983} est une occurrence de l entité «STAGIAIRE» puisque «OMAR» est une occurrence de la propriété NOM, «AZIZI» une occurrence de PRENOM et «10/11/1983» une occurrence de DATE_DE_NAISSANCE

Occurrence / association Une occurrence de relation est constituée d une et d une seule occurrence de chacune des entités associées. L occurrence de chacune des propriétés de l association est en relation avec les occurrences des entités associées

Occurrence / association Exemple: {OMAR, AZIZI, 10/11/1983} : une occurrence de l entité «STAGIAIRE». {BDD} et {JAVASCRIPT} : deux occurrences de l entité «MODULE». 12 peut être une occurrence de «NOTE» associée aux occurrences {OMAR, AZIZI, 10/11/1983} et {BDD} ; 13 une autre occurrence de «NOTE» associée aux occurrences {OMAR, AZIZI, 10/11/1983} et {JAVASCRIPT}

Conception des bases de données avec Merise Partie II Abdelfettah IDRI

plan Le modèle conceptuel de données MCD Le modèle logique de données relationnelles MLDR Le modèle physique de données MPD

MLDR / MLD Concepts du modèle relationnel Transformation du modèle MCD en modèle MLDR

Concepts du modèle relationnel MLDR Relation Une relation est un ensemble d occurrences et sa description peut prendre la forme d un tableau dans lequel chaque ligne représente une occurrence d entité et chaque colonne un attribut

Concepts du modèle relationnel MLDR Exemple: La relation ETUDIANT(nom, prénom, datenaissance) peut être représentée par Nom Prénom DateNaissance Nom1 Prénom1 15/3/1980 Nom2 Prénom2 10/11/1985

Concepts du modèle relationnel MLDR Cardinalité d une Relation C est le nombre d occurrence de la relation Degré d une relation C est son nombre d attribut Clé primaire Un ou plusieurs attributs de la relation (unicité) Clé étrangère Clé primaire d une autre relation

Concepts du modèle relationnel MLDR Exemple: La cardinalité de cette relation est 2 Le degré de cette relation est 3 Nom Prénom DateNaissance Nom1 Prénom1 15/3/1980 Nom2 Prénom2 10/11/1985

MCD vers MLDR Règle 1 À chaque entité on fait correspondre une relation et par conséquent une table

MCD vers MLDR Règle 2 Une relation «1 n» est implémentée par l ajout d une clé étrangère à l entité ayant la cardinalité «1»

MCD vers MLDR Règle 2 La clé primaire de la relation table_1 est son «Identifiant1» La clé secondaire ou étrangère de la relation table_1 est «Identifiant2»

MCD vers MLDR/MLD/MPD Règle 2 : Formalisme et Exemple MCD Numero_Appartement type classe Appartement <pi> Entier Caractère (10) Caractère (10) 1,n possede 1,1 Numero_Salle superficie qualite description Salle <pi> Entier Entier Texte (10) Texte (100) <O> Identifiant_1 <pi> Identifiant_1 <pi>

MCD vers MLDR Règle 2 : Formalisme et Exemple MLDR Appartement ( Numero_Appartement, type, classe) Salle ( Numero_Salle, superficie, qualité, description, # Numero_Appartement)

MCD vers MLD Règle 2 : Formalisme et Exemple MLD Appartement Numero_Appartement type classe Identifiant_1 Caractère (10) Caractère (10) <pi> <pi> possede Sa Salle Numero_Salle <pi> Entier <O> Numero_Appartement superficie qualite description <fi> Entier Entier Texte (10) Texte (100)

MCD vers MPD Règle 2 : Formalisme et Exemple PK: Primary key (clé primaire) FK: Foreign Key (clé étrangère) MPD Salle Appartement Numero_Appartement type classe integer char(10) char(10) <pk> FK_APPARTEM_POSSEDE_SALLE Numero_Salle Numero_Appartement superficie qualite description integer integer integer long varchar long varchar <pk> <fk>

MCD vers MLDR Règle 3 Une relation «n m» est implémentée par la création d une nouvelle relation (table) ayant pour clé la réunion des clé des 2 entités de la relation

MCD vers MLDR/MLD/MPD Règle 3 : Formalisme et Exemple MCD Client Numero_Client <pi> Entier Nom Caractère prenom Caractère CIN Caractère 0,n 0,n Produit Code_Produit description Numero_serie <pi> Numérique Caractère Caractère... Commande quantite Entier

MCD vers MLDR Règle 2 : Formalisme et Exemple MLDR Client( Numero_Client, nom, prénom, CIN) Produit( Code_Produit, description, numéro_série) Commande(# Numero_Client, #CodeProduit, quantité)

MCD vers MLD Règle 3 : Formalisme et Exemple MLD Client Numero_Client <pi> Entier <O> Nom prenom CIN Caractère Caractère Caractère Produit Code_Produit <pi> Numérique description Caractère Numero_serie Caractère... Commande Commande Commande Numero_Client Code_Produit <pi,fi1> <pi,fi2> Entier Numérique <O> <O> quantite Entier...

MCD vers MPD Règle 3 : Formalisme et Exemple Client Numero_Client<Non défini> <pk> Nom <Non défini> prenom <Non défini> CIN <Non défini>... MPD Produit Code_Produit numeric description <Non défini> Numero_seriedate... <pk> FK_COMMANDE_COMMANDE2_CLIENT FK_COMMANDE_COMMANDE_PRODUIT Numero_Client Code_Produit quantite... Commande <Non défini> numeric integer <pk,fk1> <pk,fk2>