Le modèle conceptuel de données (MCD)
Transcription
Le modèle conceptuel de données (MCD)
BTS Informatique de Gestion 1€re ann•e – DAIGL (Mod•lisation) – Chapitre 1 – Page 1 / 14 Lyc€e Jean Rostand CHANTILLY Cours DAIGL (analyse) (1€re ann•e) BTS INFORMATIQUE DE GESTION Jean-Marie Cardoni Le mod€le conceptuel de donn•es (MCD) 1 Condition de rÄalisation En classe Seul Groupe Contenu du rÄfÄrentiel S32 Analyse et conception de syst€mes logiciels (m•thodes et outils) - identifier les diff•rents niveaux de repr•sentation d'un SI - repr•senter les communications et les donn•es d'un SI Sommaire 1 Comprendre un Mod•le Conceptuel des donn€es 1.1 Pourquoi mod•liser les donn•es ? 1.2 Les concepts li•s au MCD 1.2.1 L'entit• 1.2.2 Les propri•t•s (identifiant - occurrences param€tre) 1.2.3 Les cardinalit•s 1.2.4 L'association (hi•rarchique – non hi•rarchique – r•flexive) ComplÄment TP dossier 1 2 4 4 5 6 7 11 BTS Informatique de Gestion 1€re ann•e – DAIGL (Mod•lisation) – Chapitre 1 – Page 2 / 14 I. Comprendre un Mod•le conceptuel de donn€es "Une facture est d•livr•e ƒ un client. Une facture peut contenir diff•rents articles. Un client est toujours suivi par un repr•sentant (identifi• par un num•ro et un nom). Ce dernier peut avoir en charge plusieurs clients. Un client est rep•r• par un num•ro et poss€de un nom et une adresse. Un article est toujours r•f•renc•, poss€de un libell• et un prix unitaire. Enfin une facture a un num•ro et est r•alis•e ƒ une date" Si on peut comprendre le sens d'un texte (utilisation d'un langage humain), il n'en est pas de m„me pour un microordinateur (langage binaire c'est-ƒ-dire une suite de 0 et de 1). MERISE est une m•thode d'analyse de syst€mes d'information. Cette m•thode distingue 3 niveaux d’abstraction : Le niveau conceptuel : D•terminer le syst€me d’information et les •l•ments qu'il g€re avec leurs propri•t•s respectives et leurs relations (Mod€le Conceptuel des donn•es et Mod€le Conceptuel des Traitements) Le niveau organisationnel : d•crire les choix d'organisation mis en place pour r•pondre aux objectifs d•crits au niveau conceptuel (Mod€le Logique de donn•es qui est la traduction de diff•rents •l•ments du MCD en un langage normalis• (langage connu par les SGBDR)). Le niveau op€rationnel qui constitue le passage de la description conceptuelle ƒ l'implantation physique de la base de donn•es sur le support mat•riel (Mod€le Physique de donn•es) Le syst€me d'information, de l'exemple ci-dessus, est cependant plus complexe dans la r•alit• (gestion de la tva, des remises…). On sera donc amen•, avant toute informatisation d'un syst€me d’information, de le d•crire sous la forme de symboles (mieux vaut un dessin qu'un long discours). Une telle repr•sentation est appel•e un Mod€le Conceptuel des Donn•es (MCD) ou un Mod€le Entit• – Association (MEA) BTS Informatique de Gestion 1€re ann•e – DAIGL (Mod•lisation) – Chapitre 1 – Page 3 / 14 Repr€sentation sous la forme d'un mod•le de l'exemple appartenir PRODUIT RÄfÄrenceProduit NomProduit PrixUnitaire 1,n 1,1 FACTURE NumÄroFacture DateFacture 1,n CLIENT NumÄroClient NomClient AdresseClient 1,n contenir QuantitÄ 1,1 possÄder 1,n REPRESENTANT NumÄroReprÄsentant NomReprÄsentant L’objectif de ce dossier sera d'apprendre ƒ lire un mod€le de donn•es (m•thode MERISE) et ƒ en saisir le sens. Cela nous permettra : de v•rifier l'ad•quation d'un mod€le avec la r•alit•, de reconstituer une r•alit• ƒ partir d’un mod€le. BTS Informatique de Gestion 1€re ann•e – DAIGL (Mod•lisation) – Chapitre 1 – Page 4 / 14 A. Pourquoi mod€liser les donn€es ? Un MCD II. Les concepts li€s au MCD Le lyc•e Jean Rostand a confi• ƒ la SSII (Soci•t• de Services et d'Ing•nierie en Informatique) BASTIA l'•tude et la r•alisation d'un logiciel destin• ƒ la gestion des notes. A cet effet, une •quipe p•dagogique a r•dig• un cahier des charges dans lequel elle a exprim• ses besoins. Parmi ceux-ci, on peut citer l’•dition automatique de divers documents comme par exemple : Les bulletins trimestriels, Les listes des •l€ves par classe, Les r•capitulatifs des r•sultats : * pour un •l€ve, * pour une classe... Le Mod€le Conceptuel des Donn•es vous est pr•sent• page suivante BTS Informatique de Gestion 1€re ann•e – DAIGL (Mod•lisation) – Chapitre 1 – Page 5 / 14 ELEVE NumÄroElÅve NomElÅve PrÄnomElÅve DateNaissance RueElÅve CpElÅve VilleElÅve Est inscrit 1,n 1,1 CLASSE CodeClasse LibellÄClasse 1,n Est enseignÄe Coefficient 1,n 1,n Obtient un rÄsultat Moyenne 1,n MATIERE CodeMatiÅre NomMatiÅre 1,n TRIMESTRE NumÄroTrimestre DateDÄbut DateFin NomLycÄe AnnÄe NomProviseur A. L'entit€ D€finition Remarque : chaque occurrence est dot€e des mƒmes propri€t€s Exemple : Quelques occurrences de l'entit€ CLASSE CodeClasse BTS IG1 BTS IG2 DA BTS IG2 ARLE Libell€Classe BTS Informatique de gestion 1€re ann•e BTS Informatique de gestion 2€me ann•e sp•cialit• DA BTS Informatique de gestion 2€me ann•e sp•cialit• ARLE BTS Informatique de Gestion 1€re ann•e – DAIGL (Mod•lisation) – Chapitre 1 – Page 6 / 14 Une entit• peut donc „tre : un individu comme par exemple une personne, un client, un animal… un objet comme par un exemple une mati€re premi€re, un produit… un objet abstrait comme par exemple un service, un compte… un lieu comme par exemple une r•gion, un pays… un objet documentaire comme par exemple un contrat, une facture… a) Les propri€t€s D€finition Elle peut „tre simple (NomClient, Num•roCommande) ou compos•e (DateCommande, Adresse). Le choix d•pend de l'environnement consid•r• : pour un envoi de courrier l'adresse suffira, pour un client afin de faire des traitements particuliers, on privil•giera la d•composition Rue, CodePostal, Ville b) L'identifiant D€finition Exemple La propri•t• Num•roEl€ve identifie sans ambigu‡t• un •l€ve, cela revient ƒ dire que deux •l€ves ne peuvent pas avoir le m„me num•ro. Remarque : La propri•t• NomEl€ve aurait-elle pu „tre choisie comme identifiant ? Formalisme Entit€, Propri€t€s, Identifiant ELEVE NumÄroElÅve NomElÅve PrÄnomElÅve DateNaissance RueElÅve CpElÅve VilleElÅve BTS Informatique de Gestion 1€re ann•e – DAIGL (Mod•lisation) – Chapitre 1 – Page 7 / 14 B. Le param•tre D€finition Exemple : La propri•t• NomLyc•e est ici un param€tre car on analyse seulement le syst€me d'information du lyc•e Jean Rostand. Par contre, si on avait mod•lis• le syst€me d'information du lyc•e Jean Rostand et du lyc•e de la For„t alors on aurait cr•• une entit• LYCEE (car deux valeurs possibles). C. Les cardinalit€s D€finition Remarques, exemples et explication des cardinalit•s Exemple 1 prenons les occurrences suivantes 0001 SIMON 010 AMSI 0002 EMMA 020 DAIGL 030 ALSI 0003 PAUL Placer les cardinalit•s sur cet MCD ELEVE NumÄroEleve NomEleve Çtre spÄcialiste MATIERE CodeMatiÅre LibellÄMatiÅre BTS Informatique de Gestion 1€re ann•e – DAIGL (Mod•lisation) – Chapitre 1 – Page 8 / 14 Explication des cardinalit•s dans un tableau ENTITE ASSOCIATION CARDINALITE ELEVE ƒtre sp€cialiste MATIERE ƒtre sp€cialiste JUSTIFICATION Exemple 2 R•gle de gestion : une personne peut „tre sans emploi ou travailler au sein d'une entreprise INDIVIDU NumÄroINSEE Nom ENTITE Travailler ENTREPRISE CodeEntreprise RaisonSociale ASSOCIATION CARDINALITE JUSTIFICATION INDIVIDU Travailler ENTREPRISE travailler Exemple 3 R•gle de gestion : un salari• est affect• dans un et un seul service. Un service poss€de au moins un salari• SALARIE NumÄroINSEE Nom ENTITE Travailler SERVICE NumÄroService NomService ASSOCIATION CARDINALITE JUSTIFICATION SALARIE travailler SERVICE travailler BTS Informatique de Gestion 1€re ann•e – DAIGL (Mod•lisation) – Chapitre 1 – Page 9 / 14 Exemple 4 R•gle de gestion : un salari• peut demander ou non de participer ƒ des stages. Il lui est possible d'effectuer plusieurs demandes. SALARIE NumÄroINSEE Nom ENTITE demander ASSOCIATION CARDINALITE SALARIE demander STAGE demander STAGE NumÄroStage NomStage JUSTIFICATION Exemple 5 R•gle de gestion : Dans un film joue au moins un acteur. Un acteur a forcement tourn• dans au moins un film FILM NumÄroFilm NomFilm ENTITE jouer ASSOCIATION CARDINALITE FILM JOUER ACTEUR JOUER ACTEUR NumÄroActeur Nom JUSTIFICATION Comment choisir entre 0,1 et 1,1 ? Comment choisir entre 0,n ou 1,n ? C'est implicite (un film est jou• par au moins un acteur, un salari• travaille au moins dans un service) La r€gle de gestion est explicite (un •l€ve peut ne pas „tre sp•cialiste d'une mati€re, un salari• peut ne pas demander un stage ) Sinon … dans la r•alit• : vous obtiendrez toujours la r•ponse ƒ votre interrogation mais en cas d'examen ou de contrˆle, il peut vous arriver de ne pas trouver dans le sujet une r•ponse : vous devez alors fournir l'hypoth€se que vous posez Cas particuliers : La cardinalit• minimale peut „tre sup•rieure ƒ 1 fix•e si toutes les occurrences de l’entit• sont impliqu•es au moins x fois dans l’association (x est un entier connu). Exemple : une imprimante est partag•e par au moins 10 personnes. La cardinalit• maximale peut „tre diff•rente de >1 et diff•rent de n si une occurrence de l’entit• peut „tre impliqu•e au maximum x fois dans l'association (x est un entier connu). Exemple : un employ• ne peut faire que trois demandes de stage. BTS Informatique de Gestion 1€re ann•e – DAIGL (Mod•lisation) – Chapitre 1 – Page 10 / 14 BTS Informatique de Gestion 1€re ann•e – DAIGL (Mod•lisation) – Chapitre 1 – Page 11 / 14 D. L'association D€finition Il existe deux types d'association a) Association hi€rarchique (non porteuse de donn€es) Il existe une d•pendance fonctionnelle directe entre les identifiants des entit•s qui entourent l'association. Une association hi•rarchique a toujours une cardinalit• maximale = Exemple : ELEVE NumÄroElÅve Nom est inscrit 1,1 1,n CLASSE CodeClasse LibellÄClasse b) Association non hi€rarchique porteur ou non de donn€es Pour obtenir une d•pendance fonctionnelle dont les propri•t•s de l'association sont les buts, il faut concat•ner (additionner) les identifiants des entit•s qui entourent l'association. Une association non hi•rarchique a comme cardinalit• maximale toujours Exemple 1 Reprise du sujet MATIERE CodeMatiÅre NomMatiÅre 1,n Est enseignÄe Coefficient 1,n CLASSE CodeClasse LibellÄClasse BTS Informatique de Gestion 1€re ann•e – DAIGL (Mod•lisation) – Chapitre 1 – Page 12 / 14 ENTITE ASSOCIATION CARDINALITE MATIERE Est enseign€e 1,n CLASSE Est enseign€e 1,n JUSTIFICATION Exemple 2 ENTITE ASSOCIATION CARDINALITE PROFESSEUR enseigner 1,n MATIERE enseigner 1,n ETABLISSEMENT enseigner 1,n JUSTIFICATION BTS Informatique de Gestion 1€re ann•e – DAIGL (Mod•lisation) – Chapitre 1 – Page 13 / 14 Exemple 3 Je souhaite traduire le fait qu'en d•but d'ann•e, un •l€ve projette de consacrer un certain nombre d'heures de travail hebdomadaire ƒ chaque mati€re qu'on lui enseigne O‰ doit-on placer ce nombre d'heures ? – – – Dans l'entit• ELEVE ? Dans l'entit• MATIERE ? Dans l'association ? ELEVE NumÄroElÅve Nom avoir pour projet 1,n 1,n MATIERE CodeMatiÅre LibellÄMatiÅre Cas particulier : l'association r€flexive Il peut exister un lien entre une entit€ et elle-mƒme. D€finition Dans certains cas un rˆle doit „tre sp•cifi• pour d•crire plus pr•cis•ment le lien qui unit l'entit• ƒ l'association. Elle peut-„tre de type hi€rarchique Exemple : Le syndic de propri•taire du club de vacances "Corsica bella" a souvent besoin de contacter les propri•taires afin d'effectuer de petites r•parations, v•rification des compteurs… Ces propri•taires •tant •loign•s, ils confient cette tŠche ƒ un autre propri•taire plus proche. Le syndic m•morise les coordonn•es de cet interlocuteur qui est un propri•taire. Ses coordonn•es sont d•jƒ pr•sentes dans le syst€me d'information. PROPRIETAIRE s'occuper de NumProprio Nom S'occuper confier É BTS Informatique de Gestion 1€re ann•e – DAIGL (Mod•lisation) – Chapitre 1 – Page 14 / 14 Autre exemple : On d•sire savoir qui encadre qui dans une entreprise. a pour chef SALARIE NumSalariÄ Nom Encadrer est chef de ou non hi€rarchique. Exemple : une entreprise fabrique des pi€ces m•caniques qui s'assemblent les unes ou autres pour former d'autres pi€ces qui elles-m„mes… Une pi€ce peut-„tre compos•e de plusieurs autres pi€ces. PIECE est composÄe de NumPiÅce Nom Composer QtÄ entre dans la fabrication de