Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
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é min1). 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 n° 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 n° 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 n° 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 n° 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)
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.