Conception de bases de données relationnelles



Documents pareils
UML (Diagramme de classes) Unified Modeling Language

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

Rappel sur les bases de données

Le niveau conceptuel : la modélisation des bases de données

Modèle Entité/Association

Diagramme de classes

Modélisation des données

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

Université de Bangui. Modélisons en UML

3. UML - Unified Modeling Language Diagrammes statiques

IFT2255 : Génie logiciel

CREATION WEB DYNAMIQUE

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

Chap. 3: Le modèle de données entité-association (E.A.)

Modèle conceptuel : diagramme entité-association

Bases de données. Chapitre 1. Introduction

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

C est quoi le SWAT? Les équipes décrites par James Martin s appellent SWAT : Skilled With Advanced Tools.

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

UML et les Bases de Données

Information utiles. webpage : Google+ : digiusto/

Bases de Données Avancées

UML (Paquetage) Unified Modeling Language

Cours de bases de données. Philippe Rigaux

Christian Soutou UML 2. pour les. bases de données. Avec 20 exercices corrigés. Groupe Eyrolles, 2007, ISBN :

UML. Diagrammes de classes (suite) Delphine Longuet.

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

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

Modélisation conceptuelle des données Responsable: Dominique Schneuwly, Regis Caloz

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

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

Sommaire. G. Pujolle, F. Ravat, C. Soulé-Dupuy, G. Zurfluh

Cours STIM P8 TD 1 Génie Logiciel

Introduction aux Bases de Données

Présentation générale de la méthode orientée objet : O.M.T. (Rumbaugh & al.)

Master MIDO 2ème année. Spécification et Conception en UML Maude Manouvrier

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

GOL502 Industries de services

Les diagrammes de modélisation

Méthode d analyse Merise

Modéliser des données, l exemple du modèle entité-association

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

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

Patrons de Conception (Design Patterns)

Développement d un interpréteur OCL pour une machine virtuelle UML.

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

I4 : Bases de Données

Modélisation UML. Christine Solnon INSA de Lyon - 3IF 1/140.

Concevoir une base de données

Chapitre VI- La validation de la composition.

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)

Les frameworks au coeur des applications web

Modèle Entité-Association. C est un modèle important pour la conception des bases de données relationnelles. Il

Tickets 3:3. ChevauxPartants

Méthodes d évolution de modèle produit dans les systèmes du type PLM

Introduction aux Bases de Données

Génie Logiciel Orienté Objet UML

Pascal Brunot Hadrien Cambazard UML FOR BUSINESS INTELLIGENCE PROJECT

MEGA Database Builder. Guide d utilisation

Vincent Augusto

Chapitre I : le langage UML et le processus unifié

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

Bases de Données. Plan

Génie Logiciel Avancé Cours 3 Le modèle à objets

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

Application web de gestion de comptes en banques

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

RTDS G3. Emmanuel Gaudin

Génie Logiciel. Rappels. C. Crochepeyre Génie Logiciel Rappels 1

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

Ingénierie des Modèles. Méta-modélisation

Programmation Orientée Objet

Patrice BOURSIER. Professeur, Univ. de La Rochelle. Bases de Données. Notes de cours

Table des matières Sources

Modélisation : Entité-Association Pattes de corbeau Relationnel. Plan BD4 : A.D., S.B Des systèmes d'information. Pourquoi?

M1 : Ingénierie du Logiciel

Bases de données relationnelles & SQL

Formation : Modélisation avec UML 2.0 et Mise en pratique

Cours Bases de données

Encapsulation. L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets.

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

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

Introduction au Génie Logiciel

TD/TP PAC - Programmation n 3

Nom de l application

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

Les bases de données et SQL

OCL - Object Constraint Language

Programmation d application Bases de données avec Java

Management des processus opérationnels

Présentation. Au programme. Fonctionnement. A l issue de ce module vous devriez...

IT203 : Systèmes de gestion de bases de données. A. Zemmari zemmari@labri.fr

Analyse,, Conception des Systèmes Informatiques

Java Licence Professionnelle Cours 7 : Classes et méthodes abstraites

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

Les bases de données

INITIATION AUX BASES DE DONNEES MODELISATION et LANGAGE SQL

A. Définition et formalisme

Base de Données et Langage SQL

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

Transcription:

Conception de bases de données relationnelles Niveau conceptuel : modélisation de BD relationnelles Marie Szafranski 2015-2016 ensiie 1 2015-2016 ensiie 1 Modélisation d une BD Modélisation d une BD Étape fondatrice du processus de conception. C est une abstraction du problème réel, une reformulation qui permettra ensuite de transcrire la BD dans un cadre technologique. Modèle E-A (Entité-Association) Niveau conceptuel de la méthode MERISE Orienté bases de données relationnelles Modèle UML (Unified Modeling Language) Modélisation orientée objet d applications Focus sur le diagramme de classes Limité aux aspects liées à la modélisation de BD Modélisation statique qui met en exergue une structure 2015-2016 ensiie 2 2015-2016 ensiie 2

Notion de classe Notion de classe Élément caractérisé par des attributs (aussi appelés propriétés) et des méthodes communes à un ensemble d objets, permettant de créer des instances de ces objets. Disclaimer : pas d accent dans les schémas ou les codes Instance Nom de classe Attributs [: type] [Méthodes] Nom : varchar Prenom[1..3] : varchar Adresse :... Date d n. : date Age(Date d n) (Holmes, Sherlock Arthur Conan, 221b Baker Street Londres, 06/01/1854) 2015-2016 ensiie 3 2015-2016 ensiie 3 Notion d attribut Notion d attribut Information élémentaire qui caractérise une classe. Propriétés d un attribut Typé Domaine de valeur fixé a priori attribut: type nom: varchar Holmes Multivalué Plusieurs valeurs Composé Groupe d attributs attribut multivalue[min..max]: type prenom[1..3]: varchar Sherlock, Arthur, Conan attribut compose adresse sous attribut 1 numero: varchar 221b sous attribut 2 rue: varchar Baker Street sous attribut 3 ville: varchar Londres Dérivé Age(Date d n) Utilisation de méthodes 2015-2016 ensiie 4 2015-2016 ensiie 4

Notion d association Notion d association Relation entre deux (ou plusieurs) classes qui définit l ensemble et la nature des liens entre les objets de ces classes. On parle d association binaire (ou n-aire). En pratique, on se limitera aux associations binaires, voire ternaires. Classe 1 Resoudre Classe 2 Enquete 2015-2016 ensiie 5 2015-2016 ensiie 5 Notion de classe d association Notion de classe d association La classe d association est utilisée pour ajouter des propriétés (qui prennent la forme d attributs) aux associations. Classe 1 Classe 2 Enquete Att 1 [: type] Att n [: type] [Méthodes] Resoudre Annee : int(4) 2015-2016 ensiie 6 2015-2016 ensiie 6

Notion de cardinalité (UML MERISE) Notion de cardinalité (UML MERISE) Élément d une association permettant de représenter le nombre minimum et maximum d instances impliquées dans la relation. Une cardinalité est définie pour chaque sens de la relation. Notations 0..1 De 0 à 1 1..1 ou 1 0..n ou 0.. ou 1..n ou 1.. Lecture 1 seul Plusieurs De 1 à plusieurs Resoudre 1.. 0.. Enquete Un détective peut résoudre plusieurs enquêtes Une enquête est résolue par au moins un détective (voire plusieurs) 2015-2016 ensiie 7 2015-2016 ensiie 7 Familles de cardinalités (Cardinalité n : m) Familles de cardinalités (Cardinalité n : m) Cardinalités dites de type n : m n (resp. m) N, n (resp. m) > 1 C1 b.. a.. C2 À un élément de C1, on peut associer de a à plusieurs (m) éléments de C2 a N, a m À un élément de C2, on peut associer de b à plusieurs (n) éléments de C1 b N, b n 2015-2016 ensiie 8 2015-2016 ensiie 8

Familles de cardinalités (Cardinalité 1 : n) Familles de cardinalités (Cardinalité 1 : n) Cardinalités dites de type 1 : n n N, n > 1 C1 b..1 a.. C2 À un élément de C1, on peut associer de a à plusieurs (n) éléments de C2 a N, a n À un élément de C2, on peut associer au plus un élément de C1 b {0, 1} 2015-2016 ensiie 9 2015-2016 ensiie 9 Familles de cardinalités (Cardinalité 1 : 1) Familles de cardinalités (Cardinalité 1 : 1) Cardinalités dites de type 1 : 1 C1 b..1 a..1 C2 À un élément de C1, on peut associer au plus un élément de C2 À un élément de C2, on peut associer au plus un élément de C1 a {0, 1} b {0, 1} Remarque : une association de type 1..1 : 1..1 entre deux classes revient à considérer une seule classe. 2015-2016 ensiie 10 2015-2016 ensiie 10

Notion d héritage Notion d héritage Association entre deux classes qui permet d exprimer une relation de généralisation (ou de spécialisation) d une classe sur l autre. Propriétés Factorisation de propriétés identiques entre deux classes Transmission automatique des propriétés de la classe mère à la classe fille Personne Nom : varchar Prenom[1..3] : varchar Date d n : date Age(Date d n) Licence : integer 2015-2016 ensiie 11 2015-2016 ensiie 11 Notion de clé Notion de clé Attribut qui identifie de façon unique une instance dans la base de données. Différents types de clés #Primaire : clé choisie Candidate : clé potentielle Artificielle : clé générée Personne #Num ss : integer(13) Nom : varchar Prenom[1..3] : varchar Date d n : date Age(Date d n) Licence : integer 2015-2016 ensiie 12 2015-2016 ensiie 12

simple simple Personne Arme a feu? #Num ss : integer(13) Nom : varchar Prenom[1..3] : varchar Date d n : date Suspect? Age(Date d n) Licence : integer 1.. Enquete #N dossier : integer Resoudre Annee : int(4) 2015-2016 ensiie 13 2015-2016 ensiie 13 Association : sens de lecture et rôle Association : sens de lecture et rôle Il est possible d ajouter un sens de lecture caractérisant l association et de préciser le rôle joué par une ou plusieurs classes pour préciser le modèle. Classe 1 role 1 Classe 2 role 2 Client employeur 1.. Enqueter 2015-2016 ensiie 14 2015-2016 ensiie 14

Association : composition Association : composition Dans une composition, la classe dépendante n a de sens ou d existence qu associée à sa classe composite. Classe composite 1 Classe dépendante Livre 1 Contenir 1.. Chapitre 2015-2016 ensiie 15 2015-2016 ensiie 15 Association : composition Association : composition Dans une composition, la classe dépendante n a de sens ou d existence qu associée à sa classe composite. Propriétés La composition associe une classe composite et des classes dépendantes et tout objet dépendant appartient à un objet composite Asso. 1 : n La composition n est pas partageable : un objet dépendant ne peut appartenir qu à un seul objet composite à la fois Le cycle de vie des objets dépendants est lié à celui des objets composites Livre 1 Contenir 1.. Chapitre 2015-2016 ensiie 16 2015-2016 ensiie 16

Association : agrégation Association : agrégation L agrégation est utilisée pour préciser une relation de type tout / partie ou ensemble / élément. Pas de contrainte sur les familles de cardinalités. Classe ensemble Classe element Bibliothèque Contenir Livre 2015-2016 ensiie 17 2015-2016 ensiie 17 Association n-aire Association n-aire Relation qui associe n classes par le biais de cardinalités de type l : m. Les associations ternaires sont parfois récrites avec trois associations binaires et en transformant l association en classe mais... Classe 3 Annee 1.. Classe 1 Classe 2 Cours 1.. 1.. Eleve Inscription Note : real 2015-2016 ensiie 18 2015-2016 ensiie 18

Contrainte dynamique Contrainte dynamique Les contraintes dynamiques peuvent s exprimer par le biais d annotations sur les attributs, les classes et les associations. contrainte d asso. {contrainte d attribut} Classe 2 Classe 1 Attribut : type Les clients commandent avant de payer Client #N client : int payer Produit { 1000} #N produit : int Prix : int commander 2015-2016 ensiie 19 2015-2016 ensiie 19 Contrainte d association Contrainte d association Différentes contraintes Inclusion {IN}, {SUBSET}, {1} Si l asso. incluse est instanciée, l autre doit l être également ET, égalité ou simultanéité {ET}, {=}, {S} Si une asso. est instanciée, l autre doit l être également Exclusion {X} Les deux asso. ne peuvent être instanciées simultanément OU inclusif, couverture ou totalité {OR}, {T} Au moins une des deux asso. doit être instanciée OU exclusif ou partition {XOR}, {XT}, {+} Une seule des deux asso. doit être instanciée Classe 1 {IN} Classe 2 2015-2016 ensiie 20 2015-2016 ensiie 20

Héritage : classe abstraite Héritage : classe abstraite Une classe abstraite n est pas instanciable et n existe qu à travers les classes filles qui en héritent. Chaque objet de la classe mère est membre d une classe fille (au moins) Elle exprime une généralisation et ne correspond à aucun objet existant dans le contexte. Classe mere abstraite Mammifère Classe fille Humain... Félin Homme Femme... 2015-2016 ensiie 21 2015-2016 ensiie 21 Héritage exclusif Héritage exclusif Un héritage est exclusif si les objets d une classe fille ne peuvent appartenir aussi à une autre classe fille. Classe mère Humain {XOR} {XOR} Classe fille 1 Classe fille 2 Homme Femme 2015-2016 ensiie 22 2015-2016 ensiie 22

Héritage sans spécificité Héritage sans spécificité Un héritage est sans spécificité si ses classes filles n ont aucune caractéristiques propres (attributs, méthodes, associations). Classe mère Personne Nom : varchar Prenom : varchar Date de n : date... Classe fille 1 Classe fille 2 Homme {XOR} Femme 2015-2016 ensiie 23 2015-2016 ensiie 23 Packages (Tableau) Packages (Tableau) 2015-2016 ensiie 24 2015-2016 ensiie 24