1 / 107

Licence de Sciences et Techniques Unité d’enseignement BASES DE DONNEES Modélisation d’une

François Jacquenet Professeur d'Informatique Faculté des Sciences Laboratoire Hubert Curien – UMR CNRS 5516 18 rue Benoit Lauras 42023 Saint-Etienne cedex 2 Tél : 04 77 91 58 07 e-mail : Francois.Jacquenet@univ-st-etienne.fr Web : http://eurise.univ-st-etienne.fr/~fj.

tosca
Télécharger la présentation

Licence de Sciences et Techniques Unité d’enseignement BASES DE DONNEES Modélisation d’une

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. François Jacquenet Professeur d'Informatique Faculté des Sciences Laboratoire Hubert Curien – UMR CNRS 5516 18 rue Benoit Lauras 42023 Saint-Etienne cedex 2 Tél : 04 77 91 58 07 e-mail : Francois.Jacquenet@univ-st-etienne.fr Web : http://eurise.univ-st-etienne.fr/~fj Licence de Sciences et Techniques Unité d’enseignement BASES DE DONNEES Modélisation d’une base de données

  2. Mais avant : Qu’avons nous appris la semaine dernière ?

  3. Aujourd’hui nous verrons • Cycle de vie d’une Base de Données • Modèle conceptuel • Modèle entité-association et plus particulièrement les notions de • type d’entités • type d’associations • Attributs • cardinalité • identifiant • contraintes d’intégrité

  4. Cycle de vie d’une base de données Schéma conceptuel Personne Voiture Voiture conduit Personne Monde réel Concepteur Table Personne Table Voiture Table Conduit … BD Voiture Ford KA Peugeot 106 Toyota yaris … Personne Dupont Durant Rochat … Schéma logique Utilisateurs LMD

  5. Voiture conduit Personne Ce qui nous intéresse aujourd’hui La modélisation conceptuelle Personne Voiture Monde réel Concepteur C’est-à-dire : la définition du schéma conceptuel de la base de données Schéma conceptuel

  6. Culture générale • Cycle de vie du logiciel (modèle en cascade) Analyse des besoins Spécification Conception générale Conception détaillée Codage Tests Distribution Maintenance

  7. Modéliser les données • Modèle de données = ensemble de • concepts permettant la description et lamanipulation des données du monde réel • règles d’utilisation de ces concepts • Ces concepts décrivent les aspects • Statiques : structure des données • Dynamiques : opérations sur les données + contraintes explicites • Schéma = description de la BD obtenue en utilisant un modèle de données

  8. Pourquoi la modélisation conceptuelle ? • Objectif: représenter la réalité telle qu'elle est perçue par les utilisateurs • Contrairement aux modèles logiques qui décrivent la réalité en fonction du modèle du SGBD • Représentation à l’aide de la trilogie de base • objets • liens • propriétés

  9. Avantages de la modélisation conceptuelle • L’attention est portée sur les applications • Indépendante des technologies • Portabilité • Longévité • Orientée utilisateur • Compréhensibilité • Support du dialogue concepteurs / utilisateurs • Permet la collaboration et la validation par les utilisateurs

  10. Avantages de la modélisation conceptuelle • Spécifications formelles, non ambiguës, • Puissance des concepts • Support d’interfaces visuelles (lisibilité) • Diagrammes de définition de données • Manipulation de données • Facilite les échanges d’informations entre SGBD différents

  11. TRES IMPORTANT La qualité de la conception de la BD est un facteur critique de réussite

  12. Culture générale • Importance des premières étapes dans le cycle de vie du logiciel Analyse des besoins Spécification Conception générale Conception détaillée Codage Tests Distribution Maintenance

  13. Elaboration d’un schéma conceptuel • Analyse du monde réel • Identification des phénomènes à représenter dans la BD • délimitation de l’univers du discours • Représentation à l’aide des concepts du modèle • contenu • structure • règles • dynamique • Représentation • Partielle • Infidèle et Subjective

  14. Marielle Claire ... Fabien Camille Abstraction De la réalité perçue à la représentation: Faire abstraction des particularités permet de passer des objets aux types ou classes d'objets Type d’objet: Personne propriétés: - nom, - âge, ...

  15. Possède Personne Voiture Est-marié-avec Définition d’un schéma • Un schéma est une collection de types • d’entité <-> objets • d’association <-> liens • La bases de données contiendra les valeurs représentant les instances de ces types

  16. Divers types de modèles conceptuels • Entité-Association (EA) - (ER: Entity-Relationship) • UML (Unified Modelling Language - cf Master 1) • MERISE (cf cours de Systèmes d’Information en L2) • ...

  17. Vocabulaire Le monde réel Abstraction / Description Diagramme Ensemble d’objets perçus comme similaires Etudiant étudiants Base de données Schema Type d'objetÉtudiant: -nom -prénoms -date de naissance -section -année Instances ou occurrences Population

  18. ET MAINTENANT Le modèle Entité Association (entity-relationship)

  19. Généralités • C’est un modèle conceptuel • Conçu par Chen en 1976

  20. A quoi ressemble un schéma conceptuel ? chef Chef de Employé Fournisseur subord. nom salaire NomF adresse Livré par Affecté quantité Vend Rayon Article NomR étage quantité NomA type

  21. On y voit des rectangles chef Chef de Employé Fournisseur subord. nom salaire NomF adresse Livré par Affecté quantité Vend Rayon Article NomR étage quantité NomA type

  22. On y voit des losanges chef Chef de Employé Fournisseur subord. nom salaire NomF adresse Livré par Affecté quantité Vend Rayon Article NomR étage quantité NomA type

  23. On y voit des traits étranges chef Chef de Employé Fournisseur subord. nom salaire NomF adresse Livré par Affecté quantité Vend Rayon Article NomR étage quantité NomA type

  24. On y voit des mots reliés aux rectangles par des traits chef Chef de Employé Fournisseur subord. nom salaire NomF adresse Livré par Affecté quantité Vend Rayon Article NomR étage quantité NomA type

  25. On y voit des mots reliés aux losanges par des traits chef Chef de Employé Fournisseur subord. nom salaire NomF adresse Livré par Affecté quantité Vend Rayon Article NomR étage quantité NomA type

  26. Modèle de type conceptuel • But : permettre la description conceptuelle des structures de données d'une application • Les concepts de base (qui correspondent aux concepts d’abstraction de la réalité): • objet <=> entité • lien <=> association (relationship) • propriété <=> attribut • en plus : la représentation multiple

  27. Marielle Claire ... Fabien Camille Entité et Type d’entités • Entité: représentation d’un objet du monde réel ayant une existence propre • Type d'entités (TE): représentation d'un ensemble d'entités perçues comme similaires et ayant les mêmes caractéristiques Personne

  28. achète Personne Maison Association et type d’associations • Association : représentation d'un lien non orienté entre plusieurs entités (qui jouent un rôle déterminé) • Typed'associations (TA) : représentation d'un ensemble d'associations ayant la même sémantique et décritespar les mêmes caractéristiques achète est une association entre une personne et une maison

  29. Rôles d’une association • Dans une association, chaque entité joue un rôle déterminé • Association binaire deux rôles achète Personne Maison ACHETEUR ACHETÉ

  30. Association cyclique • Une association est cyclique lorsque deux rôles (au moins) lient le même type d’entité marié à est une association entre une personne et une autre personne problème : comment savoir, dans un couple, qui est le mari et qui est la femme ? exemple : <Dupont Dominique, Dupont Dominique> marié à Personne

  31. marié à Personne Association cyclique, rôles nommés • Solution : spécifier le rôle de chaque entité marié à est une association entre une personne qui est une femme et une autre personne qui est son mari exemple : <Dupont Dominique / femme, Dupont Dominique / mari> femme mari

  32. Association ternaire achète Client Produit Fournisseur achèteest une association (ternaire) entre un client, un fournisseur et un produit

  33. Association ternaire cyclique Emprunteur Emprunt Personne Banque Garant

  34. Population d’un TE et TA achète Personne Maison

  35. Cardinalité des rôles Possède • Combien de voitures minimum une personne peut-elle possèder ? • Combien de voitures maximum une personne peut-elle possèder ? Personne Voiture Possède min:max Personne

  36. Contraintes de cardinalités • Une personne peut ne pas avoir de voiture, en avoir une, deux, ..., n • Une voiture à un et un seul propriétaire Possède 0:n Personne Possède 1:1 Personne Voiture 0:n

  37. Population d’un TE et TA achète Personne 1:1 Maison 0:n

  38. Valeurs et notations des cardinalités Minimum Maximum 0 1 1 1 0 n 1 n n m Possède Personne Voiture

  39. Autres notations possibles Pour les liens 0:1 1:1 0:n 1:n m:n

  40. Association ternaire, cardinalité • Plus difficiles à lire sur le schéma • Nombre min et max d’occurrences du TA qui peuvent lier une occurrence donnée du TE Assure Personne Voiture N°secu N°imm. Compagnie Assurance Nom

  41. Les attributs • Ils décrivent les propriétés associées à: • un type d’entité • un type d’association • un autre attribut femme Marié à Personne mari Date_mariage nom prénom salaire mois année jour Domaine [1,31]

  42. Attributs simples • simple (atomique) : non décomposable • Exemples : jour, prénom • Le domaine de valeurs est constitué de valeurs atomiques • Exemple : • jour • domaine de valeurs = {1, 2, …., 31} • Domaines prédéfinis standard, intervalles, énumérés

  43. Attributs complexes • Complexe : décomposé en d'autres attributs • Exemples • date qui se décompose en jour, mois, année • adresse qui se décompose en rue, ville, code postal • Un attribut complexe ne porte pas de valeur propre (pas de domaine directement associé) • La valeur d'un attribut complexe est la composition des valeurs de ses attributs composants. • Un composant d'attribut complexe peut être lui-même un attribut complexe.

  44. Attributs obligatoires ou facultatifs • Obligatoire: une valeur au moins par occurrence (cardinalité min1). • Exemples : nom, prénoms • Facultatif: peut ne pas prendre de valeur (cardinalité min=0). • Exemples : salaire, téléphones

  45. Attributs mono ou multi-valués • monovalué : une seule valeur par occurrence (cardinalité max=1) • Exemples: date de naissance, numéro sécu • multivalué : plusieurs valeurs par occurence (cardinalité max>1). • Exemples: prénoms, téléphones • Une valeur d'attribut multivalué est un ensemble ou une liste ou un multi-ensemble de valeurs, prises chacune dans le domaine de valeurs associé à l'attribut.

  46. Attributs, cardinalité • min : caractère facultatif ou obligatoire de l’attribut • max : caractère mono-valué ou multi-valué de l’attribut • Même notation pour les attributs que pour les cardinalités des rôles • Exemples • nom d’une personne • prenoms • téléphone fixe • téléphone mobile 1:1 1:n 0:1 0:n

  47. Attributs, exemple Employé liste No-emp nom prénoms CV postes diplôme année intitulé salaires date-début date-fin simple obligatoire monovalué complexe, facultatif, multivalué de type ensemble montant date année mois simple, obligatoire, multivalué de type liste Rappel : 0:n m:n 0:1 1:n 1:1

  48. ( technicien, (1500, 1997, 10) (1600, 1999, 10) (1700, 2000, 10) ’01/01/1997’, ’31/12/2001’ ), (analyste, (2500, 2000, 06) (2800, 2001, 06) ’01/01/2000’, ’31/12/2002’ ), (chef_de_projet, (3500, 2002, 10) ’01/01/2002’, ’31/12/2003’ ) /* intitulé /* salaires /* date début /* date fin Attributs, exemple postes intitulé salaires date-début date-fin montant date année mois

  49. Employé nom salaire nom salaire Autres notations existantes Pour les entités et leurs attributs Employé nom salaire Employé

  50. Identifiants de TE et TA • Nécessité de pouvoir désigner une entité (une association) de façon univoque • Identifiant: Ensemble minimal d'attributs tel qu'il n'existe pas deux instances du TE (TA) où ces attributs aient la même valeur

More Related