La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Modélisation d’une base de données

Présentations similaires


Présentation au sujet: "Modélisation d’une base de données"— Transcription de la présentation:

1 Modélisation d’une base de données
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 : Web : Licence de Sciences et Techniques Unité d’enseignement BASES DE DONNEES Modélisation d’une base de données

2 Qu’avons nous appris la semaine dernière ?
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 Personne conduit Voiture Monde réel Concepteur Table Personne Table Voiture Table Conduit BD Personne Dupont Durant Rochat Voiture Ford KA Peugeot 106 Toyota yaris Schéma logique Utilisateurs LMD

5 Ce qui nous intéresse aujourd’hui
La modélisation conceptuelle Personne Voiture Monde réel Concepteur Personne Voiture conduit 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 la manipulation 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 est un facteur critique
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 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 Marielle Fabien Claire ... Camille Type d’objet: Personne propriétés: - nom, - âge, ...

15 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 Personne Voiture Possède Est-marié-avec

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 Ensemble d’objets perçus comme similaires
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 (entity-relationship)
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 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 Entité et Type d’entités
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 Marielle Fabien Claire ... Camille Personne

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

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

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 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> Personne marié à femme mari

32 Association ternaire achète Client Produit Fournisseur
achète est 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 Personne 0:n Possède Personne 0:n 1:1 Voiture

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

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 jour mois année 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é Rappel : 0:n m:n 0:1 1:n 1:1 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 0:1 m:n 1:n 1:1

48 Attributs, exemple ( 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 postes intitulé salaires date-début date-fin montant date année mois

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

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

51 Exemple : Identifiants du TE employé
liste N°emp nom prénoms CV postes Il n’y a pas deux employés qui ont le même numéro Il n’y a pas deux employés qui ont à la fois le même nom et les mêmes prénoms diplôme année intitulé salaires date-début date-fin montant date année mois Deux identifiants possible : N°emp ou nom+prénoms

52 Identifiant d’un TA 1ère possibilité : attribut(s) propre(s) Commande
Client Produit N°client nom N°commande date quantité N°produit nom Identifiant du type d’associations commande = N°commande

53 Identifiant d’un TA 2ème possibilité : des identifiants de TE liés
Inscrit Etudiant Cours N°carte nom note N°cours intitulé Identifiant du type d ’association Inscrit = Etudiant.N°carte + Cours.N°cours

54 Identifiant d’un TA 3ème possibilité :
des identifiants de TE liés + attribut(s) propre(s) Commande Client Produit N°client nom date quantité N°produit nom (Un client peut commander le même produit plusieurs fois à des dates différentes) Identifiant du type d’association Commande = Client.N°client + Produit.N°produit + Commande.date

55 Identifiant d’un TA 4ème possibilité :
Tout rôle monovalué induit un identifiant du TA (l’identifiant du TE lié est aussi identifiant du TA) Assure Personne Voiture N°secu N°imm Compagnie Assurance Nom Identifiant du TA Assure = Voiture.N°imm

56 Identifiant d’un TA cyclique
Comme pour les autres Type d’Associations femme marié à Personne mari date_mariage nom prénom salaire jour mois année Deux rôles monovalués deux identifiants pour le TA marié à 1) Personne/femme.nom 2) Personne/mari.nom

57 Identifiant de TE faible
Un TE qui ne peut être identifié par ses seuls attributs propres est appelé TE faible Existe Livre Exemplaire N°ISBN titre date-achat N°exemp état Identifiant du TE Exemplaire = Livre.N°ISBN + N°exemp Identifiant du TA Existe = Livre.N°ISBN + N°exemp

58 Exemple de conception Un client qui s'inscrit à la bibliothèque verse une caution. Suivant le montant de cette caution il aura le droit d'effectuer en même temps 10 emprunts au maximum. Les emprunts durent au maximum 15 jours Un livre est caractérisé par son numéro dans la bibliothèque (identifiant), son titre, son éditeur et son (ses) auteur(s). On veut pouvoir obtenir, pour chaque client les emprunts qu'il a effectués (nombre, numéro et titre du livre, date de l'emprunt). Toutes les semaines, on édite la liste des emprunteurs en retard : nom et adresse du client, date de l'emprunt, numéro(s) et titre du (des) livre(s) concerné(s). On veut enfin pouvoir connaître pour chaque livre sa date d'achat et son état.

59 Idée générale de la démarche
Dans le texte, identifier les objets ayant une existence propre Parmi eux, trouver ceux ayant un intérêt pour au moins un traitement de l’application. Ce sont alors les types d’entités D’après le texte, trouver les attributs des types d’entités Découvrir les types d’associations permettant de lier les types d’entités

60 Objets ayant une existence propre
Un client qui s'inscrit à la bibliothèque verse une caution. Suivant le montant de cette caution il aura le droit d'effectuer en même temps 10 emprunts au maximum. Les emprunts durent au maximum 15 jours Un livre est caractérisé par son numéro dans la bibliothèque (identifiant), son titre, son éditeur et son (ses) auteur(s). On veut pouvoir obtenir, pour chaque client les emprunts qu'il a effectués (nombre, numéro et titre du livre, date de l'emprunt). Toutes les semaines, on édite la liste des emprunteurs en retard : nom et adresse du client, date de l'emprunt, numéro(s) et titre du (des) livre(s) concerné(s). On veut enfin pouvoir connaître pour chaque livre sa date d'achat et son état.

61 Les types d’entités Objets ayant une existence propre et ayant un intérêt pour au moins un traitement de l’application Auteur Bibliothèque Livre ? Editeur Client

62 Objets ayant une existence propre
Un client qui s'inscrit à la bibliothèque verse une caution. Suivant le montant de cette caution il aura le droit d'effectuer en même temps 10 emprunts au maximum. Les emprunts durent au maximum 15 jours Un livre est caractérisé par son numéro dans la bibliothèque (identifiant), son titre, son éditeur et son (ses) auteur(s). On veut pouvoir obtenir, pour chaque client les emprunts qu'il a effectués (nombre, numéro et titre du livre, date de l'emprunt). Toutes les semaines, on édite la liste des emprunteurs en retard : nom et adresse du client, date de l'emprunt, numéro(s) et titre du (des) livre(s) concerné(s). On veut enfin pouvoir connaître pour chaque livre sa date d'achat et son état.

63 Les types d’entités Objets ayant une existence propre et ayant un intérêt pour au moins un traitement de l’application Auteur Bibliothèque Livre ? Editeur Client

64 Objets ayant une existence propre
Un client qui s'inscrit à la bibliothèque verse une caution. Suivant le montant de cette caution il aura le droit d'effectuer en même temps 10 emprunts au maximum. Les emprunts durent au maximum 15 jours Un livre est caractérisé par son numéro dans la bibliothèque (identifiant), son titre, son éditeur et son (ses) auteur(s). On veut pouvoir obtenir, pour chaque client les emprunts qu'il a effectués (nombre, numéro et titre du livre, date de l'emprunt). Toutes les semaines, on édite la liste des emprunteurs en retard : nom et adresse du client, date de l'emprunt, numéro(s) et titre du (des) livre(s) concerné(s). On veut enfin pouvoir connaître pour chaque livre sa date d'achat et son état.

65 Les types d’entités Objets ayant une existence propre et ayant un intérêt pour au moins un traitement de l’application Auteur Bibliothèque Livre Editeur Client ?

66 Objets ayant une existence propre
Un client qui s'inscrit à la bibliothèque verse une caution. Suivant le montant de cette caution il aura le droit d'effectuer en même temps 10 emprunts au maximum. Les emprunts durent au maximum 15 jours Un livre est caractérisé par son numéro dans la bibliothèque (identifiant), son titre, son éditeur et son (ses) auteur(s). On veut pouvoir obtenir, pour chaque client les emprunts qu'il a effectués (nombre, numéro et titre du livre, date de l'emprunt). Toutes les semaines, on édite la liste des emprunteurs en retard : nom et adresse du client, date de l'emprunt, numéro(s) et titre du (des) livre(s) concerné(s). On veut enfin pouvoir connaître pour chaque livre sa date d'achat et son état.

67 Les types d’entités Objets ayant une existence propre et ayant un intérêt pour au moins un traitement de l’application Auteur Bibliothèque Livre ? Editeur Client

68 Objets ayant une existence propre
Un client qui s'inscrit à la bibliothèque verse une caution. Suivant le montant de cette caution il aura le droit d'effectuer en même temps 10 emprunts au maximum. Les emprunts durent au maximum 15 jours Un livre est caractérisé par son numéro dans la bibliothèque (identifiant), son titre, son éditeur et son (ses) auteur(s). On veut pouvoir obtenir, pour chaque client les emprunts qu'il a effectués (nombre, numéro et titre du livre, date de l'emprunt). Toutes les semaines, on édite la liste des emprunteurs en retard : nom et adresse du client, date de l'emprunt, numéro(s) et titre du (des) livre(s) concerné(s). On veut enfin pouvoir connaître pour chaque livre sa date d'achat et son état.

69 Les types d’entités Objets ayant une existence propre et ayant un intérêt pour au moins un traitement de l’application Auteur Bibliothèque Livre Editeur Client ?

70 Objets ayant une existence propre
Un client qui s'inscrit à la bibliothèque verse une caution. Suivant le montant de cette caution il aura le droit d'effectuer en même temps 10 emprunts au maximum. Les emprunts durent au maximum 15 jours Un livre est caractérisé par son numéro dans la bibliothèque (identifiant), son titre, son éditeur et son (ses) auteur(s). On veut pouvoir obtenir, pour chaque client les emprunts qu'il a effectués (nombre, numéro et titre du livre, date de l'emprunt). Toutes les semaines, on édite la liste des emprunteurs en retard : nom et adresse du client, date de l'emprunt, numéro(s) et titre du (des) livre(s) concerné(s). On veut enfin pouvoir connaître pour chaque livre sa date d'achat et son état.

71 Les types d’entités Objets ayant une existence propre et ayant un intérêt pour au moins un traitement de l’application Auteur Bibliothèque Livre Editeur Client

72 Les attributs du TE livre
Un client qui s'inscrit à la bibliothèque verse une caution. Suivant le montant de cette caution il aura le droit d'effectuer en même temps 10 emprunts au maximum. Les emprunts durent au maximum 15 jours Un livre est caractérisé par son numéro dans la bibliothèque (identifiant), son titre, son éditeur et son (ses) auteur(s). On veut pouvoir obtenir, pour chaque client les emprunts qu'il a effectués (nombre, numéro et titre du livre, date de l'emprunt). Toutes les semaines, on édite la liste des emprunteurs en retard : nom et adresse du client, date de l'emprunt, numéro(s) et titre du (des) livre(s) concerné(s). On veut enfin pouvoir connaître pour chaque livre sa date d'achat et son état.

73 TE livre et ses attributs
1:1 titre Livre numéro liste auteurs 1:n état date-achat éditeur

74 Les attributs du TE client
Un client qui s'inscrit à la bibliothèque verse une caution. Suivant le montant de cette caution il aura le droit d'effectuer en même temps 10 emprunts au maximum. Les emprunts durent au maximum 15 jours Un livre est caractérisé par son numéro dans la bibliothèque (identifiant), son titre, son éditeur et son (ses) auteur(s). On veut pouvoir obtenir, pour chaque client les emprunts qu'il a effectués (nombre, numéro et titre du livre, date de l'emprunt). Toutes les semaines, on édite la liste des emprunteurs en retard : nom et adresse du client, date de l'emprunt, numéro(s) et titre du (des) livre(s) concerné(s). On veut enfin pouvoir connaître pour chaque livre sa date d'achat et son état.

75 Le TE client et ses attributs
numéro Client nom caution adresse rue ville

76 Les TE du schéma conceptuel
1:1 titre Livre numéro list auteurs 1:n numéro état date-achat éditeur Client nom caution adresse rue ville

77 Les types d’association
Emprunte Livre Client emprunté emprunteur date-emprunt date-retour

78 Schéma conceptuel bibliothèque
Emprunte emprunté emprunteur date-retour date-emprunt numéro titre Livre Client nom numéro caution auteurs état date-achat éditeur adresse rue ville

79 Contraintes d’intégrité
Règles définissant les états (CI statiques) et les transitions d'état (CI dynamiques) possibles de la BD Doivent être décrites explicitement (avec un langage approprié) si elles ne peuvent pas être décrites avec les concepts du modèle de données Une BD est cohérente si toutes les CI définies sont respectées par les valeurs de la BD.

80 Exemple de CI sur des attributs
Pour chaque occurrence d’Emprunte si la date-retour existe, alors elle doit être supérieure à la date-emprunt. Pour chaque occurrence de Livre, la date-achat doit être inférieure à la date-emprunt de toutes les occurrences d’Emprunt qui lui sont liées. titre Emprunte numéro Livre Client numéro nom auteurs emprunté emprunteur caution adresse état date-achat éditeur date-emprunt date-retour rue ville

81 Représentation multiple
Un objet peut avoir plusieurs représentations Articles Alimentaire Habillement Hi-Fi Produit laitiers Viandes Fruits Légumes Plusieurs points de vues: un article un article alimentaire un produit laitier

82 Liens de généralisation/spécialisation
Article Un article alimentaire Est un article Lien IS_A Article alimentaire Article habillement Article Hi-Fi Produit laitier Viande Fruits et legumes Raffinement de classification

83 Hiérarchie de généralisation/spécialisation
TE générique Article Lien IS_A Spécialisation Généralisation TE spécifiques Article alimentaire Article habillement Article Hi-Fi X Est un Y X sous-type de Y Y sur-type de X Inclusion de populations: tout X est un Y Y X

84 Contraintes d’intégrité sur is-a
Disjonction : les articles alimentaires et les articles d'habillement n'ont pas d'instances communes Couverture : tout article appartient à l'un des sous-types (alimentaires, d'habillement ou Hi-Fi) Partition : disjonction + couverture Article Lien IS_A Article alimentaire Article habillement Article Hi-Fi

85 Clusters de spécialisation
Etudiant Etudiant garçon Etudiant fille Etudiant info Etudiant chimie Etudiant année 2 Etudiant année 3 critère: sexe critère: section critère: année

86 Généralisation multiple
……. ! problèmes liés à l'héritage Personne Employé Etudiant Salarié Allocataire salarié Etudiant salarié Étudiants salariés étudiants

87 Héritage Vente Article Article alimentaire Article habillement Article
nom marque type Article Article alimentaire Article habillement Article Hi-Fi Date_limite tailles couleurs puissance Reparation La description des sous-types ne porte que sur les informations additionnelles propres au sous-type Service après vente

88 Héritage et inclusion CI: a=b mauvais BD LPOO Carré Rectangle Carré

89 Description d’un schéma EA
Types d’entités Types d’association Attributs Liens is-a Types d’identifiant Domaines d’attribut Contraintes d'intégrité schéma conceptuel EA = ( {TE}, {TA}, {CI} )

90 Description d’un TE nom du type d'entité;
nom du (ou des) type(s) d'entité sur-type de ce type d'entité, s'il en existe; une définition libre (commentaire) précisant la sémantique du TE caractérisation exacte de la population du type d'entité description des attributs du TE composition des identifiants du TE, s'il en existe contraintes d'intégrité propres au TE

91 Les entités dans le temps
TE Client: qu'est qu'un client ??? Toute personne qui a une commande en cours Toute personne qui a fait une commande dans les six derniers mois Toute personne qui a fait une commande dans le passé ou qui est susceptible de faire une commande dans le futur ………

92 Description d’un TA nom du type d'association
une définition libre (commentaire) précisant la sémantique du TA noms des TE participant au TA, avec le nom du rôle les associant au TA pour chaque rôle, sa cardinalité description des attributs du TA , s'il en existe composition des identifiants du TA, s'il en existe contraintes d'intégrité propres au TA

93 Les associations dans le temps
TA Personne – Emprunte – Livre Quels emprunts veut-on dans la BD? Seulement les emprunts en cours Les emprunts des trois derniers mois Aussi les emprunts à venir (réservations) ….

94 Revenons à notre premier exemple
chef Chef de Employé Fournisseur subord. nom salaire NomF adresse Livré par Affecté quantité Vend Rayon Article NomR étage quantité NomA type

95 Exemple : Le TA affecté Nom : affecté définition : TE participants:
"lie un employé au rayon dans lequel cet employé travaille aujourd'hui” TE participants: <Employé, > , <Rayon, > cardinalités: Employé : min=0, max=1 Rayon : min=0, max=n attributs: aucun identifiant: Employé.nom contraintes d'intégrité: aucune

96 Description d’un attribut
nom de l'attribut définition libre de sa sémantique cardinalités si attribut simple: domaine de valeurs si attribut complexe: description des attributs composants

97 Domaine de valeurs d’un attribut simple
Le domaine de valeurs d’un attribut définit l'ensemble des valeurs permises pour cet attribut. Le domaine d’un attribut simple peut être un domaine de base: entiers, réels, string, booléen, date, … un domaine de base avec restriction: Entier [>=1,<=12] pour l'attribut mois un domaine énuméré: {janvier, février, …, décembre} un domaine de type défini par l’utilisateur

98 Contraintes d’intégrité sur les attributs
Restrictions de domaine fixes : âge  [0 : 130 ] Restrictions selon le contexte : SI mois  {4, 6, 9, 11} ALORS jour  [1:30] , SINON SI mois=2 ALORS jour  [1:29], SINON jour  [1:31] " x,y  Personne, <x,y>  Mariage => x.état-civil = "marié" & y.état-civil = "marié” " x  Personne, " y  Voiture, <x,y>  Conduit => x.âge >=18 " x  Personne, (x.sexe=F OR x.age<18) => x.statut_milit.=NUL

99 Attributs dérivés nombre d'enfants =
Parent 2:2 Personne nom Enfant nom prénoms nombre d'enfants nom prénoms nombre d'enfants = nombre d'occurrences du TA “Parent” qui lient cette Personne

100 Comme promis RECAPITULONS

101 Revenons à notre premier exemple
chef Chef de Employé Fournisseur subord. nom salaire NomF adresse Livré par Affecté quantité Vend Rayon Article NomR étage quantité NomA type

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

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

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

105 On y voit des attributs d’entités
chef Chef de Employé Fournisseur subord. nom salaire NomF adresse Livré par Affecté quantité Vend Rayon Article NomR étage quantité NomA type

106 On y voit des attributs d’association
chef Chef de Employé Fournisseur subord. nom salaire NomF adresse Livré par Affecté quantité Vend Rayon Article NomR étage quantité NomA type

107 Voilà pour aujourd’hui
Il reste à : mettre au propre les notes de cours apprendre le cours en le relisant plusieurs fois faire encore des exercices implanter des BD (cf TP)


Télécharger ppt "Modélisation d’une base de données"

Présentations similaires


Annonces Google