You are on page 1of 34

MERISE

Modlisation de Syst`mes dInformation e e


Pierre Grard e
e DUT Informatique 2`me anne e 2004/2005

Table des mati`res e


1 Introduction 2 1.1 Processus de dveloppement dun logiciel . . . . . . . . . . . . . . . . . . . . . 2 e 1.2 La mthode MERISE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 e 1.3 Le Projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2 Mod`les conceptuels e 2.1 Mod`le Conceptuel de Communication e 2.2 Mod`le Conceptuel des Traitements . e 2.3 Mod`le Conceptuel des Donnes . . . e e 2.4 Formes normales dun MCD . . . . . . 10 10 12 17 20

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

3 Mod`les organisationnels et logiques e 23 3.1 Mod`le Logique des Donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 e e 3.2 Mod`le Organisationnel des Traitements . . . . . . . . . . . . . . . . . . . . . . 24 e 4 Mod`les physiques e 33 4.1 Mod`le Physique des Donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 e e

1
1.1

Introduction
Processus de dveloppement dun logiciel e

Cycle de vie La qualit du processus de fabrication est garante de la qualit du produit e e Pour obtenir un logiciel de qualit, il faut en ma e triser le processus dlaboration e La vie dun logiciel est compose de direntes tapes e e e La succession de ces tapes forme le cycle de vie du logiciel e Il faut contrler la succession de ces direntes tapes o e e Etude de faisabilit e Dterminer si le dveloppement propos vaut la peine dtre mis en uvre, compte tenu e e e e de attentes et de la dicult de dveloppement e e Etude de march : Dterminer sil existe un march potentiel pour le produit. e e e Spcication e Dterminer les fonctionnalits que doit possder le logiciel e e e Collecte des exigences : obtenir de lutilisateur ses exigences pour le logiciel Analyse du domaine : dterminer les tches et les structures qui se rp`tent dans le e a e e probl`me e Organisation du projet Dterminer comment on va dvelopper le logiciel e e Analyse des cots : tablir une estimation du prix du projet u e Planication : tablir un calendrier de dveloppement e e Assurance qualit du logiciel : dterminer les actions qui permettront de sassurer de e e la qualit du produit ni e Rpartition des tches : hirarchiser les tches et sous-tches ncessaires au dvelope a e a a e e pement du logiciel Conception Dterminer la faon dont dont le logiciel fournit les direntes fonctionnalits rechere c e e ches e Conception gnrale e e Conception architecturale : dterminer la structure du syst`me e e Conception des interfaces : dterminer la faon dont les direntes parties du syse c e t`me agissent entre elles e Conception dtaille : dterminer les algorithmes pour les direntes parties du syse e e e t`me e Implmentation e Ecrire le logiciel 2

Tests Essayer le logiciel sur des donnes dexemple pour sassurer quil fonctionne correctement e Tests unitaires : faire tester les parties du logiciel par leurs dveloppeurs e Tests dintgration : tester pendant lintgration e e Tests de validation : pour acceptation par lacheteur Tests syst`me : tester dans un environnement proche de lenvironnement de produce tion Tests Alpha : faire tester par le client sur le site de dveloppement e Tests Bta : faire tester par le client sur le site de production e Tests de rgression : enregistrer les rsultats des tests et les comparer ` ceux des e e a anciennes versions pour vrier si la nouvelle nen a pas dgrad dautres e e e Livraison Fournir au client une solution logicielle qui fonctionne correctement Installation : rendre le logiciel oprationnel sur le site du client e Formation : enseigner aux utilisateurs ` se servir du logiciel a Assistance : rpondre aux questions des utilisateurs e Maintenance Mettre ` jour et amliorer le logiciel pour assurer sa prnit a e ee e Pour limiter le temps et les cots de maintenance, il faut porter ses eorts sur les tapes u e antrieures e Rpartition eort e dv. e 6% 5% 7% 15% 67% Origine des erreurs 56% 27% 7% 10% Cot de la u maintenance 82% 13% 1% 4%

Dnition des e besoins Conception Codage Intgration Tests e Maintenance

Mod`les linaires et incrmentaux e e e Mod`les linaires e e cascade mod`le en V e ... Mod`les non linaires e e prototypage mod`les incrmentaux e e mod`le en spirale e ... Le cycle de vie en Cascade 3

Etudede faisabilit

Spcification

Conception gnrale Conception dtaille

Codage

Tests

Maintenance

Adapt pour des projets de petite taille, et dont le domaine est bien ma e e tris Le cycle de vie en V
Etudede faisabilit Maintenance

Spcification

Validation

Conception gnrale Conception dtaille

Tests d'intgration Tests unitaires

Codage

Adapt pour des projets dont le domaine est bien ma e e tris Le prototypage Prototype : version dessai du logiciel Pour tester les dirents concepts et exigences e Pour montrer aux clients les fonctions que lon veut mettre en uvre Lorsque le client a donnn son accord, le dveloppement suit souvent un cycle de vie e e linaire e Avantages : Les eorts consacrs au dveloppement dun prototype sont le plus souvent e e compenss par ceux gagns ` ne pas dvelopper de fonctions inutiles e e a e 4

Le mod`le incrmental de Parnas e e 1. Concevoir et livrer au client un sous-ensemble minimal et fonctionnel du syst`me e 2. Procder par ajouts dincrments minimaux jusqu` la n du processus de dveloppee e a e ment 3. Avantages : Meilleure intgration du client dans la boucle, produit conforme ` ses ate a tentes Le mod`le en Sprirale de Boehm e Un mod`le mixte e A chaque cycle, recommencer : 1. Consultation du client 2. Analyse des risques 3. Conception 4. Implmentation e 5. Tests 6. Planication du prochain cycle

Avantages : meilleure ma trise des risques, mais ncessite une (tr`s) grande exprience e e e Mthode : une dmarche et un formalisme e e Dmarche : succession dtapes pour e e Mieux ma triser le droulement dun projet e Meilleure visibilit pour les utilisateurs sur certains rsultats intermdiaires et garantir e e e que le rsultat nal sera celui attendu e 5

Formalisme dni par: e Un langage formel Un langage semi-formel gnralement graphique e e Un langage naturel Fonction : Reprsenter le monde rel tel quil est peru par le concepteur e e c Outil de communication entre informaticiens et utilisateurs Constitu par un ensemble de mod`les permettant dassurer une bonne comprhension e e e des besoins des utilisateurs Mod`les e Reprsentation abstraite de la ralit qui exclut certains dtails du monde rel e e e e e Permet de rduire la complexit dun phnom`ne en liminant les dtails qui nine e e e e e uencent pas son comportement signicatif Re`te ce que le concepteur croit important pour la comprhension et la prdiction e e e du phnom`ne modlis, les limites du phnom`ne modlis dpendent des objectifs du e e e e e e e e e mod`le e

1.2

La mthode MERISE e

MERISE Mthode dEtude et de Ralisation Informatique pour les Syst`mes dEntreprise e e e Mthode Eprouve pour Retarder Indniment la Sortie des Etudes e e e MEthode pour Rassembler les Ides Sans Eort e Sutout lorsquon utilise un AGL Approche Donnes / Traitements e Pour tudier et dvelopper linformatique dune organisation, il est ncessaire de conna e e e tre: comment elle ragit ` une sollicitation externe e a quelle est la structure des informations quelle utilise MERISE modlise cette connaissance de mani`re duale : e e Mod`les des Traitements (raction aux vnements...) e e e e Mod`les des Donnes (vocabulaire de la structure...) e e Les 2 aspects sont complmentaires, synchroniss et valids entre eux e e e Niveaux dabstraction Pour chacun des probl`mes de modlisation (donnes / traitements) e e e Procder de mani`re progressive... e e ... du plus stable au plus technique Niveau Conceptuel Ce quil faut faire Quoi ? Niveau Organisationnel La mani`re de faire e Pour les traitements 6

Niveau Logique Choix des moyens et ressources Pour les donnes e Niveau Physique Les moyens de le faire Comment ?
Rel peru Invariant / Stable Conceptuel Organisationnel Logique Physique Variable

Exemples de niveaux dabstraction Conceptuel Le client eectue une demande de service ` la compagnie pour assurer son vhicule. a e Cette derni`re lui propose un devis e Organisationnel Un client eectue une demande de service ` lagence de son choix, par courrier, pour a assurer un vhicule. Un agent de service concern, si le client est able (consultation e e dun chier central inter assurances), prend contact par tlphone pour une visite ` ee a domicile (apr`s 17 heures) an dexaminer plus prcisment ses besoins et tablir un e e e e devis Physique Le chier central inter assurances est accessible par internet. Les agences sont connectes au si`ge de la compagnie par liaison ADSL. Chaque agence dispose de microe e ordinateurs de type PC et peut traiter ses donnes en local grce au SGBD Access e a Le niveau Conceptuel Exprime les choix fondamentaux de gestion, les objectifs de lorganisation Dcrit les invariants de lorganisation e Le mtier de lorganisation e Dnit e Des activits e Des choix de gestion Des informations Indpendamment e Des aspects organisationnels Des aspects techniques de mise en oeuvre 7

Du point de vue Des traitements: objectif, rsultat, r`gle de gestion, encha e e nement Des donnes: signication, structure, liens e Le niveau Organisationnel Exprime les choix organisationnels de ressources humaines et matrielles e Dnit: e La rpartition gographique et fonctionnelle des sites de travail (du point de vue des e e donnes et des traitements) e Le mode de fonctionnement : temps rel ou temps dir e ee La rpartition du travail homme/machine (degr et type dautomatisation) e e Les postes de travail et leur aectation, La volumtrie des donnes e e La scurit des donnes e e e Indpendamment des moyens de traitement et de stockage de donnes actuels ou futurs e e Les oprations conceptuelles vont tre dcomposes au niveau organisationnel en une e e e e ou plusieurs oprations organisationnelles e Le niveau Logique Exprime la forme que doit prendre loutil informatique pour tre adapt ` lutilisateur, e ea a ` son poste de travail Indpendamment de linformatique spcique, des langages de programmation ou de e e gestion des donnes e Introduit la notion doutils en tant que fonction rutilisable e Dcrit e Le schma de la base de donnes (relationnel, hirarchique ou rseau), cad les carace e e e tristiques du mode de gestion des donnes e e La rpartition des D sur les direntes units de stockage e e e Les volumes par unit de stockage e Loptimisation des cots induits par le mode de gestion u Le niveau Physique Traduit les choix techniques et la prise en compte de leurs spcicits e e Rpond aux besoins des utilisateurs sur les aspects logiciels et matriels. e e Dnit compl`tement: e e Les chiers, les programmes Limplantation physique des donnes et des traitements e Les ressources ` utiliser a Les modalits de fonctionnement e Les mod`les au niveau Conceptuel e Le Mod`le Conceptuel des Donnes (MCD) e e Description des donnes et des relations en termes de e Entit ou Individu e Relation ou Association Proprits ou dAttributs ee 8

Le Mod`le Conceptuel des Traitements (MCT) e Description de la partie dynamique du SI en termes de Processus Oprations e

Les mod`les aux niveaux Organisationnel et Logique e Le Mod`le logique de donne (MLD) e e Le mod`le CODASYL si une orientation base de donnes rseau est choisie e e e Le mod`le relationnel si une orientation base de donnes relationnelle est choisie e e Le mod`le hirarchique e e Le Mod`le Organisationnel des Traitement (MOT) e Permet de reprsenter par procdure les phases et les tches eectues par chaque e e a e poste de travail

Les Mod`les au niveau Physique e Le Mod`le Physique des Donnes (MPD) e e Spcie les organisations physiques de donnes e e Le Mod`le Physique des Traitements (MPT) e Dcrit les traitements raliss pour chaque transaction (temps rel) ou chaque unit e e e e e de traitement (temps dir) ee

Processus de dveloppement e

Niveau Conceptuel

Niveau Logique / Orga. D Niveau Physique Etat Actuel T

Etat Futur

Mod`les successifs produits e 9

Modles successifs produits


EXISTANT conceptuel FUTUR

MCD MCT MCD

MCT

MOT

logique orga.

MLD

MOT

MCC
physique

MPD
donnes traitements donnes

MPT
traitements

1.3

Le Projet

Organisation du projet Par groupe de 5 tudiants : analyse compl`te du cas propos e e e Pour chaque scance de TD e Conception du mod`le demand pour la scance en question e e e A la n de chaque scance, lenseignant collecte votre travail e Au dbut de chaqu scance e e e Lenseignant vous rend le travail de la scance prcdente corrig e e e e Vous prenez en compte les corrections pour les tapes ultrieures e e La note nale est la somme des notes partielles obtenues ` chaque scance a e Echancier e Semaine : 1. Compte rendu dentretiens et MCC 2. MCT 3. VED pour chaque opration e
e 4. MCD en 3`me forme normale

5. MOT 6. MPD 7. Gnration dune base de donnes e e e 8. Synth`se e

2
2.1

Mod`les conceptuels e
Mod`le Conceptuel de Communication e

Mod`le Conceptuel de Communication (MCC) e Reprsente, au niveau conceptuel, les changes dinformation entre les acteurs e e 10

Premi`re tape dune tude de lexistant, pour modliser les habitudes de travail dans e e e e lorganisation concerne e Dlimiter le domaine tudi e e e Rduire la complexit en identiant des sous probl`mes traits individuellement e e e e Identier les acteurs externes et internes Modliser les changes dinformations entre les dirents acteurs e e e

Acteurs Reprsent par un cercle libell par le nom de lacteur e e e Lacteur reprsente une unit active intervenant dans le fonctionnement dun syst`me e e e oprant. Il peut e Etre stimul par des ux dinformation e Transformer et mettre des ux dinformation e Un acteur fait quelque chose , il est actif Ex : Service comptabilit, Guichet ... e Un acteur est un rle plutt quune personne physique ( Direction et pas Jeano o Claude ) Il peut tre pertinent de modliser sparment deux fonctions assumes par une mme e e e e e e personne physique On distingue les acteurs internes et externes

Flux dinformation Reprsent par une `che entre deux acteurs, tiquete par le nom du ux e e e e e Echange dinformations entre deux acteurs Ex : documents, appels tlphoniques, donnes informatiques ee e

Flux 1

Acteur B

Flux 2_2 Flux 2_1 Acteur A

Flux 3 Acteur C

Acteurs externes Elments externes avec lesquels le syst`me change des ux dinformation e e e Ex : clients, fournisseurs... 11

Acteurs externes

Organisation

flux

Acteurs internes Acteurs faisant partie du syst`me dinformation tudi e e e Ex : guichet, service informatique... Si le syst`me est complexe, on peut considrer un acteur interne comme un sous-domaine e e et dtailler ce sous-domaine dans un nouveau MCC e
ORGANISATION acteurs internes

2.2

Mod`le Conceptuel des Traitements e

Mod`le Conceptuel des Traitements (MCT) e Reprsente formellement les activits exerces par le domaine (` la base de la connaise e e a sance du SI) Repose sur la prise en compte des changes (ux) du domaine avec son environnement e Seectue en faisant abstraction de lorganisation et des choix technologiques La dnition des interactions du domaine avec son environnement prime sur la mani`re e e dont on assurera ces activits e MCC et MCT Le MCT est un zoom sur le MCC Dans les MCC, on reprsente les messages changs entre acteurs e e e Dans les MCT, on reprsente comment un acteur de lorganisation ragit quand il e e reoit ce message et quelle opration il eectue c e
Messages reus traiter

Acteur
Messages mis traits

Opration

12

Mod`le de MCT e

Evnement dclencheur A (a)

Evnement dclencheur B (b)

a et b (Synchronisation) Nom de l'opration Action 1 Action 2 Action 3 Rgle d'mission 1 Rgle d'mission 2

Evnement rsultant C

Evnement rsultant C

Exemple de MCT

Demande RDV

Planning tjs

Date retenue

Colis

Date du jour

Livraison tjs

Livraison effectue

Passage du MCC au MCT


Dossier incomplet

Dossier

Rsulat Bac Candidat Avis

Scolarit

Listes admission Dossiers complets

Prsident

13

Dossier

Vrification du dossier Incomplet Complet Rsultat Bac

Dossier incomplet

Dossier Complet Dcision d'admission Transmission du dossier Dcision Transmission de l'avis

Avis

Erreurs de modlisation frquentes e e R`gles dmission : elles doivent e e Etre mutellement exclusives : deux r`gles de la mme opration ne peuvent pas tre e e e e vraies en mme temps e Couvrir tous les cas possibles Ne pas rpter les actions et les vnements rsultants e e e e e Probl`mes de synchronisation e Il faut simplier les synchonisations Probl`mes structurel e Il faut viter les cha e nes doprations et les vnements internes e e e Simplication des synchronisations
A (a) B (b) C (c)

a ou (b et c) ou b Opration

La simplication a mis en vidence que C ntait pas ncessaire e e e


A (a) B (b) C (c)

a ou b Opration

14

A (a)

B (b)

a ou b Opration

Rduction des cha e nes doprations e


A

Opration 1

Opration 2

Opration 3

De A ` E, les oprations sencha a e nent de mani`re systmatique e e On supprime les vnements internes B, C et D e e
A

Opration Action OP1 Action OP2 Action OP3

Autres exemples 15

Opration 1

Opration 2

Cha nes ` rduire ` une seule opration a e a e

Opration 1

Opration 2

Opration 3

Cas dintroduction dvnements internes e e 16

Demande de location

Traitement indisponibilit Vrifier disponibilit Calculer la Valeur Actuelle Nette Pas dispo Dispo et VAN < 30KE Dispo et VAN >= 30KE

Location impossible

Demande de caution

Demande accord location

Calculer la VAN ne se fait pas en cas dindisponibilit e


Demande de location

Traitement disponibilit Vrifier disponibilit Pas disponible Article disponible

Location impossible

Article disponible

Traitement disponibilit (bis) Calculer VAN VAN < 30KE VAN >= 30KE

Demande de caution

Demande accord location

2.3

Mod`le Conceptuel des Donnes e e

Mod`le Conceptuel des Donnes e e Mod`le Entit / Association e e Souvent nomm Entit-Relation e e Repose sur les concepts de Entits e Associations Proprits ee Permet de dcrire un ensemble de donnes relatives ` un domaine dni an de les e e a e intgrer ensuite dans une Base de Donnes e e Entit et entit type e e Entit : Une entit est un objet, une chose concr`te ou abstraite qui peut tre reconnue e e e e distinctement 17

Ex : Jean-Claude, Momo, Ma Voiture, Son 4x4, l de France, la Bretagne Ile Entit type : Une entit type est la reprsentation commune que lon adopte pour des e e e entits qui poss`dent les mmes caractristiques e e e e Ex : Personne, Voiture, Rgion e Une entit est une occurence dune entit type (ou instance) e e
Personne

Proprit (ou attribut) e e Proprit : caractristique associe ` une entit type ee e e a e Ex : Lge dune personne, la puissance dune voiture, le numro dun produit... a e On associe un domaine ` chaque proprit, qui dnit lensemble des valeurs possibles a ee e que peut prendre la proprit ee Valeur : Valeur que prend une proprit (` lintrieur du domaine) pour une entit ee a e e particuli`re e Ex : 28 ans pour lge de Jean-Claude, 150cv pour la puissance de son 4x4 a
Personne Nom Prnom

Association et association type Association : lien entre plusieurs entits e Ex : Le mariage de Momo et de Jeanne, celui de Jean-Claude et dEglantine Association type : reprsentation dun ensemble de relations qui poss`dent les mmes e e e caractristiques, lien entre plusieurs entits type e e Ex : Le mariage de deux personnes Une association type peut avoir des proprits ee
Exopsant Numro exposant Nom exposant Adresse exposant Catgorie 0,n Expose Date 0,n Stand Numro stand Emplacement Surface

Il peut y avoir plusieurs associations type liant les mmes entits si la smantique est e e e dirente e
Propritaire Personne 0,n Numro personne Nom Prnom 0,n Locataire 1,n Appartement Numro appartement Etage Escalier Porte

0,n

Abus de langage Souvent, on parle d Entit ` la place d Entit Type . Dans la suite, comme cest e a e dusage, nous utiliserons les termes : Entit pour entit type e e 18

Occurence dentit pour entit e e De mme, on utilise souvent Association plutt que Association Type . Dans la e o suite, comme cest dusage, nous utiliserons les termes : Association pour Association type Occurence dassociation pour Association Identiants Identiant : une ou plusieurs proprits dune entit ou dune association qui ont une ee e valeur unique pour chaque occurence de lentit ou de lassociation e Ex : Le numro de SECU dune personne, le numro dimmatriculation dune voie e ture... On souligne les identiants dune entit e Lidentiant dune association est un sous-ensemble des identiants des entits lis e e Cardinalits e Cardinalit dune association : le nombre de fois minimal et maximal quune occurence e dune des entits associe peut intervenir dans lassociation e e Ex : un client peut commander entre 1 et n produits
Personne Numro personne Nom Prnom Appartement Numro appartement Etage 1,n Escalier Porte Immeuble Numro immeuble 0,n Adresse

Propritaire 0,n

Fait partie 1,1

Cardinalit minimale e 0 si une occurence de lentit peut exister tout en nintervenant dans aucune occurence e de lassociation 1 si une occurence de lentit ne peut exister que si elle intervient dans au moins une e occurence de lassociation n : cas rare ` viter ae Cardinalit maximale e 1 si une occurence de lentit ne peut pas tre implique dans plus dune occurence e e e de lassociation n si une occurence de lentit ne peut tre implique dans plus dune occurence de e e e lassociation Dimension dune association Dimension : Nombre de pattes de lassociation Binaire, ternaire ou n-aire
Exopsant Numro exposant Nom exposant Adresse exposant Catgorie Stand Numro stand Emplacement Surface

0,n

Expose

0,n

0,n Salon Nom salon Date dbut Date fin Lieu

19

Types dasociations En fonction des cardinalits e 1:1 si toutes la cardinalits maximales valent 1 e 1:n sil existe au moins une cardinalit maximale ` n et une ` 1 e a a n:m si toutes la cardinalits maximales valent n e Associations rexives e Association rexive : Une association dont plusieurs pattes lient la mme entit. e e e Dans ce cas, plusieurs occurences de la mme entit seront associes e e e
filiale Exopsant Numro exposant Nom exposant Adresse exposant Catgorie 0,1 Filiale de 0,n groupe

On peut libeller chaque pattes par son rle dans lassociation o Remarques Il est parfois dicile de faire un choix entre entit et association e Ex : Un mariage est-il une association entre deux personnes ou une entit pour lequel e on veut conserver un numro, une date, un lieu, etc. et que lon souhaite manipuler e en tant que tel ? Souvent, le contexte aide ` dcider a e Lorsquon ne parvient pas ` trouver didentiant pour une entit, il faut se demana e der sil ne sagit pas en fait dune association. Si ce nest pas le cas, un identiant arbitraire numrique entier peut faire laaire e Lorsque toutes les pattes dune association portent la cardinalit 11, il faut se e demander si ce type-association et les types-entits lis ne dcrivent pas en fait un e e e seul type-entit e Cohrence entre donnes et traitements e e A chaque opration, on associe un MCD partiel : une Vue Externe des Donnes e e On sassure ainsi que toutes les donnes ncessaires sont reprsentes e e e e Le MCD global est lunion de toutes les VED Pour chaque lment du MCD global, on vrie que celui-ci est utilis dans au moins ee e e une opration e On sassure ainsi que seules les donnes ncessaires sont reprsentes e e e e On sappuie souvent sur des documents existants pour raliser les VED e

2.4

Formes normales dun MCD

Dpendances fonctionnelles e Une proprit (ou un groupe de proprits) Y dpend fonctionellement dune autre ee ee e proprit (ou groupe de proprits) X si ee ee Etant donn une valeur de X, il lui correspond une valeur unique de Y . On note e X Y (X dtermine Y ) e 20

Cette relation est transitive : si X Y et Y Z alors X Z Cependant, on ne reprsente que les DF lmentaires e ee
Patient SECU Nom patient Prnom patient Adresse patient Mutuelle Code mutuelle 1,n Nom mutuelle Adresse mutuelle

0,1

Cotise

1,n

Mdecin Numro mdecin Nom mdecin Prnom mdecin

1,n

Hospitalisation Date entre Date sortie prvue

Affection Code affection 0,n Libell affection

Les proprits non identiantes dune entit dpendent fonctionnellement de lensemble ee e e des identiants Ex : SECU NomPatient, PrnomPatient, AdressePatient e Lidentiant dune association de type nm dpend fonctionnellement des identiants des e entits lies e e Ex : SECU, NumroMdecin, CodeAection DateEntre, DateSortie e e e Une cardinalit 11 ou 01 est la source dune dpendance fonctionnelle de lidentiant e e du ct 11 vers lautre ct de lassociation oe oe Ex : SECU CodeMutuelle
e 1`re Forme Normale (1FN) Toutes les entits et les association poss`dent un identiant e e Aucune proprit nest ` valeurs multiples (poprits atomiques) ee a ee

Facture Numro Date Liste des produits

Ici, liste des produits nest pas atomique, cest une liste
Facture Numro facture Date Liste des produits Produit Numro produit 0,n Dsignation

0,n

Ligne fact

2e Forme Normale (2FN) Le mod`le est en 1FN e Toutes les DF entre les proprits sont lmentaires ee ee Toute proprit nappartenant pas ` une cl ne dpend pas seulement dune partie de ee a e e son identiant identiant Les proprits dune entit ne doivent dpendre que de lidentiant de lentit et non ee e e e dune partie de cet identiant 21

Elve Num lve Nom lve Prnom leve

0,n

Contrle Note Moyenne

Matire 0,n Nom matire

0,n Mois Mois Anne

Ici, dapr`s le schma, NumEleve, NomMati`re, Mois, Anne Moyenne e e e e Or, NumEleve et NomMati`re susent e
Moyenne Moyenne Elve Num lve Nom lve Prnom leve 0,n 0,n Contrle Note 0,n 0,n

Matire Nom matire

0,n Mois Mois Anne

3e Forme Normale (3FN) Le mod`le est en 2FN e Toutes les DF entre les proprits sont directes ee Les proprits dune entit doivent dpendre de lidentiant de lentit de mani`re ee e e e e directe Toute proprit nappartenant pas ` un identiant ne dpend pas dun attribut non ee a e identiant
Voiture Immatriculation Couleur Type Puissance Marque

Or, Type Marque, Puissance alors que Type nest pas un identiant
Voiture Immatriculation Couleur De type Modle Type Marque Puissance

1,1

0,n

Voiture Immatriculation Couleur

1,1

De type

0,n

Modle Type Marque Puissance

Tr`s bien mais si on voulait rajouter un numro de facture... e e 22

Exopsant Numro exposant Nom exposant Adresse exposant Catgorie

0,n

Facture Numro facture Montant Date Rgle 0,n Salon Nom salon Date dbut Date fin Lieu

Or, NumFact Montant, Date, Rgle alors que NumFact nest pas un identiant e e
Exopsant Numro exposant Nom exposant Adresse exposant Catgorie Facturation client 0,n 0,n Facture Numro facture Montant Date Rgle 0,n Salon Nom salon Date dbut Date fin Lieu

Prestation concerne 0,n

Forme normale de Boyce-Codd (BCNF) Le mod`le est en 3FN e Les seules dpendances fonctionnelles lmentaires sont celles dans lesquelles un identie ee ant dtermine une proprit e ee Pour les identiants composs de plusieurs proprits, ces derni`res ne doivent pas e ee e tre dpendantes dune autre proprit de lentit (pour viter les cycles de DF) e e ee e e
Vin Cru Pays Rgion

Or, Rgion Pays e


Cru Cru 1,1 Elev dans 0,n Region Rgion Pays

On a alors, Cru Region et Region Pays Attention : Mme si elle peut tre retrouve par jointure, on a perdu la dpendance e e e e Cru, Pays Rgion e Un MCD ne doit pas ncssairement tre en BCNF, il faut peser le pour et le contre avant e e e de perdre des dpendances fonctionnelles e

3
3.1

Mod`les organisationnels et logiques e


Mod`le Logique des Donnes e e

Mod`le relationnel e Mod`le relationnel : Ensemble de schmas relationnels de la forme Relation(cl1, ... e e e cln, att1, ... attm) e 23

Passage du MCD au MLD relationnel


Patient SECU Nom patient Prnom patient Adresse patient Mutuelle Code mutuelle 1,n Nom mutuelle Adresse mutuelle

0,1

Cotise

1,n

Mdecin Numro mdecin Nom mdecin Prnom mdecin

1,n

Hospitalisation Date entre Date sortie prvue

Affection Code affection 0,n Libell affection

R`gle 1 : Chaque entit avec au moins une proprit non identiante donne lieu ` un e e ee a schma relationnel, les identiants deviennent les cls e e
Patient (SECU, NomPatient, PrenomPatient, AdressePatient) Mdecin (NumroMdecin, e e e NomMdecin, PrnomMdecin) Mutuelle (CodeMutelle, NomMutuelle, AdresseMutuelle) Aection e e e (CodeAection, LibellAection) e

R`gle 2 : Les associations de type 1:n donnent lieu ` lajout de lidentiant ct 1 vers e a oe le ct n, en tant quattribut non-cl) oe e
Patient (SECU, NomPatient, ... , CodeMutuelle)

R`gle 3 : Les associations de type n:m donnent lieu ` la cration de nouveaux schmas e a e e relationnels Les identiants des entits lies deviennent des cls e e e Les proprits de lassociation deviennent des attributs simples ee
Hospitalisation (NumroMedecin, SECU, CodeAection, DateEntre, DateSortie) e e

3.2

Mod`le Organisationnel des Traitements e

Mod`le Organisationnel des Traitements e MOT = MCT + lieu + moment + nature Lieu Qui excute ? Acteurs (MCC) e Moment Quand excute-t-on lopration ? e e Agencement temporel Nature Manuelle Automatique Interactive Du MCT au MOT 1. Importer la liste des acteurs du MCC 2. Importer le MCT 24

Import de la liste des acteurs


Priode Acteur A Acteur B Acteur C Type

Flux 1

Acteur B

Flux 2_2 Flux 2_1 Acteur A

Flux 3 Acteur C

25

Import du MCT
Priode Acteur A
A

Acteur B
B C

Acteur C

Type

OP1

OP2

OP3

OP4

26

Rpartition des oprations en les acteurs e e

Priode

Acteur A
B C

Acteur B

Acteur C

Type

OP2

Manuel

OP1 E

Manuel

OP4

Manuel

OP3

Manuel

27

Priode

Acteur A

Acteur B

Acteur C

Type

OP1 E

Manuel

OP4

Manuel

OP3

Manuel

28

Division des traitements rpartis entre plusieurs acteurs e


Priode Acteur A Acteur B Acteur C Type

OP1

Manuel

OP4a

Manuel

OP3

Manuel

OP4b

Manuel

29

Dnition des priodes de traitement e e


Priode Acteur A Acteur B Acteur C Type

lun

OP1

Manuel

lun, mar, mer

OP4a

Manuel

???

OP3

Manuel

jeu, ven

OP4b

Manuel

30

Division des traitements rpartis sur plusieurs priodes e e

Priode

Acteur A

Acteur B

Acteur C

Type

lun

OP1

Manuel

lun, mar, mer

OP4a

Manuel

lun, mar, mer

OP3a

Manuel

jeu, ven

OP4b

F J

Manuel

jeu, ven

OP3b

Manuel

31

Priode

Acteur B

Acteur C

Type

lun, mar, mer

OP3a

Manuel

jeu, ven

OP4b

F J

Manuel

jeu, ven

OP3b

Manuel

32

Dnition des types de traitements e


Priode Acteur B Acteur C Type

lun, mar, mer

OP3a

Manuel

jeu, ven

OP4b

F J

Manuel

jeu, ven

OP3b1

Manuel

jeu, ven

OP3b2

Automatique

4
4.1

Mod`les physiques e
Mod`le Physique des Donnes e e

Mod`le Physique des Donnes (MPD) e e Transformation en tables des Entits et associations si on produit le MPD directement ` partir du MCD e a Schmas relationnels si on produit un MLD e Dpend de la base de donnes cible e e Types de donnes e Domaines des proprits ee Les attributs qui permettent dindexer les tables sont des cls primaires e 33

Les attributs (non cls primaires) qui font rfrence aux cls primaires dautres tables e ee e sont des attributs secondaires Associations n:m
Personne SECU Nom Prnom Date de naissance Lieu de naissance Sexe Domicile Numro 1,n Etage Superficie Sur Cour

0,n

Possde Date d'achat

PERSONNE SECU NOM PRENOM DATE_DE_NAISSANCE LIEU_DE_NAISSANCE SEXE

LongInteger Memo Memo DateTime Memo Text(1)

DOMICILE NUMERO LongInteger ETAGE LongInteger SUPERFICIE LongInteger COUR_OU_RUE YesNo

SECU = SECU

NUMERO = NUMERO

POSSEDE SECU LongInteger NUMERO LongInteger DATE_D_ENTREE DateTime

Associations 1:n
Personne SECU Nom Prnom Date de naissance Lieu de naissance Sexe Domicile Numro Etage 0,n Superficie Sur Cour

0,1

Rside Date d'entre

PERSONNE SECU NUMERO NOM PRENOM DATE_DE_NAISSANCE LIEU_DE_NAISSANCE SEXE DATE_D_ENTREE

LongInteger LongInteger Memo Memo DateTime Memo Text(1) DateTime

NUMERO = NUMERO

DOMICILE NUMERO LongInteger ETAGE LongInteger SUPERFICIE LongInteger COUR_OU_RUE YesNo

Associations 1:1
Personne SECU Nom Prnom Date de naissance Lieu de naissance Sexe Domicile Numro Etage Superficie Sur Cour

1,1

Association

0,1

PERSONNE SECU NUMERO NOM PRENOM DATE_DE_NAISSANCE LIEU_DE_NAISSANCE SEXE

SECU = SECU

LongInteger LongInteger Memo Memo DateTime Memo Text(1)

DOMICILE NUMERO LongInteger SECU LongInteger ETAGE LongInteger SUPERFICIE LongInteger COUR_OU_RUE YesNo
NUMERO = NUMERO

34

You might also like