Upload
unibej
View
624
Download
0
Embed Size (px)
Citation preview
1
A-Introduction agrave Merise
1 Le systegraveme drsquoinformation de gestion
2 La modeacutelisation
B-Introduction au Modegravele conceptuel des donneacutees
1 Recueil des donneacutees
2 Preacutesentation des concepts et du formalisme du MCD
3 Regravegles de base pour la construction dun MCD
4 Introduction aux cardinaliteacutes
C-Les cardinaliteacutes et les diffeacuterents types dassociations
1 Les cardinaliteacutes
2 Les diffeacuterents types dassociations
3 Repreacutesentation des cardinaliteacutes
4 Association ternaire
5 Associations reacuteflexives
D-Passage MCD lt=gt modegravele relationnel
1 Rappel sur le modegravele relationnel
2 Passage du MCD au MR
E-Normalisation du modegravele relationnel
1 Deacutependance fonctionnelle
2 Inteacuterecirct de la normalisation
3 Les 3 formes normales
F-Les diagrammes de flux
1 Vocabulaire associeacute aux modegrave les de flux
2 Modegravele de contexte
3 Modegravele de flux conceptuel ou diagramme de flux de donneacutees
G-Les Modegraveles de traitements (MCT et MCTA)
1 MCT
2 Inteacutegration des donneacutees dans le MCT (agrave MCTA)
SANGARE SOULEYMANE
00225-08281648
sangsoulinteryahoofr
sangsoulcihotmailcom
A-Introduction agrave Merise
2
I-Systegraveme drsquoinformation de gestion
Sommaire
1 Qursquoest ce qursquoun systegraveme
2 Qursquoest ce qursquoun systegraveme drsquoinformation de gestion
3 Les fonctions du systegraveme drsquoinformation
Le champ drsquoaction drsquoun informaticien de gestion srsquoappelle systegraveme drsquoinformation de gestion
(SIG)
1-Qursquoest ce qursquoun systegraveme
Un systegraveme est un tout constitueacute drsquoeacuteleacutements unis par des relations leurs proprieacuteteacutes et les
valeurs que peuvent prendre ces derniegraveres ainsi que son activiteacute et lrsquoorganisation qui en
deacutecoule
Lrsquoentreprise peut ecirctre vue comme un systegraveme composeacute drsquoeacuteleacutements tels que des laquo employeacutes raquo
des laquo services raquo des laquo produits raquo etc Les proprieacuteteacutes deacutecrivant ces eacuteleacutements peuvent ecirctre laquo le
matricule de lrsquoemployeacute raquo son laquo nom raquo la laquo reacutefeacuterence raquo du produit sa laquo deacutesignation raquo etc
Entre ces eacuteleacutements on trouve des relations telles la relation laquo est rattacheacutee raquo entre un
employeacute et son service la relation laquo est stockeacutee raquo entre un produit et son deacutepocirct de stockagehellip
Les proprieacuteteacutes de ces relations seront du type laquo date drsquoentreacutee dans le service raquo laquo quantiteacute
stockeacutee raquo hellip
2-Qursquoest ce qursquoun systegraveme drsquoinformation de gestion
Le systegraveme drsquoinformation drsquoune entreprise est lrsquoensemble des informations qui y circulent
ainsi que lrsquoensemble des moyens mis en oeuvre pour les geacuterer Lrsquoobjectif drsquoun systegraveme
drsquoinformation est de restituer lrsquoinformation agrave la personne concerneacutee sous la forme approprieacutee
et en temps opportun pour prendre une deacutecision ou effectuer un travail
Toutes les informations qui circulent dans lrsquoorganisation quelle que soit leur forme font
partie du SI Mais seules les informations formaliseacutees2 nous inteacuteressent car elles sont les
seules agrave ecirctre vraiment utilisables en informatique Lrsquoensemble de ces informations formaliseacutees
constituent ce qursquoon appelle le systegraveme drsquoinformation automatiseacute
Les systegravemes drsquoinformation preacuteexistent agrave lrsquoinformatique Avant drsquoutiliser les ordinateurs les
informations concernant les clients les commandes les stocks etc eacutetaient meacutemoriseacutees sur
papier sous forme de fiches formulaires regroupeacutes dans des dossiers Et il existait des
proceacutedures manuelles pour traiter ces informations Le systegraveme informatiseacute doit ecirctre au
service du systegraveme drsquoinformation mis en place par les dirigeants de lrsquoentreprise (et non
lrsquoinverse comme cela existe trop souvent)
3-Les fonctions du systegraveme drsquoinformation
Le systegraveme drsquoinformation de lrsquoentreprise reccediloit de son environnement des informations qursquoil
doit traiter Ce sont par exemple des commandes de clients qui doivent ecirctre traiteacutees jusqursquoagrave
leur aboutissement ou lrsquoarriveacutee des factures des fournisseurs Le SI reccediloit et traite aussi des
informations internes agrave lrsquoorganisation comme par exemple les documents comptables ou les
chiffres de production
On peut distinguer 4 fonctions principales du systegraveme drsquoinformation
1- Recueillir lrsquoinformation (saisie)
3
2- Meacutemoriser lrsquoinformation (stockage dans des fichiers ou
bases de donneacutees)
3- Exploiter lrsquoinformation (traitement)
a Consulter
b Organiser
c Mettre agrave jour
d Produire de nouvelles informations par des calculs
4- Diffuser lrsquoinformation (eacutedition)
II-MeriseModeacutelisation
Sommaire
1 Qursquoest qursquoun modegravele
2 La meacutethode Merise
o 21 Les composantes de Merise
o 22 La deacutemarche Merise
o 23 Les niveaux drsquoabstraction
o 24 La courbe du soleil
Les meacutethodes drsquoeacutetude des systegravemes drsquoinformation ont pour objectif de deacutecrire ces systegravemes agrave
lrsquoaide de modegraveles puis de reacutealiser les systegravemes informatiseacutes qui en deacutecoulent MERISE est
une de ces meacutethodes la plus reacutepandue en France actuellement
1-Qursquoest qursquoun modegravele
Un modegravele peut ecirctre deacutefini comme eacutetant une image de la reacutealiteacute Toute reacutealiteacute complexe
a besoin drsquoecirctre repreacutesenteacutee pour ecirctre comprise et maicirctriseacutee
Exemple
Une carte routiegravere repreacutesente agrave lrsquoaide de symboles tout ou partie drsquoun territoire et son
infrastructure routiegravere Le plan eacutetabli par un architecte permet agrave chaque corps de meacutetier
drsquointervenir efficacement dans la construction drsquoun immeuble
Ainsi lrsquoinformaticien peut ecirctre vu comme lrsquoarchitecte du systegraveme informatiseacute qui en dresse le
plan deacutetailleacute Un modegravele doit permettre de communiquer dans ambiguiumlteacute Donc il faut utiliser
un formalisme normaliseacute Merise propose plusieurs modegraveles pour repreacutesenter le SIG
2-La meacutethode Merise
Merise est une meacutethode qui permet de construire un systegraveme drsquoinformation automatiseacute qui
soit efficace flexible et adapteacute agrave lrsquoentreprise Crsquoest une meacutethode neacutee en 1976 suite agrave un projet
du Ministegravere de lrsquoIndustrie
21-Les composantes de Merise
Comme toute meacutethode drsquoanalyse et de conception des SI Merise regroupe
Des modegraveles (concepts regravegles de repreacutesentation)
Un langage (vocabulaire regravegles de syntaxe)
Une deacutemarche
Des outils (des logiciels tels que AMC Designor ou Win Design)
Elle permet de repreacutesenter les composantes drsquoun SIG
4
Les acteurs
Les donneacutees
Les traitements
Les proceacutedures
Les postes de travail etc
Ceci afin de concevoir reacutealiser et mettre en place une nouvelle informatisation
22-La deacutemarche Merise
1-Approche globale du SI Scheacutema directeur
2- Etude des diffeacuterentes solutions possible puis choix Etude preacutealable
3- Compleacutement des speacutecifications du domaine Etude deacutetailleacutee
4- Speacutecifications techniques complegravetes Etude technique
5- Ecriture des programmes Production
6- Tests essais formation utilisateur Mise en oeuvre
7- Corrections et adaptations du logiciel Maintenance
8- Controcircle de la conformiteacute des reacutesultats par rapport aux
demandes
Controcircle de qualiteacute
recette
23-Les niveaux drsquoabstraction
La neacutecessiteacute drsquoaborder diffeacuterents types de preacuteoccupations (deacutecrire lrsquoactiviteacute deacutefinir les regravegles
de gestion deacutefinir les informations reacutepartir les traitements entre lrsquohomme et la machine
organiser physiquement les fichiers choisir le mateacuteriel reacutepartir les responsabiliteacutes etc) a
conduit agrave proposer diffeacuterents niveaux drsquoabstraction
Les voici
NIVEAU QUESTION CONTENU DOMAINE
Conceptuel Que faire
- donneacutees manipuleacutees
- regravegles de gestion
- enchaicircnement des traitements
Gestion
Organisationnel
Qui fait quoi
Quand
Ougrave
- partage des tacircches
- mode de traitement
- reacutepartition geacuteographique des traitements
- organisation des donneacutees
Organisation
Physique Comment
- programmes
- logiciels
- mateacuteriels
Technique
Merise (du moins dans sa premiegravere version) est une meacutethode qui preacuteconise de seacuteparer lrsquoeacutetude
des donneacutees et les traitements
Chaque modegravele de Merise concerne soit les donneacutees soit les traitements agrave un niveau
drsquoabstraction donneacute
Voici la preacutesentation de ces diffeacuterents modegraveles selon cette typologie
5
NIVEAU DONNEES TRAITEMENT
Conceptuel MCD
Modegravele Conceptuel des Donneacutees
MCT
Modegravele Conceptuel des Traitements
Organisationnel MLD
Modegravele logique des donneacutees
MOT
Modegravele Organisationnel des Traitements
Physique MPD
Modegravele Physique des Donneacutees
MOPT
Modegravele Opeacuterationnel des Traitements
24-La courbe du soleil
Merise est utiliseacute dans le cas ougrave lrsquoon veut mettre en place ou modifier un systegraveme informatiseacute
Dans les deux cas il convient drsquoanalyser et de critiquer le systegraveme existant afin de creacuteer un
nouveau systegraveme adapteacute agrave lrsquoorganisation Pour cela la deacutemarche consiste agrave suivre la laquo courbe
du soleil raquo
Lrsquoanalyse du systegraveme existant conduit agrave construire
Au niveau logico-physique
o Le modegravele conceptuel des communications (MCC) qui repreacutesente les eacutechanges
de flux drsquoinformations entre les diffeacuterents acteurs du SI et les acteurs exteacuterieurs
o Le scheacutema de circulation des documents (SCD) qui repreacutesente les eacutechanges
drsquoinformations entre les acteurs du SI ainsi que les tacircches qui produisent les
documents
Au niveau organisationnel
o Le modegravele organisationnel des traitements qui permet de preacuteciser par rapport agrave
lrsquoeacutetape preacuteceacutedente si les tacircches sont automatiseacutees ou manuelles les eacuteveacutenements
deacuteclencheurs et les conditions drsquoeacutemission des objets externes
Au niveau conceptuel
o Le MCD (modegravele conceptuel des donneacutees) et le MCT (modegravele conceptuel des
traitements)
Le passage de la modeacutelisation du systegraveme existant agrave la modeacutelisation du systegraveme futur
implique une critique du systegraveme existant une reacuteflexion sur les eacutevolutions possibles en tenant
compte des nouveaux objectifs assigneacutes au systegraveme futur Lrsquoanalyse du systegraveme futur conduit
agrave construire
Au niveau conceptuel
o Le MCD et le MCT deacutecoulant de la critique de lrsquoexistant
Au niveau organisationnel
6
o Le MOT du systegraveme futur mettant en valeur la nouvelle organisation (y
compris en terme de ressources humaines et de nouveaux postes de travail)
Au niveau logico-physique
o Le MLD modegravele logique des donneacutees et le MPD modegravele physique des donneacutees
obtenus agrave partir du MCD adapteacute aux choix effectueacutes dans le MOT et aux
besoins drsquoinformations compleacutementaires
o Le MPT modegravele physique des traitements (algorithmes structure des
programmeshellip)
B- Introduction au Modegravele conceptuel des donneacutees
Deacutefinition
Le modegravele conceptuel des donneacutees (MCD) a pour but de repreacutesenter de faccedilon structureacutee les
donneacutees qui seront utiliseacutees par le systegraveme dinformation Le modegravele conceptuel des donneacutees
deacutecrit la seacutemantique crsquoest agrave dire le sens attacheacute agrave ces donneacutees et agrave leurs rapports et non agrave
lrsquoutilisation qui peut en ecirctre faite
On eacutetablit le MCD apregraves avoir recenseacute et donneacute un nom agrave lrsquoensemble des donneacutees du
domaine eacutetudieacute Ensuite on eacutetudie les relations existantes entre ces donneacutees (deacutependances
fonctionnelles) pour aboutir au MCD
I-MCDRecueil des donneacutees
Exemple
Voilagrave plusieurs phrases qui deacutecrivent une seule et mecircme personne prononceacutees par des
personnes diffeacuterentes
laquo Odile Martin est une personne convenable Et je ne dis pas ccedila parce crsquoest une cliente qui
mrsquoen prend pour 100F toutes les semaines raquo Le boulanger laquo MARTIN Odile habitant 6 rue
des preacutes Saint Amour (Jura) neacutee le 130273 agrave Beacuteziers (Heacuterault) hellip raquo Un inspecteur de police
judiciaire laquo Odile Martin voilagrave une personne qui nrsquoa jamais commis aucun peacutecheacute mortel qui
a fait preuve de beaucoup de geacuteneacuterositeacute Elle ira au paradis raquo Saint Pierre Diffeacuterents
interlocuteurs diffeacuterents points de vue Lequel est le plus pertinent
Ca deacutepend du domaine eacutetudieacute Mais on ne recense que les informations objectives formelles
Quand on analyse les donneacutees sur un objet (abstrait ou concret) du reacuteel il est neacutecessaire de faire le tri entre ce qui est neacutecessaire pour le systegraveme drsquoinformation et ce qui ne lrsquoest pas
2deg repreacutesentation
Odile sera repreacutesenteacutee par au moins ces informations
Nom
Preacutenom
Numeacutero de la voie
Nature de la voie
Nom de la voie
Commune de reacutesidence
Deacutepartement de reacutesidence
Jour de naissance
Mois de naissance
Anneacutee de naissance
Commune de naissance
Deacutepartement de naissance
7
Peut-on deacutecomposer encore Par exemple la commune de reacutesidence est composeacutee de 2 mots
de mecircme que le nom de la voie hellip va-t-on les deacutecomposer Non ces mots repreacutesentent
ensemble une information ne veulent rien dire agrave eux seuls
Mais nrsquoavons-nous pas trop deacutecomposeacute Il existe par exemple des liens entre les
informations 3 4 et 5 qui repreacutesentent lrsquoadresse drsquoOdile entre les informations 8 et 9 qui
repreacutesentent sa date de naissancehellip On va alors regrouper ensemble ces informations relieacutees
On remarque que toutes les personnes (et Odile est une personne on dit que crsquoest une
OCCURRENCE de personne) de la maniegravere suivante
on peut dire qursquoon a creacuteeacute une entiteacute (un ensemble) PERSONNE dont Odile est une
occurrence (ou instance)
Les donneacutees de base sont appeleacutees PROPRIETES ou ATTRIBUTS
II-MCDConcepts et du formalisme
Sommaire
1 Les concepts de base
o 11 Entiteacute
o 12 Association
o 13 Cardinaliteacutes
2 La notion drsquooccurrence
Exemple
1-Les concepts de base
8
11-Entiteacute
Une entiteacute repreacutesente un objet du SI (acteur document concept hellip) ou plus exactement un
ensemble drsquoobjets ayant les mecircmes caracteacuteristiques
Dans une entiteacute on met les informations neacutecessaires et suffisantes pour caracteacuteriser cette
entiteacute Ces informations sont appeleacutees proprieacuteteacutes Les proprieacuteteacutes sont collecteacutees lors de
lrsquoeacutetablissement du dictionnaire des donneacutees (voire partie suivante) Les proprieacuteteacutes prennent
des valeurs pour chaque occurrence drsquoune entiteacute
Une proprieacuteteacute particuliegravere appeleacutee identifiant permet de distinguer sans ambiguiumlteacute toutes les
occurrences de lrsquoentiteacute Lrsquoidentifiant est toujours souligneacute Lrsquoidentifiant est une proprieacuteteacute qui
ne peut pas changer au cours du temps pour une occurrence
12-Association
Crsquoest un lien entre deux entiteacutes (ou plus) On doit lui donner un nom souvent un verbe qui
caracteacuterise le type de relation entre les entiteacutes
Une association possegravede parfois des proprieacuteteacutes
13-Cardinaliteacutes
Ce sont des expressions qui permettent drsquoindiquer combien de fois au minimum et au
maximum le lien entre 2 entiteacutes peut se produire Pour une association de 2 entiteacutes il y a 4
cardinaliteacutes agrave indiquer
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propre au SI eacutetudieacute qui
expriment des contraintes sur le modegravele
2-La notion drsquooccurrence
Il ne faut pas confondre
ENTITE et OCCURRENCE drsquoentiteacute
ni PROPRIETE et VALEUR de proprieacuteteacute
ni ASSOCIATION et OCCURRENCE drsquoassociation
Reprenons ces concepts
Une ENTITE est une FAMILLE drsquoobjets ayant les mecircmes caracteacuteristiques appeleacutees
proprieacuteteacutes
Un MEMBRE de la famille est appeleacute OCCURRENCE drsquoentiteacute
Une entiteacute repreacutesente un ENSEMBLE drsquoOCCURRENCES
Une PROPRIETE est une information eacuteleacutementaire qui permet de deacutecrire une entiteacute ou une
association Une proprieacuteteacute peut prendre une VALEUR (crsquoest lrsquoeacutequivalent drsquoune variable)
(On peut dire qursquoune VALEUR est une OCCURRENCE de PROPRIETE)
De mecircme une ASSOCIATION est un LIEN entre 2 entiteacutes ou plus et une OCCURRENCE
drsquoassociation est un lien entre 2 OCCURRENCES drsquoentiteacutes
Exemple
9
Consideacuterons le scheacutema suivant
PROPRIETE VALEUR de PROPRIETE
Reacutefeacuterence 456
Deacutesignation Manteau
Prix unitaire 100euro
ENTITE OCCURRENCE drsquoentiteacute
PRODUIT Manteau de reacutefeacuterence 456 agrave 100euro
COMMANDE numeacutero 123 du 081002
ASSOCIATION OCCURRENCE drsquoassociation
CONCERNER lien entre la commande 123 et le manteau 456 pour une quantiteacute de 3 uniteacutes
On peut repreacutesenter une entiteacute comme un ensemble ougrave les eacuteleacutements sont les
occurrences
Une association peut ecirctre vue comme lrsquoensemble des relations entre les occurrences
des entiteacutes associeacutees
Attention agrave ne pas confondre occurrences et proprieacuteteacutes En effet on peut dire agrave la fois qursquoune entiteacute est un ensemble de proprieacuteteacutes et un ensemble
drsquooccurrences
Une proprieacuteteacute est une rubrique un eacuteleacutement drsquoinformation qui permet de deacutecrire une entiteacute
Une entiteacute est deacutecrite par plusieurs proprieacuteteacutes
Une occurrence est un exemplaire un eacuteleacutement particulier de la famille repreacutesenteacutee par lrsquoentiteacute
Les proprieacuteteacutes drsquoune entiteacute prennent des valeurs pour chaque occurrence
Chaque occurrence drsquoentiteacute est identifieacutee de maniegravere unique par un identifiant qui est une
proprieacuteteacute particuliegravere telle que 2 occurrences de lrsquoentiteacute ne peuvent pas avoir la mecircme valeur
pour cette proprieacuteteacute
10
On repreacutesente souvent les occurrences drsquoune entiteacute sous forme drsquoun tableau
Les lignes correspondent aux occurrences et les colonnes correspondent aux proprieacuteteacutes
Exemple
III-MCDRegravegles de construction
Sommaire
1 Regravegles concernant les proprieacuteteacutes
2 Regravegles concernant les entiteacutes
3 Regravegles concernant les associations
1-Regravegles concernant les proprieacuteteacutes
Pour qursquoil nrsquoy ait pas drsquoambiguiumlteacute possible une proprieacuteteacute ne peut pas apparaicirctre
plusieurs fois dans un MCD
Autrement dit toutes les proprieacuteteacutes drsquoun MCD doivent ecirctre diffeacuterentes les unes des autres
Exemples Une proprieacuteteacute Date ne peut pas apparaicirctre simultaneacutement dans une entiteacute
COMMANDE et une entiteacute FACTURE Si crsquoeacutetait le cas il faudrait remplacer Date par
Date_commande et Date_facture par exemple
Toute proprieacuteteacute ne doit avoir agrave un moment donneacute qursquoune seule valeur pour une
occurrence Par conseacutequent un nom de proprieacuteteacute doit toujours ecirctre au singulier
Exemple Dans la proprieacuteteacute note drsquoune entiteacute ELEVE on ne peut avoir qursquoune seule note Si
on veut la note de plusieurs matiegraveres il faut mettre autant de proprieacuteteacutes qursquoil y a de matiegraveres
par exemple noteALSI noteAMSI noteDAIGL etc
2-Regravegles concernant les entiteacutes
Toute entiteacute doit comporter un identifiant qui permet de distinguer entre elles toutes
les occurrences drsquoune mecircme entiteacute Lrsquoidentifiant est placeacute en tecircte des proprieacuteteacutes et il
est souligneacute
Pour chaque occurrence drsquoune entiteacute il ne doit y avoir qursquoune seule valeur pour
chacune des proprieacuteteacutes agrave un instant donneacute Cette valeur peut changer au cours du
temps mais agrave un instant donneacute il nrsquoy en a qursquoune seule
3-Regravegles concernant les associations
Lrsquoidentifiant drsquoune association est implicitement formeacute par la concateacutenation des
identifiants des entiteacutes lieacutees
11
On ne repreacutesente pas cet identifiant au niveau du MCD Deux occurrences drsquoassociation ne
peuvent pas avoir le mecircme identifiant Pour une occurrence lrsquoidentifiant ne doit jamais
changer de valeur (lrsquoidentifiant est une proprieacuteteacute constante)
Une association peut avoir des proprieacuteteacutes mais ce nrsquoest pas obligatoire
IV-MCDIntroduction aux cardinaliteacutes
Sommaire
1 Formalisme
2 La cardinaliteacute minimale
o 21 Exemples
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple 1
o 32 Exemple 2
4 Conclusion
5 Exemple
6 Repreacutesentation des cardinaliteacutes
Les cardinaliteacutes drsquoune entiteacute dans une association exprime le nombre de fois qursquoune
occurrence de cette entiteacute est impliqueacutee dans lrsquoassociation au minimum et au maximum
1-Formalisme
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
21--Exemples
Pour la cardinaliteacute mini entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
Si la reacuteponse est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas un
client raquo on met la cardinaliteacute mini agrave 1
12
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
22-Application
1 Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
2 Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum lrsquoentiteacute peut ecirctre en relation avec lrsquoassociation Cela
peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute on indique la valeur n) ou une seule
fois
On reacutepond agrave la question Combien au maximum lrsquoentiteacute peut participer agrave lrsquoassociation
Si la reacuteponse est laquo au plus une fois raquo la cardinaliteacute maximale prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo la cardinaliteacute maximale prend la valeur N
31-Exemple 1
REGLES DE GESTION
Un salarieacute est affecteacute au plus agrave un seul service Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
32-Exemple 2
REGLE DE GESTION Un eacutelegraveve doit suivre au minimum une option et au maximum
3 options
13
4-Conclusion
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1 n un(e) ou plusieurs
0 n zeacutero ou plusieurs
5-Exemple
6-Repreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave plusieurs
voitures
14
Une personne a une adresse ou est sans domicile A une adresse il y a une ou plusieurs
personne qui y habitent
C-Les cardinaliteacutes et les diffeacuterents types dassociations
I-MCDCardinaliteacutes
Sommaire
1 Deacutefinition et formalisme
2 La cardinaliteacute minimale
o 21 Exemple
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple
4 Reacutecapitulatif
o 41 Exemples complets
1-Deacutefinition et formalisme
Les cardinaliteacutes sont des couples de valeur que lon trouve entre chaque entiteacute et ses
associations lieacutees
Donc pour une association de 2 entiteacutes il y a 4 cardinaliteacutes agrave indiquer (2 de chaque cocircteacute)
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Pour les associations agrave 2 entiteacutes ce sont des valeurs qui permettent drsquoindiquer combien de fois
au minimum et au maximum une occurrence dentiteacute peut ecirctre lieacutee agrave une autre occurrence
dentiteacute
De maniegravere plus geacuteneacuterale les cardinaliteacutes drsquoune entiteacute dans une association expriment le
nombre de fois qursquoune occurrence de cette entiteacute peut ecirctre impliqueacutee dans une
occurrence de lassociation au minimum et au maximum
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propres agrave lorganisation
eacutetudieacutee qui sont deacutecideacutees par les gestionnaires et deacutecideurs Ces regravegles expriment des
contraintes sur le modegravele
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
2
I-Systegraveme drsquoinformation de gestion
Sommaire
1 Qursquoest ce qursquoun systegraveme
2 Qursquoest ce qursquoun systegraveme drsquoinformation de gestion
3 Les fonctions du systegraveme drsquoinformation
Le champ drsquoaction drsquoun informaticien de gestion srsquoappelle systegraveme drsquoinformation de gestion
(SIG)
1-Qursquoest ce qursquoun systegraveme
Un systegraveme est un tout constitueacute drsquoeacuteleacutements unis par des relations leurs proprieacuteteacutes et les
valeurs que peuvent prendre ces derniegraveres ainsi que son activiteacute et lrsquoorganisation qui en
deacutecoule
Lrsquoentreprise peut ecirctre vue comme un systegraveme composeacute drsquoeacuteleacutements tels que des laquo employeacutes raquo
des laquo services raquo des laquo produits raquo etc Les proprieacuteteacutes deacutecrivant ces eacuteleacutements peuvent ecirctre laquo le
matricule de lrsquoemployeacute raquo son laquo nom raquo la laquo reacutefeacuterence raquo du produit sa laquo deacutesignation raquo etc
Entre ces eacuteleacutements on trouve des relations telles la relation laquo est rattacheacutee raquo entre un
employeacute et son service la relation laquo est stockeacutee raquo entre un produit et son deacutepocirct de stockagehellip
Les proprieacuteteacutes de ces relations seront du type laquo date drsquoentreacutee dans le service raquo laquo quantiteacute
stockeacutee raquo hellip
2-Qursquoest ce qursquoun systegraveme drsquoinformation de gestion
Le systegraveme drsquoinformation drsquoune entreprise est lrsquoensemble des informations qui y circulent
ainsi que lrsquoensemble des moyens mis en oeuvre pour les geacuterer Lrsquoobjectif drsquoun systegraveme
drsquoinformation est de restituer lrsquoinformation agrave la personne concerneacutee sous la forme approprieacutee
et en temps opportun pour prendre une deacutecision ou effectuer un travail
Toutes les informations qui circulent dans lrsquoorganisation quelle que soit leur forme font
partie du SI Mais seules les informations formaliseacutees2 nous inteacuteressent car elles sont les
seules agrave ecirctre vraiment utilisables en informatique Lrsquoensemble de ces informations formaliseacutees
constituent ce qursquoon appelle le systegraveme drsquoinformation automatiseacute
Les systegravemes drsquoinformation preacuteexistent agrave lrsquoinformatique Avant drsquoutiliser les ordinateurs les
informations concernant les clients les commandes les stocks etc eacutetaient meacutemoriseacutees sur
papier sous forme de fiches formulaires regroupeacutes dans des dossiers Et il existait des
proceacutedures manuelles pour traiter ces informations Le systegraveme informatiseacute doit ecirctre au
service du systegraveme drsquoinformation mis en place par les dirigeants de lrsquoentreprise (et non
lrsquoinverse comme cela existe trop souvent)
3-Les fonctions du systegraveme drsquoinformation
Le systegraveme drsquoinformation de lrsquoentreprise reccediloit de son environnement des informations qursquoil
doit traiter Ce sont par exemple des commandes de clients qui doivent ecirctre traiteacutees jusqursquoagrave
leur aboutissement ou lrsquoarriveacutee des factures des fournisseurs Le SI reccediloit et traite aussi des
informations internes agrave lrsquoorganisation comme par exemple les documents comptables ou les
chiffres de production
On peut distinguer 4 fonctions principales du systegraveme drsquoinformation
1- Recueillir lrsquoinformation (saisie)
3
2- Meacutemoriser lrsquoinformation (stockage dans des fichiers ou
bases de donneacutees)
3- Exploiter lrsquoinformation (traitement)
a Consulter
b Organiser
c Mettre agrave jour
d Produire de nouvelles informations par des calculs
4- Diffuser lrsquoinformation (eacutedition)
II-MeriseModeacutelisation
Sommaire
1 Qursquoest qursquoun modegravele
2 La meacutethode Merise
o 21 Les composantes de Merise
o 22 La deacutemarche Merise
o 23 Les niveaux drsquoabstraction
o 24 La courbe du soleil
Les meacutethodes drsquoeacutetude des systegravemes drsquoinformation ont pour objectif de deacutecrire ces systegravemes agrave
lrsquoaide de modegraveles puis de reacutealiser les systegravemes informatiseacutes qui en deacutecoulent MERISE est
une de ces meacutethodes la plus reacutepandue en France actuellement
1-Qursquoest qursquoun modegravele
Un modegravele peut ecirctre deacutefini comme eacutetant une image de la reacutealiteacute Toute reacutealiteacute complexe
a besoin drsquoecirctre repreacutesenteacutee pour ecirctre comprise et maicirctriseacutee
Exemple
Une carte routiegravere repreacutesente agrave lrsquoaide de symboles tout ou partie drsquoun territoire et son
infrastructure routiegravere Le plan eacutetabli par un architecte permet agrave chaque corps de meacutetier
drsquointervenir efficacement dans la construction drsquoun immeuble
Ainsi lrsquoinformaticien peut ecirctre vu comme lrsquoarchitecte du systegraveme informatiseacute qui en dresse le
plan deacutetailleacute Un modegravele doit permettre de communiquer dans ambiguiumlteacute Donc il faut utiliser
un formalisme normaliseacute Merise propose plusieurs modegraveles pour repreacutesenter le SIG
2-La meacutethode Merise
Merise est une meacutethode qui permet de construire un systegraveme drsquoinformation automatiseacute qui
soit efficace flexible et adapteacute agrave lrsquoentreprise Crsquoest une meacutethode neacutee en 1976 suite agrave un projet
du Ministegravere de lrsquoIndustrie
21-Les composantes de Merise
Comme toute meacutethode drsquoanalyse et de conception des SI Merise regroupe
Des modegraveles (concepts regravegles de repreacutesentation)
Un langage (vocabulaire regravegles de syntaxe)
Une deacutemarche
Des outils (des logiciels tels que AMC Designor ou Win Design)
Elle permet de repreacutesenter les composantes drsquoun SIG
4
Les acteurs
Les donneacutees
Les traitements
Les proceacutedures
Les postes de travail etc
Ceci afin de concevoir reacutealiser et mettre en place une nouvelle informatisation
22-La deacutemarche Merise
1-Approche globale du SI Scheacutema directeur
2- Etude des diffeacuterentes solutions possible puis choix Etude preacutealable
3- Compleacutement des speacutecifications du domaine Etude deacutetailleacutee
4- Speacutecifications techniques complegravetes Etude technique
5- Ecriture des programmes Production
6- Tests essais formation utilisateur Mise en oeuvre
7- Corrections et adaptations du logiciel Maintenance
8- Controcircle de la conformiteacute des reacutesultats par rapport aux
demandes
Controcircle de qualiteacute
recette
23-Les niveaux drsquoabstraction
La neacutecessiteacute drsquoaborder diffeacuterents types de preacuteoccupations (deacutecrire lrsquoactiviteacute deacutefinir les regravegles
de gestion deacutefinir les informations reacutepartir les traitements entre lrsquohomme et la machine
organiser physiquement les fichiers choisir le mateacuteriel reacutepartir les responsabiliteacutes etc) a
conduit agrave proposer diffeacuterents niveaux drsquoabstraction
Les voici
NIVEAU QUESTION CONTENU DOMAINE
Conceptuel Que faire
- donneacutees manipuleacutees
- regravegles de gestion
- enchaicircnement des traitements
Gestion
Organisationnel
Qui fait quoi
Quand
Ougrave
- partage des tacircches
- mode de traitement
- reacutepartition geacuteographique des traitements
- organisation des donneacutees
Organisation
Physique Comment
- programmes
- logiciels
- mateacuteriels
Technique
Merise (du moins dans sa premiegravere version) est une meacutethode qui preacuteconise de seacuteparer lrsquoeacutetude
des donneacutees et les traitements
Chaque modegravele de Merise concerne soit les donneacutees soit les traitements agrave un niveau
drsquoabstraction donneacute
Voici la preacutesentation de ces diffeacuterents modegraveles selon cette typologie
5
NIVEAU DONNEES TRAITEMENT
Conceptuel MCD
Modegravele Conceptuel des Donneacutees
MCT
Modegravele Conceptuel des Traitements
Organisationnel MLD
Modegravele logique des donneacutees
MOT
Modegravele Organisationnel des Traitements
Physique MPD
Modegravele Physique des Donneacutees
MOPT
Modegravele Opeacuterationnel des Traitements
24-La courbe du soleil
Merise est utiliseacute dans le cas ougrave lrsquoon veut mettre en place ou modifier un systegraveme informatiseacute
Dans les deux cas il convient drsquoanalyser et de critiquer le systegraveme existant afin de creacuteer un
nouveau systegraveme adapteacute agrave lrsquoorganisation Pour cela la deacutemarche consiste agrave suivre la laquo courbe
du soleil raquo
Lrsquoanalyse du systegraveme existant conduit agrave construire
Au niveau logico-physique
o Le modegravele conceptuel des communications (MCC) qui repreacutesente les eacutechanges
de flux drsquoinformations entre les diffeacuterents acteurs du SI et les acteurs exteacuterieurs
o Le scheacutema de circulation des documents (SCD) qui repreacutesente les eacutechanges
drsquoinformations entre les acteurs du SI ainsi que les tacircches qui produisent les
documents
Au niveau organisationnel
o Le modegravele organisationnel des traitements qui permet de preacuteciser par rapport agrave
lrsquoeacutetape preacuteceacutedente si les tacircches sont automatiseacutees ou manuelles les eacuteveacutenements
deacuteclencheurs et les conditions drsquoeacutemission des objets externes
Au niveau conceptuel
o Le MCD (modegravele conceptuel des donneacutees) et le MCT (modegravele conceptuel des
traitements)
Le passage de la modeacutelisation du systegraveme existant agrave la modeacutelisation du systegraveme futur
implique une critique du systegraveme existant une reacuteflexion sur les eacutevolutions possibles en tenant
compte des nouveaux objectifs assigneacutes au systegraveme futur Lrsquoanalyse du systegraveme futur conduit
agrave construire
Au niveau conceptuel
o Le MCD et le MCT deacutecoulant de la critique de lrsquoexistant
Au niveau organisationnel
6
o Le MOT du systegraveme futur mettant en valeur la nouvelle organisation (y
compris en terme de ressources humaines et de nouveaux postes de travail)
Au niveau logico-physique
o Le MLD modegravele logique des donneacutees et le MPD modegravele physique des donneacutees
obtenus agrave partir du MCD adapteacute aux choix effectueacutes dans le MOT et aux
besoins drsquoinformations compleacutementaires
o Le MPT modegravele physique des traitements (algorithmes structure des
programmeshellip)
B- Introduction au Modegravele conceptuel des donneacutees
Deacutefinition
Le modegravele conceptuel des donneacutees (MCD) a pour but de repreacutesenter de faccedilon structureacutee les
donneacutees qui seront utiliseacutees par le systegraveme dinformation Le modegravele conceptuel des donneacutees
deacutecrit la seacutemantique crsquoest agrave dire le sens attacheacute agrave ces donneacutees et agrave leurs rapports et non agrave
lrsquoutilisation qui peut en ecirctre faite
On eacutetablit le MCD apregraves avoir recenseacute et donneacute un nom agrave lrsquoensemble des donneacutees du
domaine eacutetudieacute Ensuite on eacutetudie les relations existantes entre ces donneacutees (deacutependances
fonctionnelles) pour aboutir au MCD
I-MCDRecueil des donneacutees
Exemple
Voilagrave plusieurs phrases qui deacutecrivent une seule et mecircme personne prononceacutees par des
personnes diffeacuterentes
laquo Odile Martin est une personne convenable Et je ne dis pas ccedila parce crsquoest une cliente qui
mrsquoen prend pour 100F toutes les semaines raquo Le boulanger laquo MARTIN Odile habitant 6 rue
des preacutes Saint Amour (Jura) neacutee le 130273 agrave Beacuteziers (Heacuterault) hellip raquo Un inspecteur de police
judiciaire laquo Odile Martin voilagrave une personne qui nrsquoa jamais commis aucun peacutecheacute mortel qui
a fait preuve de beaucoup de geacuteneacuterositeacute Elle ira au paradis raquo Saint Pierre Diffeacuterents
interlocuteurs diffeacuterents points de vue Lequel est le plus pertinent
Ca deacutepend du domaine eacutetudieacute Mais on ne recense que les informations objectives formelles
Quand on analyse les donneacutees sur un objet (abstrait ou concret) du reacuteel il est neacutecessaire de faire le tri entre ce qui est neacutecessaire pour le systegraveme drsquoinformation et ce qui ne lrsquoest pas
2deg repreacutesentation
Odile sera repreacutesenteacutee par au moins ces informations
Nom
Preacutenom
Numeacutero de la voie
Nature de la voie
Nom de la voie
Commune de reacutesidence
Deacutepartement de reacutesidence
Jour de naissance
Mois de naissance
Anneacutee de naissance
Commune de naissance
Deacutepartement de naissance
7
Peut-on deacutecomposer encore Par exemple la commune de reacutesidence est composeacutee de 2 mots
de mecircme que le nom de la voie hellip va-t-on les deacutecomposer Non ces mots repreacutesentent
ensemble une information ne veulent rien dire agrave eux seuls
Mais nrsquoavons-nous pas trop deacutecomposeacute Il existe par exemple des liens entre les
informations 3 4 et 5 qui repreacutesentent lrsquoadresse drsquoOdile entre les informations 8 et 9 qui
repreacutesentent sa date de naissancehellip On va alors regrouper ensemble ces informations relieacutees
On remarque que toutes les personnes (et Odile est une personne on dit que crsquoest une
OCCURRENCE de personne) de la maniegravere suivante
on peut dire qursquoon a creacuteeacute une entiteacute (un ensemble) PERSONNE dont Odile est une
occurrence (ou instance)
Les donneacutees de base sont appeleacutees PROPRIETES ou ATTRIBUTS
II-MCDConcepts et du formalisme
Sommaire
1 Les concepts de base
o 11 Entiteacute
o 12 Association
o 13 Cardinaliteacutes
2 La notion drsquooccurrence
Exemple
1-Les concepts de base
8
11-Entiteacute
Une entiteacute repreacutesente un objet du SI (acteur document concept hellip) ou plus exactement un
ensemble drsquoobjets ayant les mecircmes caracteacuteristiques
Dans une entiteacute on met les informations neacutecessaires et suffisantes pour caracteacuteriser cette
entiteacute Ces informations sont appeleacutees proprieacuteteacutes Les proprieacuteteacutes sont collecteacutees lors de
lrsquoeacutetablissement du dictionnaire des donneacutees (voire partie suivante) Les proprieacuteteacutes prennent
des valeurs pour chaque occurrence drsquoune entiteacute
Une proprieacuteteacute particuliegravere appeleacutee identifiant permet de distinguer sans ambiguiumlteacute toutes les
occurrences de lrsquoentiteacute Lrsquoidentifiant est toujours souligneacute Lrsquoidentifiant est une proprieacuteteacute qui
ne peut pas changer au cours du temps pour une occurrence
12-Association
Crsquoest un lien entre deux entiteacutes (ou plus) On doit lui donner un nom souvent un verbe qui
caracteacuterise le type de relation entre les entiteacutes
Une association possegravede parfois des proprieacuteteacutes
13-Cardinaliteacutes
Ce sont des expressions qui permettent drsquoindiquer combien de fois au minimum et au
maximum le lien entre 2 entiteacutes peut se produire Pour une association de 2 entiteacutes il y a 4
cardinaliteacutes agrave indiquer
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propre au SI eacutetudieacute qui
expriment des contraintes sur le modegravele
2-La notion drsquooccurrence
Il ne faut pas confondre
ENTITE et OCCURRENCE drsquoentiteacute
ni PROPRIETE et VALEUR de proprieacuteteacute
ni ASSOCIATION et OCCURRENCE drsquoassociation
Reprenons ces concepts
Une ENTITE est une FAMILLE drsquoobjets ayant les mecircmes caracteacuteristiques appeleacutees
proprieacuteteacutes
Un MEMBRE de la famille est appeleacute OCCURRENCE drsquoentiteacute
Une entiteacute repreacutesente un ENSEMBLE drsquoOCCURRENCES
Une PROPRIETE est une information eacuteleacutementaire qui permet de deacutecrire une entiteacute ou une
association Une proprieacuteteacute peut prendre une VALEUR (crsquoest lrsquoeacutequivalent drsquoune variable)
(On peut dire qursquoune VALEUR est une OCCURRENCE de PROPRIETE)
De mecircme une ASSOCIATION est un LIEN entre 2 entiteacutes ou plus et une OCCURRENCE
drsquoassociation est un lien entre 2 OCCURRENCES drsquoentiteacutes
Exemple
9
Consideacuterons le scheacutema suivant
PROPRIETE VALEUR de PROPRIETE
Reacutefeacuterence 456
Deacutesignation Manteau
Prix unitaire 100euro
ENTITE OCCURRENCE drsquoentiteacute
PRODUIT Manteau de reacutefeacuterence 456 agrave 100euro
COMMANDE numeacutero 123 du 081002
ASSOCIATION OCCURRENCE drsquoassociation
CONCERNER lien entre la commande 123 et le manteau 456 pour une quantiteacute de 3 uniteacutes
On peut repreacutesenter une entiteacute comme un ensemble ougrave les eacuteleacutements sont les
occurrences
Une association peut ecirctre vue comme lrsquoensemble des relations entre les occurrences
des entiteacutes associeacutees
Attention agrave ne pas confondre occurrences et proprieacuteteacutes En effet on peut dire agrave la fois qursquoune entiteacute est un ensemble de proprieacuteteacutes et un ensemble
drsquooccurrences
Une proprieacuteteacute est une rubrique un eacuteleacutement drsquoinformation qui permet de deacutecrire une entiteacute
Une entiteacute est deacutecrite par plusieurs proprieacuteteacutes
Une occurrence est un exemplaire un eacuteleacutement particulier de la famille repreacutesenteacutee par lrsquoentiteacute
Les proprieacuteteacutes drsquoune entiteacute prennent des valeurs pour chaque occurrence
Chaque occurrence drsquoentiteacute est identifieacutee de maniegravere unique par un identifiant qui est une
proprieacuteteacute particuliegravere telle que 2 occurrences de lrsquoentiteacute ne peuvent pas avoir la mecircme valeur
pour cette proprieacuteteacute
10
On repreacutesente souvent les occurrences drsquoune entiteacute sous forme drsquoun tableau
Les lignes correspondent aux occurrences et les colonnes correspondent aux proprieacuteteacutes
Exemple
III-MCDRegravegles de construction
Sommaire
1 Regravegles concernant les proprieacuteteacutes
2 Regravegles concernant les entiteacutes
3 Regravegles concernant les associations
1-Regravegles concernant les proprieacuteteacutes
Pour qursquoil nrsquoy ait pas drsquoambiguiumlteacute possible une proprieacuteteacute ne peut pas apparaicirctre
plusieurs fois dans un MCD
Autrement dit toutes les proprieacuteteacutes drsquoun MCD doivent ecirctre diffeacuterentes les unes des autres
Exemples Une proprieacuteteacute Date ne peut pas apparaicirctre simultaneacutement dans une entiteacute
COMMANDE et une entiteacute FACTURE Si crsquoeacutetait le cas il faudrait remplacer Date par
Date_commande et Date_facture par exemple
Toute proprieacuteteacute ne doit avoir agrave un moment donneacute qursquoune seule valeur pour une
occurrence Par conseacutequent un nom de proprieacuteteacute doit toujours ecirctre au singulier
Exemple Dans la proprieacuteteacute note drsquoune entiteacute ELEVE on ne peut avoir qursquoune seule note Si
on veut la note de plusieurs matiegraveres il faut mettre autant de proprieacuteteacutes qursquoil y a de matiegraveres
par exemple noteALSI noteAMSI noteDAIGL etc
2-Regravegles concernant les entiteacutes
Toute entiteacute doit comporter un identifiant qui permet de distinguer entre elles toutes
les occurrences drsquoune mecircme entiteacute Lrsquoidentifiant est placeacute en tecircte des proprieacuteteacutes et il
est souligneacute
Pour chaque occurrence drsquoune entiteacute il ne doit y avoir qursquoune seule valeur pour
chacune des proprieacuteteacutes agrave un instant donneacute Cette valeur peut changer au cours du
temps mais agrave un instant donneacute il nrsquoy en a qursquoune seule
3-Regravegles concernant les associations
Lrsquoidentifiant drsquoune association est implicitement formeacute par la concateacutenation des
identifiants des entiteacutes lieacutees
11
On ne repreacutesente pas cet identifiant au niveau du MCD Deux occurrences drsquoassociation ne
peuvent pas avoir le mecircme identifiant Pour une occurrence lrsquoidentifiant ne doit jamais
changer de valeur (lrsquoidentifiant est une proprieacuteteacute constante)
Une association peut avoir des proprieacuteteacutes mais ce nrsquoest pas obligatoire
IV-MCDIntroduction aux cardinaliteacutes
Sommaire
1 Formalisme
2 La cardinaliteacute minimale
o 21 Exemples
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple 1
o 32 Exemple 2
4 Conclusion
5 Exemple
6 Repreacutesentation des cardinaliteacutes
Les cardinaliteacutes drsquoune entiteacute dans une association exprime le nombre de fois qursquoune
occurrence de cette entiteacute est impliqueacutee dans lrsquoassociation au minimum et au maximum
1-Formalisme
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
21--Exemples
Pour la cardinaliteacute mini entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
Si la reacuteponse est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas un
client raquo on met la cardinaliteacute mini agrave 1
12
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
22-Application
1 Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
2 Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum lrsquoentiteacute peut ecirctre en relation avec lrsquoassociation Cela
peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute on indique la valeur n) ou une seule
fois
On reacutepond agrave la question Combien au maximum lrsquoentiteacute peut participer agrave lrsquoassociation
Si la reacuteponse est laquo au plus une fois raquo la cardinaliteacute maximale prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo la cardinaliteacute maximale prend la valeur N
31-Exemple 1
REGLES DE GESTION
Un salarieacute est affecteacute au plus agrave un seul service Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
32-Exemple 2
REGLE DE GESTION Un eacutelegraveve doit suivre au minimum une option et au maximum
3 options
13
4-Conclusion
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1 n un(e) ou plusieurs
0 n zeacutero ou plusieurs
5-Exemple
6-Repreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave plusieurs
voitures
14
Une personne a une adresse ou est sans domicile A une adresse il y a une ou plusieurs
personne qui y habitent
C-Les cardinaliteacutes et les diffeacuterents types dassociations
I-MCDCardinaliteacutes
Sommaire
1 Deacutefinition et formalisme
2 La cardinaliteacute minimale
o 21 Exemple
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple
4 Reacutecapitulatif
o 41 Exemples complets
1-Deacutefinition et formalisme
Les cardinaliteacutes sont des couples de valeur que lon trouve entre chaque entiteacute et ses
associations lieacutees
Donc pour une association de 2 entiteacutes il y a 4 cardinaliteacutes agrave indiquer (2 de chaque cocircteacute)
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Pour les associations agrave 2 entiteacutes ce sont des valeurs qui permettent drsquoindiquer combien de fois
au minimum et au maximum une occurrence dentiteacute peut ecirctre lieacutee agrave une autre occurrence
dentiteacute
De maniegravere plus geacuteneacuterale les cardinaliteacutes drsquoune entiteacute dans une association expriment le
nombre de fois qursquoune occurrence de cette entiteacute peut ecirctre impliqueacutee dans une
occurrence de lassociation au minimum et au maximum
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propres agrave lorganisation
eacutetudieacutee qui sont deacutecideacutees par les gestionnaires et deacutecideurs Ces regravegles expriment des
contraintes sur le modegravele
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
3
2- Meacutemoriser lrsquoinformation (stockage dans des fichiers ou
bases de donneacutees)
3- Exploiter lrsquoinformation (traitement)
a Consulter
b Organiser
c Mettre agrave jour
d Produire de nouvelles informations par des calculs
4- Diffuser lrsquoinformation (eacutedition)
II-MeriseModeacutelisation
Sommaire
1 Qursquoest qursquoun modegravele
2 La meacutethode Merise
o 21 Les composantes de Merise
o 22 La deacutemarche Merise
o 23 Les niveaux drsquoabstraction
o 24 La courbe du soleil
Les meacutethodes drsquoeacutetude des systegravemes drsquoinformation ont pour objectif de deacutecrire ces systegravemes agrave
lrsquoaide de modegraveles puis de reacutealiser les systegravemes informatiseacutes qui en deacutecoulent MERISE est
une de ces meacutethodes la plus reacutepandue en France actuellement
1-Qursquoest qursquoun modegravele
Un modegravele peut ecirctre deacutefini comme eacutetant une image de la reacutealiteacute Toute reacutealiteacute complexe
a besoin drsquoecirctre repreacutesenteacutee pour ecirctre comprise et maicirctriseacutee
Exemple
Une carte routiegravere repreacutesente agrave lrsquoaide de symboles tout ou partie drsquoun territoire et son
infrastructure routiegravere Le plan eacutetabli par un architecte permet agrave chaque corps de meacutetier
drsquointervenir efficacement dans la construction drsquoun immeuble
Ainsi lrsquoinformaticien peut ecirctre vu comme lrsquoarchitecte du systegraveme informatiseacute qui en dresse le
plan deacutetailleacute Un modegravele doit permettre de communiquer dans ambiguiumlteacute Donc il faut utiliser
un formalisme normaliseacute Merise propose plusieurs modegraveles pour repreacutesenter le SIG
2-La meacutethode Merise
Merise est une meacutethode qui permet de construire un systegraveme drsquoinformation automatiseacute qui
soit efficace flexible et adapteacute agrave lrsquoentreprise Crsquoest une meacutethode neacutee en 1976 suite agrave un projet
du Ministegravere de lrsquoIndustrie
21-Les composantes de Merise
Comme toute meacutethode drsquoanalyse et de conception des SI Merise regroupe
Des modegraveles (concepts regravegles de repreacutesentation)
Un langage (vocabulaire regravegles de syntaxe)
Une deacutemarche
Des outils (des logiciels tels que AMC Designor ou Win Design)
Elle permet de repreacutesenter les composantes drsquoun SIG
4
Les acteurs
Les donneacutees
Les traitements
Les proceacutedures
Les postes de travail etc
Ceci afin de concevoir reacutealiser et mettre en place une nouvelle informatisation
22-La deacutemarche Merise
1-Approche globale du SI Scheacutema directeur
2- Etude des diffeacuterentes solutions possible puis choix Etude preacutealable
3- Compleacutement des speacutecifications du domaine Etude deacutetailleacutee
4- Speacutecifications techniques complegravetes Etude technique
5- Ecriture des programmes Production
6- Tests essais formation utilisateur Mise en oeuvre
7- Corrections et adaptations du logiciel Maintenance
8- Controcircle de la conformiteacute des reacutesultats par rapport aux
demandes
Controcircle de qualiteacute
recette
23-Les niveaux drsquoabstraction
La neacutecessiteacute drsquoaborder diffeacuterents types de preacuteoccupations (deacutecrire lrsquoactiviteacute deacutefinir les regravegles
de gestion deacutefinir les informations reacutepartir les traitements entre lrsquohomme et la machine
organiser physiquement les fichiers choisir le mateacuteriel reacutepartir les responsabiliteacutes etc) a
conduit agrave proposer diffeacuterents niveaux drsquoabstraction
Les voici
NIVEAU QUESTION CONTENU DOMAINE
Conceptuel Que faire
- donneacutees manipuleacutees
- regravegles de gestion
- enchaicircnement des traitements
Gestion
Organisationnel
Qui fait quoi
Quand
Ougrave
- partage des tacircches
- mode de traitement
- reacutepartition geacuteographique des traitements
- organisation des donneacutees
Organisation
Physique Comment
- programmes
- logiciels
- mateacuteriels
Technique
Merise (du moins dans sa premiegravere version) est une meacutethode qui preacuteconise de seacuteparer lrsquoeacutetude
des donneacutees et les traitements
Chaque modegravele de Merise concerne soit les donneacutees soit les traitements agrave un niveau
drsquoabstraction donneacute
Voici la preacutesentation de ces diffeacuterents modegraveles selon cette typologie
5
NIVEAU DONNEES TRAITEMENT
Conceptuel MCD
Modegravele Conceptuel des Donneacutees
MCT
Modegravele Conceptuel des Traitements
Organisationnel MLD
Modegravele logique des donneacutees
MOT
Modegravele Organisationnel des Traitements
Physique MPD
Modegravele Physique des Donneacutees
MOPT
Modegravele Opeacuterationnel des Traitements
24-La courbe du soleil
Merise est utiliseacute dans le cas ougrave lrsquoon veut mettre en place ou modifier un systegraveme informatiseacute
Dans les deux cas il convient drsquoanalyser et de critiquer le systegraveme existant afin de creacuteer un
nouveau systegraveme adapteacute agrave lrsquoorganisation Pour cela la deacutemarche consiste agrave suivre la laquo courbe
du soleil raquo
Lrsquoanalyse du systegraveme existant conduit agrave construire
Au niveau logico-physique
o Le modegravele conceptuel des communications (MCC) qui repreacutesente les eacutechanges
de flux drsquoinformations entre les diffeacuterents acteurs du SI et les acteurs exteacuterieurs
o Le scheacutema de circulation des documents (SCD) qui repreacutesente les eacutechanges
drsquoinformations entre les acteurs du SI ainsi que les tacircches qui produisent les
documents
Au niveau organisationnel
o Le modegravele organisationnel des traitements qui permet de preacuteciser par rapport agrave
lrsquoeacutetape preacuteceacutedente si les tacircches sont automatiseacutees ou manuelles les eacuteveacutenements
deacuteclencheurs et les conditions drsquoeacutemission des objets externes
Au niveau conceptuel
o Le MCD (modegravele conceptuel des donneacutees) et le MCT (modegravele conceptuel des
traitements)
Le passage de la modeacutelisation du systegraveme existant agrave la modeacutelisation du systegraveme futur
implique une critique du systegraveme existant une reacuteflexion sur les eacutevolutions possibles en tenant
compte des nouveaux objectifs assigneacutes au systegraveme futur Lrsquoanalyse du systegraveme futur conduit
agrave construire
Au niveau conceptuel
o Le MCD et le MCT deacutecoulant de la critique de lrsquoexistant
Au niveau organisationnel
6
o Le MOT du systegraveme futur mettant en valeur la nouvelle organisation (y
compris en terme de ressources humaines et de nouveaux postes de travail)
Au niveau logico-physique
o Le MLD modegravele logique des donneacutees et le MPD modegravele physique des donneacutees
obtenus agrave partir du MCD adapteacute aux choix effectueacutes dans le MOT et aux
besoins drsquoinformations compleacutementaires
o Le MPT modegravele physique des traitements (algorithmes structure des
programmeshellip)
B- Introduction au Modegravele conceptuel des donneacutees
Deacutefinition
Le modegravele conceptuel des donneacutees (MCD) a pour but de repreacutesenter de faccedilon structureacutee les
donneacutees qui seront utiliseacutees par le systegraveme dinformation Le modegravele conceptuel des donneacutees
deacutecrit la seacutemantique crsquoest agrave dire le sens attacheacute agrave ces donneacutees et agrave leurs rapports et non agrave
lrsquoutilisation qui peut en ecirctre faite
On eacutetablit le MCD apregraves avoir recenseacute et donneacute un nom agrave lrsquoensemble des donneacutees du
domaine eacutetudieacute Ensuite on eacutetudie les relations existantes entre ces donneacutees (deacutependances
fonctionnelles) pour aboutir au MCD
I-MCDRecueil des donneacutees
Exemple
Voilagrave plusieurs phrases qui deacutecrivent une seule et mecircme personne prononceacutees par des
personnes diffeacuterentes
laquo Odile Martin est une personne convenable Et je ne dis pas ccedila parce crsquoest une cliente qui
mrsquoen prend pour 100F toutes les semaines raquo Le boulanger laquo MARTIN Odile habitant 6 rue
des preacutes Saint Amour (Jura) neacutee le 130273 agrave Beacuteziers (Heacuterault) hellip raquo Un inspecteur de police
judiciaire laquo Odile Martin voilagrave une personne qui nrsquoa jamais commis aucun peacutecheacute mortel qui
a fait preuve de beaucoup de geacuteneacuterositeacute Elle ira au paradis raquo Saint Pierre Diffeacuterents
interlocuteurs diffeacuterents points de vue Lequel est le plus pertinent
Ca deacutepend du domaine eacutetudieacute Mais on ne recense que les informations objectives formelles
Quand on analyse les donneacutees sur un objet (abstrait ou concret) du reacuteel il est neacutecessaire de faire le tri entre ce qui est neacutecessaire pour le systegraveme drsquoinformation et ce qui ne lrsquoest pas
2deg repreacutesentation
Odile sera repreacutesenteacutee par au moins ces informations
Nom
Preacutenom
Numeacutero de la voie
Nature de la voie
Nom de la voie
Commune de reacutesidence
Deacutepartement de reacutesidence
Jour de naissance
Mois de naissance
Anneacutee de naissance
Commune de naissance
Deacutepartement de naissance
7
Peut-on deacutecomposer encore Par exemple la commune de reacutesidence est composeacutee de 2 mots
de mecircme que le nom de la voie hellip va-t-on les deacutecomposer Non ces mots repreacutesentent
ensemble une information ne veulent rien dire agrave eux seuls
Mais nrsquoavons-nous pas trop deacutecomposeacute Il existe par exemple des liens entre les
informations 3 4 et 5 qui repreacutesentent lrsquoadresse drsquoOdile entre les informations 8 et 9 qui
repreacutesentent sa date de naissancehellip On va alors regrouper ensemble ces informations relieacutees
On remarque que toutes les personnes (et Odile est une personne on dit que crsquoest une
OCCURRENCE de personne) de la maniegravere suivante
on peut dire qursquoon a creacuteeacute une entiteacute (un ensemble) PERSONNE dont Odile est une
occurrence (ou instance)
Les donneacutees de base sont appeleacutees PROPRIETES ou ATTRIBUTS
II-MCDConcepts et du formalisme
Sommaire
1 Les concepts de base
o 11 Entiteacute
o 12 Association
o 13 Cardinaliteacutes
2 La notion drsquooccurrence
Exemple
1-Les concepts de base
8
11-Entiteacute
Une entiteacute repreacutesente un objet du SI (acteur document concept hellip) ou plus exactement un
ensemble drsquoobjets ayant les mecircmes caracteacuteristiques
Dans une entiteacute on met les informations neacutecessaires et suffisantes pour caracteacuteriser cette
entiteacute Ces informations sont appeleacutees proprieacuteteacutes Les proprieacuteteacutes sont collecteacutees lors de
lrsquoeacutetablissement du dictionnaire des donneacutees (voire partie suivante) Les proprieacuteteacutes prennent
des valeurs pour chaque occurrence drsquoune entiteacute
Une proprieacuteteacute particuliegravere appeleacutee identifiant permet de distinguer sans ambiguiumlteacute toutes les
occurrences de lrsquoentiteacute Lrsquoidentifiant est toujours souligneacute Lrsquoidentifiant est une proprieacuteteacute qui
ne peut pas changer au cours du temps pour une occurrence
12-Association
Crsquoest un lien entre deux entiteacutes (ou plus) On doit lui donner un nom souvent un verbe qui
caracteacuterise le type de relation entre les entiteacutes
Une association possegravede parfois des proprieacuteteacutes
13-Cardinaliteacutes
Ce sont des expressions qui permettent drsquoindiquer combien de fois au minimum et au
maximum le lien entre 2 entiteacutes peut se produire Pour une association de 2 entiteacutes il y a 4
cardinaliteacutes agrave indiquer
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propre au SI eacutetudieacute qui
expriment des contraintes sur le modegravele
2-La notion drsquooccurrence
Il ne faut pas confondre
ENTITE et OCCURRENCE drsquoentiteacute
ni PROPRIETE et VALEUR de proprieacuteteacute
ni ASSOCIATION et OCCURRENCE drsquoassociation
Reprenons ces concepts
Une ENTITE est une FAMILLE drsquoobjets ayant les mecircmes caracteacuteristiques appeleacutees
proprieacuteteacutes
Un MEMBRE de la famille est appeleacute OCCURRENCE drsquoentiteacute
Une entiteacute repreacutesente un ENSEMBLE drsquoOCCURRENCES
Une PROPRIETE est une information eacuteleacutementaire qui permet de deacutecrire une entiteacute ou une
association Une proprieacuteteacute peut prendre une VALEUR (crsquoest lrsquoeacutequivalent drsquoune variable)
(On peut dire qursquoune VALEUR est une OCCURRENCE de PROPRIETE)
De mecircme une ASSOCIATION est un LIEN entre 2 entiteacutes ou plus et une OCCURRENCE
drsquoassociation est un lien entre 2 OCCURRENCES drsquoentiteacutes
Exemple
9
Consideacuterons le scheacutema suivant
PROPRIETE VALEUR de PROPRIETE
Reacutefeacuterence 456
Deacutesignation Manteau
Prix unitaire 100euro
ENTITE OCCURRENCE drsquoentiteacute
PRODUIT Manteau de reacutefeacuterence 456 agrave 100euro
COMMANDE numeacutero 123 du 081002
ASSOCIATION OCCURRENCE drsquoassociation
CONCERNER lien entre la commande 123 et le manteau 456 pour une quantiteacute de 3 uniteacutes
On peut repreacutesenter une entiteacute comme un ensemble ougrave les eacuteleacutements sont les
occurrences
Une association peut ecirctre vue comme lrsquoensemble des relations entre les occurrences
des entiteacutes associeacutees
Attention agrave ne pas confondre occurrences et proprieacuteteacutes En effet on peut dire agrave la fois qursquoune entiteacute est un ensemble de proprieacuteteacutes et un ensemble
drsquooccurrences
Une proprieacuteteacute est une rubrique un eacuteleacutement drsquoinformation qui permet de deacutecrire une entiteacute
Une entiteacute est deacutecrite par plusieurs proprieacuteteacutes
Une occurrence est un exemplaire un eacuteleacutement particulier de la famille repreacutesenteacutee par lrsquoentiteacute
Les proprieacuteteacutes drsquoune entiteacute prennent des valeurs pour chaque occurrence
Chaque occurrence drsquoentiteacute est identifieacutee de maniegravere unique par un identifiant qui est une
proprieacuteteacute particuliegravere telle que 2 occurrences de lrsquoentiteacute ne peuvent pas avoir la mecircme valeur
pour cette proprieacuteteacute
10
On repreacutesente souvent les occurrences drsquoune entiteacute sous forme drsquoun tableau
Les lignes correspondent aux occurrences et les colonnes correspondent aux proprieacuteteacutes
Exemple
III-MCDRegravegles de construction
Sommaire
1 Regravegles concernant les proprieacuteteacutes
2 Regravegles concernant les entiteacutes
3 Regravegles concernant les associations
1-Regravegles concernant les proprieacuteteacutes
Pour qursquoil nrsquoy ait pas drsquoambiguiumlteacute possible une proprieacuteteacute ne peut pas apparaicirctre
plusieurs fois dans un MCD
Autrement dit toutes les proprieacuteteacutes drsquoun MCD doivent ecirctre diffeacuterentes les unes des autres
Exemples Une proprieacuteteacute Date ne peut pas apparaicirctre simultaneacutement dans une entiteacute
COMMANDE et une entiteacute FACTURE Si crsquoeacutetait le cas il faudrait remplacer Date par
Date_commande et Date_facture par exemple
Toute proprieacuteteacute ne doit avoir agrave un moment donneacute qursquoune seule valeur pour une
occurrence Par conseacutequent un nom de proprieacuteteacute doit toujours ecirctre au singulier
Exemple Dans la proprieacuteteacute note drsquoune entiteacute ELEVE on ne peut avoir qursquoune seule note Si
on veut la note de plusieurs matiegraveres il faut mettre autant de proprieacuteteacutes qursquoil y a de matiegraveres
par exemple noteALSI noteAMSI noteDAIGL etc
2-Regravegles concernant les entiteacutes
Toute entiteacute doit comporter un identifiant qui permet de distinguer entre elles toutes
les occurrences drsquoune mecircme entiteacute Lrsquoidentifiant est placeacute en tecircte des proprieacuteteacutes et il
est souligneacute
Pour chaque occurrence drsquoune entiteacute il ne doit y avoir qursquoune seule valeur pour
chacune des proprieacuteteacutes agrave un instant donneacute Cette valeur peut changer au cours du
temps mais agrave un instant donneacute il nrsquoy en a qursquoune seule
3-Regravegles concernant les associations
Lrsquoidentifiant drsquoune association est implicitement formeacute par la concateacutenation des
identifiants des entiteacutes lieacutees
11
On ne repreacutesente pas cet identifiant au niveau du MCD Deux occurrences drsquoassociation ne
peuvent pas avoir le mecircme identifiant Pour une occurrence lrsquoidentifiant ne doit jamais
changer de valeur (lrsquoidentifiant est une proprieacuteteacute constante)
Une association peut avoir des proprieacuteteacutes mais ce nrsquoest pas obligatoire
IV-MCDIntroduction aux cardinaliteacutes
Sommaire
1 Formalisme
2 La cardinaliteacute minimale
o 21 Exemples
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple 1
o 32 Exemple 2
4 Conclusion
5 Exemple
6 Repreacutesentation des cardinaliteacutes
Les cardinaliteacutes drsquoune entiteacute dans une association exprime le nombre de fois qursquoune
occurrence de cette entiteacute est impliqueacutee dans lrsquoassociation au minimum et au maximum
1-Formalisme
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
21--Exemples
Pour la cardinaliteacute mini entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
Si la reacuteponse est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas un
client raquo on met la cardinaliteacute mini agrave 1
12
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
22-Application
1 Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
2 Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum lrsquoentiteacute peut ecirctre en relation avec lrsquoassociation Cela
peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute on indique la valeur n) ou une seule
fois
On reacutepond agrave la question Combien au maximum lrsquoentiteacute peut participer agrave lrsquoassociation
Si la reacuteponse est laquo au plus une fois raquo la cardinaliteacute maximale prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo la cardinaliteacute maximale prend la valeur N
31-Exemple 1
REGLES DE GESTION
Un salarieacute est affecteacute au plus agrave un seul service Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
32-Exemple 2
REGLE DE GESTION Un eacutelegraveve doit suivre au minimum une option et au maximum
3 options
13
4-Conclusion
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1 n un(e) ou plusieurs
0 n zeacutero ou plusieurs
5-Exemple
6-Repreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave plusieurs
voitures
14
Une personne a une adresse ou est sans domicile A une adresse il y a une ou plusieurs
personne qui y habitent
C-Les cardinaliteacutes et les diffeacuterents types dassociations
I-MCDCardinaliteacutes
Sommaire
1 Deacutefinition et formalisme
2 La cardinaliteacute minimale
o 21 Exemple
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple
4 Reacutecapitulatif
o 41 Exemples complets
1-Deacutefinition et formalisme
Les cardinaliteacutes sont des couples de valeur que lon trouve entre chaque entiteacute et ses
associations lieacutees
Donc pour une association de 2 entiteacutes il y a 4 cardinaliteacutes agrave indiquer (2 de chaque cocircteacute)
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Pour les associations agrave 2 entiteacutes ce sont des valeurs qui permettent drsquoindiquer combien de fois
au minimum et au maximum une occurrence dentiteacute peut ecirctre lieacutee agrave une autre occurrence
dentiteacute
De maniegravere plus geacuteneacuterale les cardinaliteacutes drsquoune entiteacute dans une association expriment le
nombre de fois qursquoune occurrence de cette entiteacute peut ecirctre impliqueacutee dans une
occurrence de lassociation au minimum et au maximum
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propres agrave lorganisation
eacutetudieacutee qui sont deacutecideacutees par les gestionnaires et deacutecideurs Ces regravegles expriment des
contraintes sur le modegravele
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
4
Les acteurs
Les donneacutees
Les traitements
Les proceacutedures
Les postes de travail etc
Ceci afin de concevoir reacutealiser et mettre en place une nouvelle informatisation
22-La deacutemarche Merise
1-Approche globale du SI Scheacutema directeur
2- Etude des diffeacuterentes solutions possible puis choix Etude preacutealable
3- Compleacutement des speacutecifications du domaine Etude deacutetailleacutee
4- Speacutecifications techniques complegravetes Etude technique
5- Ecriture des programmes Production
6- Tests essais formation utilisateur Mise en oeuvre
7- Corrections et adaptations du logiciel Maintenance
8- Controcircle de la conformiteacute des reacutesultats par rapport aux
demandes
Controcircle de qualiteacute
recette
23-Les niveaux drsquoabstraction
La neacutecessiteacute drsquoaborder diffeacuterents types de preacuteoccupations (deacutecrire lrsquoactiviteacute deacutefinir les regravegles
de gestion deacutefinir les informations reacutepartir les traitements entre lrsquohomme et la machine
organiser physiquement les fichiers choisir le mateacuteriel reacutepartir les responsabiliteacutes etc) a
conduit agrave proposer diffeacuterents niveaux drsquoabstraction
Les voici
NIVEAU QUESTION CONTENU DOMAINE
Conceptuel Que faire
- donneacutees manipuleacutees
- regravegles de gestion
- enchaicircnement des traitements
Gestion
Organisationnel
Qui fait quoi
Quand
Ougrave
- partage des tacircches
- mode de traitement
- reacutepartition geacuteographique des traitements
- organisation des donneacutees
Organisation
Physique Comment
- programmes
- logiciels
- mateacuteriels
Technique
Merise (du moins dans sa premiegravere version) est une meacutethode qui preacuteconise de seacuteparer lrsquoeacutetude
des donneacutees et les traitements
Chaque modegravele de Merise concerne soit les donneacutees soit les traitements agrave un niveau
drsquoabstraction donneacute
Voici la preacutesentation de ces diffeacuterents modegraveles selon cette typologie
5
NIVEAU DONNEES TRAITEMENT
Conceptuel MCD
Modegravele Conceptuel des Donneacutees
MCT
Modegravele Conceptuel des Traitements
Organisationnel MLD
Modegravele logique des donneacutees
MOT
Modegravele Organisationnel des Traitements
Physique MPD
Modegravele Physique des Donneacutees
MOPT
Modegravele Opeacuterationnel des Traitements
24-La courbe du soleil
Merise est utiliseacute dans le cas ougrave lrsquoon veut mettre en place ou modifier un systegraveme informatiseacute
Dans les deux cas il convient drsquoanalyser et de critiquer le systegraveme existant afin de creacuteer un
nouveau systegraveme adapteacute agrave lrsquoorganisation Pour cela la deacutemarche consiste agrave suivre la laquo courbe
du soleil raquo
Lrsquoanalyse du systegraveme existant conduit agrave construire
Au niveau logico-physique
o Le modegravele conceptuel des communications (MCC) qui repreacutesente les eacutechanges
de flux drsquoinformations entre les diffeacuterents acteurs du SI et les acteurs exteacuterieurs
o Le scheacutema de circulation des documents (SCD) qui repreacutesente les eacutechanges
drsquoinformations entre les acteurs du SI ainsi que les tacircches qui produisent les
documents
Au niveau organisationnel
o Le modegravele organisationnel des traitements qui permet de preacuteciser par rapport agrave
lrsquoeacutetape preacuteceacutedente si les tacircches sont automatiseacutees ou manuelles les eacuteveacutenements
deacuteclencheurs et les conditions drsquoeacutemission des objets externes
Au niveau conceptuel
o Le MCD (modegravele conceptuel des donneacutees) et le MCT (modegravele conceptuel des
traitements)
Le passage de la modeacutelisation du systegraveme existant agrave la modeacutelisation du systegraveme futur
implique une critique du systegraveme existant une reacuteflexion sur les eacutevolutions possibles en tenant
compte des nouveaux objectifs assigneacutes au systegraveme futur Lrsquoanalyse du systegraveme futur conduit
agrave construire
Au niveau conceptuel
o Le MCD et le MCT deacutecoulant de la critique de lrsquoexistant
Au niveau organisationnel
6
o Le MOT du systegraveme futur mettant en valeur la nouvelle organisation (y
compris en terme de ressources humaines et de nouveaux postes de travail)
Au niveau logico-physique
o Le MLD modegravele logique des donneacutees et le MPD modegravele physique des donneacutees
obtenus agrave partir du MCD adapteacute aux choix effectueacutes dans le MOT et aux
besoins drsquoinformations compleacutementaires
o Le MPT modegravele physique des traitements (algorithmes structure des
programmeshellip)
B- Introduction au Modegravele conceptuel des donneacutees
Deacutefinition
Le modegravele conceptuel des donneacutees (MCD) a pour but de repreacutesenter de faccedilon structureacutee les
donneacutees qui seront utiliseacutees par le systegraveme dinformation Le modegravele conceptuel des donneacutees
deacutecrit la seacutemantique crsquoest agrave dire le sens attacheacute agrave ces donneacutees et agrave leurs rapports et non agrave
lrsquoutilisation qui peut en ecirctre faite
On eacutetablit le MCD apregraves avoir recenseacute et donneacute un nom agrave lrsquoensemble des donneacutees du
domaine eacutetudieacute Ensuite on eacutetudie les relations existantes entre ces donneacutees (deacutependances
fonctionnelles) pour aboutir au MCD
I-MCDRecueil des donneacutees
Exemple
Voilagrave plusieurs phrases qui deacutecrivent une seule et mecircme personne prononceacutees par des
personnes diffeacuterentes
laquo Odile Martin est une personne convenable Et je ne dis pas ccedila parce crsquoest une cliente qui
mrsquoen prend pour 100F toutes les semaines raquo Le boulanger laquo MARTIN Odile habitant 6 rue
des preacutes Saint Amour (Jura) neacutee le 130273 agrave Beacuteziers (Heacuterault) hellip raquo Un inspecteur de police
judiciaire laquo Odile Martin voilagrave une personne qui nrsquoa jamais commis aucun peacutecheacute mortel qui
a fait preuve de beaucoup de geacuteneacuterositeacute Elle ira au paradis raquo Saint Pierre Diffeacuterents
interlocuteurs diffeacuterents points de vue Lequel est le plus pertinent
Ca deacutepend du domaine eacutetudieacute Mais on ne recense que les informations objectives formelles
Quand on analyse les donneacutees sur un objet (abstrait ou concret) du reacuteel il est neacutecessaire de faire le tri entre ce qui est neacutecessaire pour le systegraveme drsquoinformation et ce qui ne lrsquoest pas
2deg repreacutesentation
Odile sera repreacutesenteacutee par au moins ces informations
Nom
Preacutenom
Numeacutero de la voie
Nature de la voie
Nom de la voie
Commune de reacutesidence
Deacutepartement de reacutesidence
Jour de naissance
Mois de naissance
Anneacutee de naissance
Commune de naissance
Deacutepartement de naissance
7
Peut-on deacutecomposer encore Par exemple la commune de reacutesidence est composeacutee de 2 mots
de mecircme que le nom de la voie hellip va-t-on les deacutecomposer Non ces mots repreacutesentent
ensemble une information ne veulent rien dire agrave eux seuls
Mais nrsquoavons-nous pas trop deacutecomposeacute Il existe par exemple des liens entre les
informations 3 4 et 5 qui repreacutesentent lrsquoadresse drsquoOdile entre les informations 8 et 9 qui
repreacutesentent sa date de naissancehellip On va alors regrouper ensemble ces informations relieacutees
On remarque que toutes les personnes (et Odile est une personne on dit que crsquoest une
OCCURRENCE de personne) de la maniegravere suivante
on peut dire qursquoon a creacuteeacute une entiteacute (un ensemble) PERSONNE dont Odile est une
occurrence (ou instance)
Les donneacutees de base sont appeleacutees PROPRIETES ou ATTRIBUTS
II-MCDConcepts et du formalisme
Sommaire
1 Les concepts de base
o 11 Entiteacute
o 12 Association
o 13 Cardinaliteacutes
2 La notion drsquooccurrence
Exemple
1-Les concepts de base
8
11-Entiteacute
Une entiteacute repreacutesente un objet du SI (acteur document concept hellip) ou plus exactement un
ensemble drsquoobjets ayant les mecircmes caracteacuteristiques
Dans une entiteacute on met les informations neacutecessaires et suffisantes pour caracteacuteriser cette
entiteacute Ces informations sont appeleacutees proprieacuteteacutes Les proprieacuteteacutes sont collecteacutees lors de
lrsquoeacutetablissement du dictionnaire des donneacutees (voire partie suivante) Les proprieacuteteacutes prennent
des valeurs pour chaque occurrence drsquoune entiteacute
Une proprieacuteteacute particuliegravere appeleacutee identifiant permet de distinguer sans ambiguiumlteacute toutes les
occurrences de lrsquoentiteacute Lrsquoidentifiant est toujours souligneacute Lrsquoidentifiant est une proprieacuteteacute qui
ne peut pas changer au cours du temps pour une occurrence
12-Association
Crsquoest un lien entre deux entiteacutes (ou plus) On doit lui donner un nom souvent un verbe qui
caracteacuterise le type de relation entre les entiteacutes
Une association possegravede parfois des proprieacuteteacutes
13-Cardinaliteacutes
Ce sont des expressions qui permettent drsquoindiquer combien de fois au minimum et au
maximum le lien entre 2 entiteacutes peut se produire Pour une association de 2 entiteacutes il y a 4
cardinaliteacutes agrave indiquer
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propre au SI eacutetudieacute qui
expriment des contraintes sur le modegravele
2-La notion drsquooccurrence
Il ne faut pas confondre
ENTITE et OCCURRENCE drsquoentiteacute
ni PROPRIETE et VALEUR de proprieacuteteacute
ni ASSOCIATION et OCCURRENCE drsquoassociation
Reprenons ces concepts
Une ENTITE est une FAMILLE drsquoobjets ayant les mecircmes caracteacuteristiques appeleacutees
proprieacuteteacutes
Un MEMBRE de la famille est appeleacute OCCURRENCE drsquoentiteacute
Une entiteacute repreacutesente un ENSEMBLE drsquoOCCURRENCES
Une PROPRIETE est une information eacuteleacutementaire qui permet de deacutecrire une entiteacute ou une
association Une proprieacuteteacute peut prendre une VALEUR (crsquoest lrsquoeacutequivalent drsquoune variable)
(On peut dire qursquoune VALEUR est une OCCURRENCE de PROPRIETE)
De mecircme une ASSOCIATION est un LIEN entre 2 entiteacutes ou plus et une OCCURRENCE
drsquoassociation est un lien entre 2 OCCURRENCES drsquoentiteacutes
Exemple
9
Consideacuterons le scheacutema suivant
PROPRIETE VALEUR de PROPRIETE
Reacutefeacuterence 456
Deacutesignation Manteau
Prix unitaire 100euro
ENTITE OCCURRENCE drsquoentiteacute
PRODUIT Manteau de reacutefeacuterence 456 agrave 100euro
COMMANDE numeacutero 123 du 081002
ASSOCIATION OCCURRENCE drsquoassociation
CONCERNER lien entre la commande 123 et le manteau 456 pour une quantiteacute de 3 uniteacutes
On peut repreacutesenter une entiteacute comme un ensemble ougrave les eacuteleacutements sont les
occurrences
Une association peut ecirctre vue comme lrsquoensemble des relations entre les occurrences
des entiteacutes associeacutees
Attention agrave ne pas confondre occurrences et proprieacuteteacutes En effet on peut dire agrave la fois qursquoune entiteacute est un ensemble de proprieacuteteacutes et un ensemble
drsquooccurrences
Une proprieacuteteacute est une rubrique un eacuteleacutement drsquoinformation qui permet de deacutecrire une entiteacute
Une entiteacute est deacutecrite par plusieurs proprieacuteteacutes
Une occurrence est un exemplaire un eacuteleacutement particulier de la famille repreacutesenteacutee par lrsquoentiteacute
Les proprieacuteteacutes drsquoune entiteacute prennent des valeurs pour chaque occurrence
Chaque occurrence drsquoentiteacute est identifieacutee de maniegravere unique par un identifiant qui est une
proprieacuteteacute particuliegravere telle que 2 occurrences de lrsquoentiteacute ne peuvent pas avoir la mecircme valeur
pour cette proprieacuteteacute
10
On repreacutesente souvent les occurrences drsquoune entiteacute sous forme drsquoun tableau
Les lignes correspondent aux occurrences et les colonnes correspondent aux proprieacuteteacutes
Exemple
III-MCDRegravegles de construction
Sommaire
1 Regravegles concernant les proprieacuteteacutes
2 Regravegles concernant les entiteacutes
3 Regravegles concernant les associations
1-Regravegles concernant les proprieacuteteacutes
Pour qursquoil nrsquoy ait pas drsquoambiguiumlteacute possible une proprieacuteteacute ne peut pas apparaicirctre
plusieurs fois dans un MCD
Autrement dit toutes les proprieacuteteacutes drsquoun MCD doivent ecirctre diffeacuterentes les unes des autres
Exemples Une proprieacuteteacute Date ne peut pas apparaicirctre simultaneacutement dans une entiteacute
COMMANDE et une entiteacute FACTURE Si crsquoeacutetait le cas il faudrait remplacer Date par
Date_commande et Date_facture par exemple
Toute proprieacuteteacute ne doit avoir agrave un moment donneacute qursquoune seule valeur pour une
occurrence Par conseacutequent un nom de proprieacuteteacute doit toujours ecirctre au singulier
Exemple Dans la proprieacuteteacute note drsquoune entiteacute ELEVE on ne peut avoir qursquoune seule note Si
on veut la note de plusieurs matiegraveres il faut mettre autant de proprieacuteteacutes qursquoil y a de matiegraveres
par exemple noteALSI noteAMSI noteDAIGL etc
2-Regravegles concernant les entiteacutes
Toute entiteacute doit comporter un identifiant qui permet de distinguer entre elles toutes
les occurrences drsquoune mecircme entiteacute Lrsquoidentifiant est placeacute en tecircte des proprieacuteteacutes et il
est souligneacute
Pour chaque occurrence drsquoune entiteacute il ne doit y avoir qursquoune seule valeur pour
chacune des proprieacuteteacutes agrave un instant donneacute Cette valeur peut changer au cours du
temps mais agrave un instant donneacute il nrsquoy en a qursquoune seule
3-Regravegles concernant les associations
Lrsquoidentifiant drsquoune association est implicitement formeacute par la concateacutenation des
identifiants des entiteacutes lieacutees
11
On ne repreacutesente pas cet identifiant au niveau du MCD Deux occurrences drsquoassociation ne
peuvent pas avoir le mecircme identifiant Pour une occurrence lrsquoidentifiant ne doit jamais
changer de valeur (lrsquoidentifiant est une proprieacuteteacute constante)
Une association peut avoir des proprieacuteteacutes mais ce nrsquoest pas obligatoire
IV-MCDIntroduction aux cardinaliteacutes
Sommaire
1 Formalisme
2 La cardinaliteacute minimale
o 21 Exemples
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple 1
o 32 Exemple 2
4 Conclusion
5 Exemple
6 Repreacutesentation des cardinaliteacutes
Les cardinaliteacutes drsquoune entiteacute dans une association exprime le nombre de fois qursquoune
occurrence de cette entiteacute est impliqueacutee dans lrsquoassociation au minimum et au maximum
1-Formalisme
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
21--Exemples
Pour la cardinaliteacute mini entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
Si la reacuteponse est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas un
client raquo on met la cardinaliteacute mini agrave 1
12
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
22-Application
1 Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
2 Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum lrsquoentiteacute peut ecirctre en relation avec lrsquoassociation Cela
peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute on indique la valeur n) ou une seule
fois
On reacutepond agrave la question Combien au maximum lrsquoentiteacute peut participer agrave lrsquoassociation
Si la reacuteponse est laquo au plus une fois raquo la cardinaliteacute maximale prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo la cardinaliteacute maximale prend la valeur N
31-Exemple 1
REGLES DE GESTION
Un salarieacute est affecteacute au plus agrave un seul service Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
32-Exemple 2
REGLE DE GESTION Un eacutelegraveve doit suivre au minimum une option et au maximum
3 options
13
4-Conclusion
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1 n un(e) ou plusieurs
0 n zeacutero ou plusieurs
5-Exemple
6-Repreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave plusieurs
voitures
14
Une personne a une adresse ou est sans domicile A une adresse il y a une ou plusieurs
personne qui y habitent
C-Les cardinaliteacutes et les diffeacuterents types dassociations
I-MCDCardinaliteacutes
Sommaire
1 Deacutefinition et formalisme
2 La cardinaliteacute minimale
o 21 Exemple
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple
4 Reacutecapitulatif
o 41 Exemples complets
1-Deacutefinition et formalisme
Les cardinaliteacutes sont des couples de valeur que lon trouve entre chaque entiteacute et ses
associations lieacutees
Donc pour une association de 2 entiteacutes il y a 4 cardinaliteacutes agrave indiquer (2 de chaque cocircteacute)
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Pour les associations agrave 2 entiteacutes ce sont des valeurs qui permettent drsquoindiquer combien de fois
au minimum et au maximum une occurrence dentiteacute peut ecirctre lieacutee agrave une autre occurrence
dentiteacute
De maniegravere plus geacuteneacuterale les cardinaliteacutes drsquoune entiteacute dans une association expriment le
nombre de fois qursquoune occurrence de cette entiteacute peut ecirctre impliqueacutee dans une
occurrence de lassociation au minimum et au maximum
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propres agrave lorganisation
eacutetudieacutee qui sont deacutecideacutees par les gestionnaires et deacutecideurs Ces regravegles expriment des
contraintes sur le modegravele
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
5
NIVEAU DONNEES TRAITEMENT
Conceptuel MCD
Modegravele Conceptuel des Donneacutees
MCT
Modegravele Conceptuel des Traitements
Organisationnel MLD
Modegravele logique des donneacutees
MOT
Modegravele Organisationnel des Traitements
Physique MPD
Modegravele Physique des Donneacutees
MOPT
Modegravele Opeacuterationnel des Traitements
24-La courbe du soleil
Merise est utiliseacute dans le cas ougrave lrsquoon veut mettre en place ou modifier un systegraveme informatiseacute
Dans les deux cas il convient drsquoanalyser et de critiquer le systegraveme existant afin de creacuteer un
nouveau systegraveme adapteacute agrave lrsquoorganisation Pour cela la deacutemarche consiste agrave suivre la laquo courbe
du soleil raquo
Lrsquoanalyse du systegraveme existant conduit agrave construire
Au niveau logico-physique
o Le modegravele conceptuel des communications (MCC) qui repreacutesente les eacutechanges
de flux drsquoinformations entre les diffeacuterents acteurs du SI et les acteurs exteacuterieurs
o Le scheacutema de circulation des documents (SCD) qui repreacutesente les eacutechanges
drsquoinformations entre les acteurs du SI ainsi que les tacircches qui produisent les
documents
Au niveau organisationnel
o Le modegravele organisationnel des traitements qui permet de preacuteciser par rapport agrave
lrsquoeacutetape preacuteceacutedente si les tacircches sont automatiseacutees ou manuelles les eacuteveacutenements
deacuteclencheurs et les conditions drsquoeacutemission des objets externes
Au niveau conceptuel
o Le MCD (modegravele conceptuel des donneacutees) et le MCT (modegravele conceptuel des
traitements)
Le passage de la modeacutelisation du systegraveme existant agrave la modeacutelisation du systegraveme futur
implique une critique du systegraveme existant une reacuteflexion sur les eacutevolutions possibles en tenant
compte des nouveaux objectifs assigneacutes au systegraveme futur Lrsquoanalyse du systegraveme futur conduit
agrave construire
Au niveau conceptuel
o Le MCD et le MCT deacutecoulant de la critique de lrsquoexistant
Au niveau organisationnel
6
o Le MOT du systegraveme futur mettant en valeur la nouvelle organisation (y
compris en terme de ressources humaines et de nouveaux postes de travail)
Au niveau logico-physique
o Le MLD modegravele logique des donneacutees et le MPD modegravele physique des donneacutees
obtenus agrave partir du MCD adapteacute aux choix effectueacutes dans le MOT et aux
besoins drsquoinformations compleacutementaires
o Le MPT modegravele physique des traitements (algorithmes structure des
programmeshellip)
B- Introduction au Modegravele conceptuel des donneacutees
Deacutefinition
Le modegravele conceptuel des donneacutees (MCD) a pour but de repreacutesenter de faccedilon structureacutee les
donneacutees qui seront utiliseacutees par le systegraveme dinformation Le modegravele conceptuel des donneacutees
deacutecrit la seacutemantique crsquoest agrave dire le sens attacheacute agrave ces donneacutees et agrave leurs rapports et non agrave
lrsquoutilisation qui peut en ecirctre faite
On eacutetablit le MCD apregraves avoir recenseacute et donneacute un nom agrave lrsquoensemble des donneacutees du
domaine eacutetudieacute Ensuite on eacutetudie les relations existantes entre ces donneacutees (deacutependances
fonctionnelles) pour aboutir au MCD
I-MCDRecueil des donneacutees
Exemple
Voilagrave plusieurs phrases qui deacutecrivent une seule et mecircme personne prononceacutees par des
personnes diffeacuterentes
laquo Odile Martin est une personne convenable Et je ne dis pas ccedila parce crsquoest une cliente qui
mrsquoen prend pour 100F toutes les semaines raquo Le boulanger laquo MARTIN Odile habitant 6 rue
des preacutes Saint Amour (Jura) neacutee le 130273 agrave Beacuteziers (Heacuterault) hellip raquo Un inspecteur de police
judiciaire laquo Odile Martin voilagrave une personne qui nrsquoa jamais commis aucun peacutecheacute mortel qui
a fait preuve de beaucoup de geacuteneacuterositeacute Elle ira au paradis raquo Saint Pierre Diffeacuterents
interlocuteurs diffeacuterents points de vue Lequel est le plus pertinent
Ca deacutepend du domaine eacutetudieacute Mais on ne recense que les informations objectives formelles
Quand on analyse les donneacutees sur un objet (abstrait ou concret) du reacuteel il est neacutecessaire de faire le tri entre ce qui est neacutecessaire pour le systegraveme drsquoinformation et ce qui ne lrsquoest pas
2deg repreacutesentation
Odile sera repreacutesenteacutee par au moins ces informations
Nom
Preacutenom
Numeacutero de la voie
Nature de la voie
Nom de la voie
Commune de reacutesidence
Deacutepartement de reacutesidence
Jour de naissance
Mois de naissance
Anneacutee de naissance
Commune de naissance
Deacutepartement de naissance
7
Peut-on deacutecomposer encore Par exemple la commune de reacutesidence est composeacutee de 2 mots
de mecircme que le nom de la voie hellip va-t-on les deacutecomposer Non ces mots repreacutesentent
ensemble une information ne veulent rien dire agrave eux seuls
Mais nrsquoavons-nous pas trop deacutecomposeacute Il existe par exemple des liens entre les
informations 3 4 et 5 qui repreacutesentent lrsquoadresse drsquoOdile entre les informations 8 et 9 qui
repreacutesentent sa date de naissancehellip On va alors regrouper ensemble ces informations relieacutees
On remarque que toutes les personnes (et Odile est une personne on dit que crsquoest une
OCCURRENCE de personne) de la maniegravere suivante
on peut dire qursquoon a creacuteeacute une entiteacute (un ensemble) PERSONNE dont Odile est une
occurrence (ou instance)
Les donneacutees de base sont appeleacutees PROPRIETES ou ATTRIBUTS
II-MCDConcepts et du formalisme
Sommaire
1 Les concepts de base
o 11 Entiteacute
o 12 Association
o 13 Cardinaliteacutes
2 La notion drsquooccurrence
Exemple
1-Les concepts de base
8
11-Entiteacute
Une entiteacute repreacutesente un objet du SI (acteur document concept hellip) ou plus exactement un
ensemble drsquoobjets ayant les mecircmes caracteacuteristiques
Dans une entiteacute on met les informations neacutecessaires et suffisantes pour caracteacuteriser cette
entiteacute Ces informations sont appeleacutees proprieacuteteacutes Les proprieacuteteacutes sont collecteacutees lors de
lrsquoeacutetablissement du dictionnaire des donneacutees (voire partie suivante) Les proprieacuteteacutes prennent
des valeurs pour chaque occurrence drsquoune entiteacute
Une proprieacuteteacute particuliegravere appeleacutee identifiant permet de distinguer sans ambiguiumlteacute toutes les
occurrences de lrsquoentiteacute Lrsquoidentifiant est toujours souligneacute Lrsquoidentifiant est une proprieacuteteacute qui
ne peut pas changer au cours du temps pour une occurrence
12-Association
Crsquoest un lien entre deux entiteacutes (ou plus) On doit lui donner un nom souvent un verbe qui
caracteacuterise le type de relation entre les entiteacutes
Une association possegravede parfois des proprieacuteteacutes
13-Cardinaliteacutes
Ce sont des expressions qui permettent drsquoindiquer combien de fois au minimum et au
maximum le lien entre 2 entiteacutes peut se produire Pour une association de 2 entiteacutes il y a 4
cardinaliteacutes agrave indiquer
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propre au SI eacutetudieacute qui
expriment des contraintes sur le modegravele
2-La notion drsquooccurrence
Il ne faut pas confondre
ENTITE et OCCURRENCE drsquoentiteacute
ni PROPRIETE et VALEUR de proprieacuteteacute
ni ASSOCIATION et OCCURRENCE drsquoassociation
Reprenons ces concepts
Une ENTITE est une FAMILLE drsquoobjets ayant les mecircmes caracteacuteristiques appeleacutees
proprieacuteteacutes
Un MEMBRE de la famille est appeleacute OCCURRENCE drsquoentiteacute
Une entiteacute repreacutesente un ENSEMBLE drsquoOCCURRENCES
Une PROPRIETE est une information eacuteleacutementaire qui permet de deacutecrire une entiteacute ou une
association Une proprieacuteteacute peut prendre une VALEUR (crsquoest lrsquoeacutequivalent drsquoune variable)
(On peut dire qursquoune VALEUR est une OCCURRENCE de PROPRIETE)
De mecircme une ASSOCIATION est un LIEN entre 2 entiteacutes ou plus et une OCCURRENCE
drsquoassociation est un lien entre 2 OCCURRENCES drsquoentiteacutes
Exemple
9
Consideacuterons le scheacutema suivant
PROPRIETE VALEUR de PROPRIETE
Reacutefeacuterence 456
Deacutesignation Manteau
Prix unitaire 100euro
ENTITE OCCURRENCE drsquoentiteacute
PRODUIT Manteau de reacutefeacuterence 456 agrave 100euro
COMMANDE numeacutero 123 du 081002
ASSOCIATION OCCURRENCE drsquoassociation
CONCERNER lien entre la commande 123 et le manteau 456 pour une quantiteacute de 3 uniteacutes
On peut repreacutesenter une entiteacute comme un ensemble ougrave les eacuteleacutements sont les
occurrences
Une association peut ecirctre vue comme lrsquoensemble des relations entre les occurrences
des entiteacutes associeacutees
Attention agrave ne pas confondre occurrences et proprieacuteteacutes En effet on peut dire agrave la fois qursquoune entiteacute est un ensemble de proprieacuteteacutes et un ensemble
drsquooccurrences
Une proprieacuteteacute est une rubrique un eacuteleacutement drsquoinformation qui permet de deacutecrire une entiteacute
Une entiteacute est deacutecrite par plusieurs proprieacuteteacutes
Une occurrence est un exemplaire un eacuteleacutement particulier de la famille repreacutesenteacutee par lrsquoentiteacute
Les proprieacuteteacutes drsquoune entiteacute prennent des valeurs pour chaque occurrence
Chaque occurrence drsquoentiteacute est identifieacutee de maniegravere unique par un identifiant qui est une
proprieacuteteacute particuliegravere telle que 2 occurrences de lrsquoentiteacute ne peuvent pas avoir la mecircme valeur
pour cette proprieacuteteacute
10
On repreacutesente souvent les occurrences drsquoune entiteacute sous forme drsquoun tableau
Les lignes correspondent aux occurrences et les colonnes correspondent aux proprieacuteteacutes
Exemple
III-MCDRegravegles de construction
Sommaire
1 Regravegles concernant les proprieacuteteacutes
2 Regravegles concernant les entiteacutes
3 Regravegles concernant les associations
1-Regravegles concernant les proprieacuteteacutes
Pour qursquoil nrsquoy ait pas drsquoambiguiumlteacute possible une proprieacuteteacute ne peut pas apparaicirctre
plusieurs fois dans un MCD
Autrement dit toutes les proprieacuteteacutes drsquoun MCD doivent ecirctre diffeacuterentes les unes des autres
Exemples Une proprieacuteteacute Date ne peut pas apparaicirctre simultaneacutement dans une entiteacute
COMMANDE et une entiteacute FACTURE Si crsquoeacutetait le cas il faudrait remplacer Date par
Date_commande et Date_facture par exemple
Toute proprieacuteteacute ne doit avoir agrave un moment donneacute qursquoune seule valeur pour une
occurrence Par conseacutequent un nom de proprieacuteteacute doit toujours ecirctre au singulier
Exemple Dans la proprieacuteteacute note drsquoune entiteacute ELEVE on ne peut avoir qursquoune seule note Si
on veut la note de plusieurs matiegraveres il faut mettre autant de proprieacuteteacutes qursquoil y a de matiegraveres
par exemple noteALSI noteAMSI noteDAIGL etc
2-Regravegles concernant les entiteacutes
Toute entiteacute doit comporter un identifiant qui permet de distinguer entre elles toutes
les occurrences drsquoune mecircme entiteacute Lrsquoidentifiant est placeacute en tecircte des proprieacuteteacutes et il
est souligneacute
Pour chaque occurrence drsquoune entiteacute il ne doit y avoir qursquoune seule valeur pour
chacune des proprieacuteteacutes agrave un instant donneacute Cette valeur peut changer au cours du
temps mais agrave un instant donneacute il nrsquoy en a qursquoune seule
3-Regravegles concernant les associations
Lrsquoidentifiant drsquoune association est implicitement formeacute par la concateacutenation des
identifiants des entiteacutes lieacutees
11
On ne repreacutesente pas cet identifiant au niveau du MCD Deux occurrences drsquoassociation ne
peuvent pas avoir le mecircme identifiant Pour une occurrence lrsquoidentifiant ne doit jamais
changer de valeur (lrsquoidentifiant est une proprieacuteteacute constante)
Une association peut avoir des proprieacuteteacutes mais ce nrsquoest pas obligatoire
IV-MCDIntroduction aux cardinaliteacutes
Sommaire
1 Formalisme
2 La cardinaliteacute minimale
o 21 Exemples
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple 1
o 32 Exemple 2
4 Conclusion
5 Exemple
6 Repreacutesentation des cardinaliteacutes
Les cardinaliteacutes drsquoune entiteacute dans une association exprime le nombre de fois qursquoune
occurrence de cette entiteacute est impliqueacutee dans lrsquoassociation au minimum et au maximum
1-Formalisme
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
21--Exemples
Pour la cardinaliteacute mini entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
Si la reacuteponse est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas un
client raquo on met la cardinaliteacute mini agrave 1
12
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
22-Application
1 Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
2 Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum lrsquoentiteacute peut ecirctre en relation avec lrsquoassociation Cela
peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute on indique la valeur n) ou une seule
fois
On reacutepond agrave la question Combien au maximum lrsquoentiteacute peut participer agrave lrsquoassociation
Si la reacuteponse est laquo au plus une fois raquo la cardinaliteacute maximale prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo la cardinaliteacute maximale prend la valeur N
31-Exemple 1
REGLES DE GESTION
Un salarieacute est affecteacute au plus agrave un seul service Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
32-Exemple 2
REGLE DE GESTION Un eacutelegraveve doit suivre au minimum une option et au maximum
3 options
13
4-Conclusion
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1 n un(e) ou plusieurs
0 n zeacutero ou plusieurs
5-Exemple
6-Repreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave plusieurs
voitures
14
Une personne a une adresse ou est sans domicile A une adresse il y a une ou plusieurs
personne qui y habitent
C-Les cardinaliteacutes et les diffeacuterents types dassociations
I-MCDCardinaliteacutes
Sommaire
1 Deacutefinition et formalisme
2 La cardinaliteacute minimale
o 21 Exemple
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple
4 Reacutecapitulatif
o 41 Exemples complets
1-Deacutefinition et formalisme
Les cardinaliteacutes sont des couples de valeur que lon trouve entre chaque entiteacute et ses
associations lieacutees
Donc pour une association de 2 entiteacutes il y a 4 cardinaliteacutes agrave indiquer (2 de chaque cocircteacute)
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Pour les associations agrave 2 entiteacutes ce sont des valeurs qui permettent drsquoindiquer combien de fois
au minimum et au maximum une occurrence dentiteacute peut ecirctre lieacutee agrave une autre occurrence
dentiteacute
De maniegravere plus geacuteneacuterale les cardinaliteacutes drsquoune entiteacute dans une association expriment le
nombre de fois qursquoune occurrence de cette entiteacute peut ecirctre impliqueacutee dans une
occurrence de lassociation au minimum et au maximum
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propres agrave lorganisation
eacutetudieacutee qui sont deacutecideacutees par les gestionnaires et deacutecideurs Ces regravegles expriment des
contraintes sur le modegravele
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
6
o Le MOT du systegraveme futur mettant en valeur la nouvelle organisation (y
compris en terme de ressources humaines et de nouveaux postes de travail)
Au niveau logico-physique
o Le MLD modegravele logique des donneacutees et le MPD modegravele physique des donneacutees
obtenus agrave partir du MCD adapteacute aux choix effectueacutes dans le MOT et aux
besoins drsquoinformations compleacutementaires
o Le MPT modegravele physique des traitements (algorithmes structure des
programmeshellip)
B- Introduction au Modegravele conceptuel des donneacutees
Deacutefinition
Le modegravele conceptuel des donneacutees (MCD) a pour but de repreacutesenter de faccedilon structureacutee les
donneacutees qui seront utiliseacutees par le systegraveme dinformation Le modegravele conceptuel des donneacutees
deacutecrit la seacutemantique crsquoest agrave dire le sens attacheacute agrave ces donneacutees et agrave leurs rapports et non agrave
lrsquoutilisation qui peut en ecirctre faite
On eacutetablit le MCD apregraves avoir recenseacute et donneacute un nom agrave lrsquoensemble des donneacutees du
domaine eacutetudieacute Ensuite on eacutetudie les relations existantes entre ces donneacutees (deacutependances
fonctionnelles) pour aboutir au MCD
I-MCDRecueil des donneacutees
Exemple
Voilagrave plusieurs phrases qui deacutecrivent une seule et mecircme personne prononceacutees par des
personnes diffeacuterentes
laquo Odile Martin est une personne convenable Et je ne dis pas ccedila parce crsquoest une cliente qui
mrsquoen prend pour 100F toutes les semaines raquo Le boulanger laquo MARTIN Odile habitant 6 rue
des preacutes Saint Amour (Jura) neacutee le 130273 agrave Beacuteziers (Heacuterault) hellip raquo Un inspecteur de police
judiciaire laquo Odile Martin voilagrave une personne qui nrsquoa jamais commis aucun peacutecheacute mortel qui
a fait preuve de beaucoup de geacuteneacuterositeacute Elle ira au paradis raquo Saint Pierre Diffeacuterents
interlocuteurs diffeacuterents points de vue Lequel est le plus pertinent
Ca deacutepend du domaine eacutetudieacute Mais on ne recense que les informations objectives formelles
Quand on analyse les donneacutees sur un objet (abstrait ou concret) du reacuteel il est neacutecessaire de faire le tri entre ce qui est neacutecessaire pour le systegraveme drsquoinformation et ce qui ne lrsquoest pas
2deg repreacutesentation
Odile sera repreacutesenteacutee par au moins ces informations
Nom
Preacutenom
Numeacutero de la voie
Nature de la voie
Nom de la voie
Commune de reacutesidence
Deacutepartement de reacutesidence
Jour de naissance
Mois de naissance
Anneacutee de naissance
Commune de naissance
Deacutepartement de naissance
7
Peut-on deacutecomposer encore Par exemple la commune de reacutesidence est composeacutee de 2 mots
de mecircme que le nom de la voie hellip va-t-on les deacutecomposer Non ces mots repreacutesentent
ensemble une information ne veulent rien dire agrave eux seuls
Mais nrsquoavons-nous pas trop deacutecomposeacute Il existe par exemple des liens entre les
informations 3 4 et 5 qui repreacutesentent lrsquoadresse drsquoOdile entre les informations 8 et 9 qui
repreacutesentent sa date de naissancehellip On va alors regrouper ensemble ces informations relieacutees
On remarque que toutes les personnes (et Odile est une personne on dit que crsquoest une
OCCURRENCE de personne) de la maniegravere suivante
on peut dire qursquoon a creacuteeacute une entiteacute (un ensemble) PERSONNE dont Odile est une
occurrence (ou instance)
Les donneacutees de base sont appeleacutees PROPRIETES ou ATTRIBUTS
II-MCDConcepts et du formalisme
Sommaire
1 Les concepts de base
o 11 Entiteacute
o 12 Association
o 13 Cardinaliteacutes
2 La notion drsquooccurrence
Exemple
1-Les concepts de base
8
11-Entiteacute
Une entiteacute repreacutesente un objet du SI (acteur document concept hellip) ou plus exactement un
ensemble drsquoobjets ayant les mecircmes caracteacuteristiques
Dans une entiteacute on met les informations neacutecessaires et suffisantes pour caracteacuteriser cette
entiteacute Ces informations sont appeleacutees proprieacuteteacutes Les proprieacuteteacutes sont collecteacutees lors de
lrsquoeacutetablissement du dictionnaire des donneacutees (voire partie suivante) Les proprieacuteteacutes prennent
des valeurs pour chaque occurrence drsquoune entiteacute
Une proprieacuteteacute particuliegravere appeleacutee identifiant permet de distinguer sans ambiguiumlteacute toutes les
occurrences de lrsquoentiteacute Lrsquoidentifiant est toujours souligneacute Lrsquoidentifiant est une proprieacuteteacute qui
ne peut pas changer au cours du temps pour une occurrence
12-Association
Crsquoest un lien entre deux entiteacutes (ou plus) On doit lui donner un nom souvent un verbe qui
caracteacuterise le type de relation entre les entiteacutes
Une association possegravede parfois des proprieacuteteacutes
13-Cardinaliteacutes
Ce sont des expressions qui permettent drsquoindiquer combien de fois au minimum et au
maximum le lien entre 2 entiteacutes peut se produire Pour une association de 2 entiteacutes il y a 4
cardinaliteacutes agrave indiquer
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propre au SI eacutetudieacute qui
expriment des contraintes sur le modegravele
2-La notion drsquooccurrence
Il ne faut pas confondre
ENTITE et OCCURRENCE drsquoentiteacute
ni PROPRIETE et VALEUR de proprieacuteteacute
ni ASSOCIATION et OCCURRENCE drsquoassociation
Reprenons ces concepts
Une ENTITE est une FAMILLE drsquoobjets ayant les mecircmes caracteacuteristiques appeleacutees
proprieacuteteacutes
Un MEMBRE de la famille est appeleacute OCCURRENCE drsquoentiteacute
Une entiteacute repreacutesente un ENSEMBLE drsquoOCCURRENCES
Une PROPRIETE est une information eacuteleacutementaire qui permet de deacutecrire une entiteacute ou une
association Une proprieacuteteacute peut prendre une VALEUR (crsquoest lrsquoeacutequivalent drsquoune variable)
(On peut dire qursquoune VALEUR est une OCCURRENCE de PROPRIETE)
De mecircme une ASSOCIATION est un LIEN entre 2 entiteacutes ou plus et une OCCURRENCE
drsquoassociation est un lien entre 2 OCCURRENCES drsquoentiteacutes
Exemple
9
Consideacuterons le scheacutema suivant
PROPRIETE VALEUR de PROPRIETE
Reacutefeacuterence 456
Deacutesignation Manteau
Prix unitaire 100euro
ENTITE OCCURRENCE drsquoentiteacute
PRODUIT Manteau de reacutefeacuterence 456 agrave 100euro
COMMANDE numeacutero 123 du 081002
ASSOCIATION OCCURRENCE drsquoassociation
CONCERNER lien entre la commande 123 et le manteau 456 pour une quantiteacute de 3 uniteacutes
On peut repreacutesenter une entiteacute comme un ensemble ougrave les eacuteleacutements sont les
occurrences
Une association peut ecirctre vue comme lrsquoensemble des relations entre les occurrences
des entiteacutes associeacutees
Attention agrave ne pas confondre occurrences et proprieacuteteacutes En effet on peut dire agrave la fois qursquoune entiteacute est un ensemble de proprieacuteteacutes et un ensemble
drsquooccurrences
Une proprieacuteteacute est une rubrique un eacuteleacutement drsquoinformation qui permet de deacutecrire une entiteacute
Une entiteacute est deacutecrite par plusieurs proprieacuteteacutes
Une occurrence est un exemplaire un eacuteleacutement particulier de la famille repreacutesenteacutee par lrsquoentiteacute
Les proprieacuteteacutes drsquoune entiteacute prennent des valeurs pour chaque occurrence
Chaque occurrence drsquoentiteacute est identifieacutee de maniegravere unique par un identifiant qui est une
proprieacuteteacute particuliegravere telle que 2 occurrences de lrsquoentiteacute ne peuvent pas avoir la mecircme valeur
pour cette proprieacuteteacute
10
On repreacutesente souvent les occurrences drsquoune entiteacute sous forme drsquoun tableau
Les lignes correspondent aux occurrences et les colonnes correspondent aux proprieacuteteacutes
Exemple
III-MCDRegravegles de construction
Sommaire
1 Regravegles concernant les proprieacuteteacutes
2 Regravegles concernant les entiteacutes
3 Regravegles concernant les associations
1-Regravegles concernant les proprieacuteteacutes
Pour qursquoil nrsquoy ait pas drsquoambiguiumlteacute possible une proprieacuteteacute ne peut pas apparaicirctre
plusieurs fois dans un MCD
Autrement dit toutes les proprieacuteteacutes drsquoun MCD doivent ecirctre diffeacuterentes les unes des autres
Exemples Une proprieacuteteacute Date ne peut pas apparaicirctre simultaneacutement dans une entiteacute
COMMANDE et une entiteacute FACTURE Si crsquoeacutetait le cas il faudrait remplacer Date par
Date_commande et Date_facture par exemple
Toute proprieacuteteacute ne doit avoir agrave un moment donneacute qursquoune seule valeur pour une
occurrence Par conseacutequent un nom de proprieacuteteacute doit toujours ecirctre au singulier
Exemple Dans la proprieacuteteacute note drsquoune entiteacute ELEVE on ne peut avoir qursquoune seule note Si
on veut la note de plusieurs matiegraveres il faut mettre autant de proprieacuteteacutes qursquoil y a de matiegraveres
par exemple noteALSI noteAMSI noteDAIGL etc
2-Regravegles concernant les entiteacutes
Toute entiteacute doit comporter un identifiant qui permet de distinguer entre elles toutes
les occurrences drsquoune mecircme entiteacute Lrsquoidentifiant est placeacute en tecircte des proprieacuteteacutes et il
est souligneacute
Pour chaque occurrence drsquoune entiteacute il ne doit y avoir qursquoune seule valeur pour
chacune des proprieacuteteacutes agrave un instant donneacute Cette valeur peut changer au cours du
temps mais agrave un instant donneacute il nrsquoy en a qursquoune seule
3-Regravegles concernant les associations
Lrsquoidentifiant drsquoune association est implicitement formeacute par la concateacutenation des
identifiants des entiteacutes lieacutees
11
On ne repreacutesente pas cet identifiant au niveau du MCD Deux occurrences drsquoassociation ne
peuvent pas avoir le mecircme identifiant Pour une occurrence lrsquoidentifiant ne doit jamais
changer de valeur (lrsquoidentifiant est une proprieacuteteacute constante)
Une association peut avoir des proprieacuteteacutes mais ce nrsquoest pas obligatoire
IV-MCDIntroduction aux cardinaliteacutes
Sommaire
1 Formalisme
2 La cardinaliteacute minimale
o 21 Exemples
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple 1
o 32 Exemple 2
4 Conclusion
5 Exemple
6 Repreacutesentation des cardinaliteacutes
Les cardinaliteacutes drsquoune entiteacute dans une association exprime le nombre de fois qursquoune
occurrence de cette entiteacute est impliqueacutee dans lrsquoassociation au minimum et au maximum
1-Formalisme
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
21--Exemples
Pour la cardinaliteacute mini entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
Si la reacuteponse est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas un
client raquo on met la cardinaliteacute mini agrave 1
12
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
22-Application
1 Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
2 Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum lrsquoentiteacute peut ecirctre en relation avec lrsquoassociation Cela
peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute on indique la valeur n) ou une seule
fois
On reacutepond agrave la question Combien au maximum lrsquoentiteacute peut participer agrave lrsquoassociation
Si la reacuteponse est laquo au plus une fois raquo la cardinaliteacute maximale prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo la cardinaliteacute maximale prend la valeur N
31-Exemple 1
REGLES DE GESTION
Un salarieacute est affecteacute au plus agrave un seul service Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
32-Exemple 2
REGLE DE GESTION Un eacutelegraveve doit suivre au minimum une option et au maximum
3 options
13
4-Conclusion
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1 n un(e) ou plusieurs
0 n zeacutero ou plusieurs
5-Exemple
6-Repreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave plusieurs
voitures
14
Une personne a une adresse ou est sans domicile A une adresse il y a une ou plusieurs
personne qui y habitent
C-Les cardinaliteacutes et les diffeacuterents types dassociations
I-MCDCardinaliteacutes
Sommaire
1 Deacutefinition et formalisme
2 La cardinaliteacute minimale
o 21 Exemple
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple
4 Reacutecapitulatif
o 41 Exemples complets
1-Deacutefinition et formalisme
Les cardinaliteacutes sont des couples de valeur que lon trouve entre chaque entiteacute et ses
associations lieacutees
Donc pour une association de 2 entiteacutes il y a 4 cardinaliteacutes agrave indiquer (2 de chaque cocircteacute)
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Pour les associations agrave 2 entiteacutes ce sont des valeurs qui permettent drsquoindiquer combien de fois
au minimum et au maximum une occurrence dentiteacute peut ecirctre lieacutee agrave une autre occurrence
dentiteacute
De maniegravere plus geacuteneacuterale les cardinaliteacutes drsquoune entiteacute dans une association expriment le
nombre de fois qursquoune occurrence de cette entiteacute peut ecirctre impliqueacutee dans une
occurrence de lassociation au minimum et au maximum
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propres agrave lorganisation
eacutetudieacutee qui sont deacutecideacutees par les gestionnaires et deacutecideurs Ces regravegles expriment des
contraintes sur le modegravele
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
7
Peut-on deacutecomposer encore Par exemple la commune de reacutesidence est composeacutee de 2 mots
de mecircme que le nom de la voie hellip va-t-on les deacutecomposer Non ces mots repreacutesentent
ensemble une information ne veulent rien dire agrave eux seuls
Mais nrsquoavons-nous pas trop deacutecomposeacute Il existe par exemple des liens entre les
informations 3 4 et 5 qui repreacutesentent lrsquoadresse drsquoOdile entre les informations 8 et 9 qui
repreacutesentent sa date de naissancehellip On va alors regrouper ensemble ces informations relieacutees
On remarque que toutes les personnes (et Odile est une personne on dit que crsquoest une
OCCURRENCE de personne) de la maniegravere suivante
on peut dire qursquoon a creacuteeacute une entiteacute (un ensemble) PERSONNE dont Odile est une
occurrence (ou instance)
Les donneacutees de base sont appeleacutees PROPRIETES ou ATTRIBUTS
II-MCDConcepts et du formalisme
Sommaire
1 Les concepts de base
o 11 Entiteacute
o 12 Association
o 13 Cardinaliteacutes
2 La notion drsquooccurrence
Exemple
1-Les concepts de base
8
11-Entiteacute
Une entiteacute repreacutesente un objet du SI (acteur document concept hellip) ou plus exactement un
ensemble drsquoobjets ayant les mecircmes caracteacuteristiques
Dans une entiteacute on met les informations neacutecessaires et suffisantes pour caracteacuteriser cette
entiteacute Ces informations sont appeleacutees proprieacuteteacutes Les proprieacuteteacutes sont collecteacutees lors de
lrsquoeacutetablissement du dictionnaire des donneacutees (voire partie suivante) Les proprieacuteteacutes prennent
des valeurs pour chaque occurrence drsquoune entiteacute
Une proprieacuteteacute particuliegravere appeleacutee identifiant permet de distinguer sans ambiguiumlteacute toutes les
occurrences de lrsquoentiteacute Lrsquoidentifiant est toujours souligneacute Lrsquoidentifiant est une proprieacuteteacute qui
ne peut pas changer au cours du temps pour une occurrence
12-Association
Crsquoest un lien entre deux entiteacutes (ou plus) On doit lui donner un nom souvent un verbe qui
caracteacuterise le type de relation entre les entiteacutes
Une association possegravede parfois des proprieacuteteacutes
13-Cardinaliteacutes
Ce sont des expressions qui permettent drsquoindiquer combien de fois au minimum et au
maximum le lien entre 2 entiteacutes peut se produire Pour une association de 2 entiteacutes il y a 4
cardinaliteacutes agrave indiquer
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propre au SI eacutetudieacute qui
expriment des contraintes sur le modegravele
2-La notion drsquooccurrence
Il ne faut pas confondre
ENTITE et OCCURRENCE drsquoentiteacute
ni PROPRIETE et VALEUR de proprieacuteteacute
ni ASSOCIATION et OCCURRENCE drsquoassociation
Reprenons ces concepts
Une ENTITE est une FAMILLE drsquoobjets ayant les mecircmes caracteacuteristiques appeleacutees
proprieacuteteacutes
Un MEMBRE de la famille est appeleacute OCCURRENCE drsquoentiteacute
Une entiteacute repreacutesente un ENSEMBLE drsquoOCCURRENCES
Une PROPRIETE est une information eacuteleacutementaire qui permet de deacutecrire une entiteacute ou une
association Une proprieacuteteacute peut prendre une VALEUR (crsquoest lrsquoeacutequivalent drsquoune variable)
(On peut dire qursquoune VALEUR est une OCCURRENCE de PROPRIETE)
De mecircme une ASSOCIATION est un LIEN entre 2 entiteacutes ou plus et une OCCURRENCE
drsquoassociation est un lien entre 2 OCCURRENCES drsquoentiteacutes
Exemple
9
Consideacuterons le scheacutema suivant
PROPRIETE VALEUR de PROPRIETE
Reacutefeacuterence 456
Deacutesignation Manteau
Prix unitaire 100euro
ENTITE OCCURRENCE drsquoentiteacute
PRODUIT Manteau de reacutefeacuterence 456 agrave 100euro
COMMANDE numeacutero 123 du 081002
ASSOCIATION OCCURRENCE drsquoassociation
CONCERNER lien entre la commande 123 et le manteau 456 pour une quantiteacute de 3 uniteacutes
On peut repreacutesenter une entiteacute comme un ensemble ougrave les eacuteleacutements sont les
occurrences
Une association peut ecirctre vue comme lrsquoensemble des relations entre les occurrences
des entiteacutes associeacutees
Attention agrave ne pas confondre occurrences et proprieacuteteacutes En effet on peut dire agrave la fois qursquoune entiteacute est un ensemble de proprieacuteteacutes et un ensemble
drsquooccurrences
Une proprieacuteteacute est une rubrique un eacuteleacutement drsquoinformation qui permet de deacutecrire une entiteacute
Une entiteacute est deacutecrite par plusieurs proprieacuteteacutes
Une occurrence est un exemplaire un eacuteleacutement particulier de la famille repreacutesenteacutee par lrsquoentiteacute
Les proprieacuteteacutes drsquoune entiteacute prennent des valeurs pour chaque occurrence
Chaque occurrence drsquoentiteacute est identifieacutee de maniegravere unique par un identifiant qui est une
proprieacuteteacute particuliegravere telle que 2 occurrences de lrsquoentiteacute ne peuvent pas avoir la mecircme valeur
pour cette proprieacuteteacute
10
On repreacutesente souvent les occurrences drsquoune entiteacute sous forme drsquoun tableau
Les lignes correspondent aux occurrences et les colonnes correspondent aux proprieacuteteacutes
Exemple
III-MCDRegravegles de construction
Sommaire
1 Regravegles concernant les proprieacuteteacutes
2 Regravegles concernant les entiteacutes
3 Regravegles concernant les associations
1-Regravegles concernant les proprieacuteteacutes
Pour qursquoil nrsquoy ait pas drsquoambiguiumlteacute possible une proprieacuteteacute ne peut pas apparaicirctre
plusieurs fois dans un MCD
Autrement dit toutes les proprieacuteteacutes drsquoun MCD doivent ecirctre diffeacuterentes les unes des autres
Exemples Une proprieacuteteacute Date ne peut pas apparaicirctre simultaneacutement dans une entiteacute
COMMANDE et une entiteacute FACTURE Si crsquoeacutetait le cas il faudrait remplacer Date par
Date_commande et Date_facture par exemple
Toute proprieacuteteacute ne doit avoir agrave un moment donneacute qursquoune seule valeur pour une
occurrence Par conseacutequent un nom de proprieacuteteacute doit toujours ecirctre au singulier
Exemple Dans la proprieacuteteacute note drsquoune entiteacute ELEVE on ne peut avoir qursquoune seule note Si
on veut la note de plusieurs matiegraveres il faut mettre autant de proprieacuteteacutes qursquoil y a de matiegraveres
par exemple noteALSI noteAMSI noteDAIGL etc
2-Regravegles concernant les entiteacutes
Toute entiteacute doit comporter un identifiant qui permet de distinguer entre elles toutes
les occurrences drsquoune mecircme entiteacute Lrsquoidentifiant est placeacute en tecircte des proprieacuteteacutes et il
est souligneacute
Pour chaque occurrence drsquoune entiteacute il ne doit y avoir qursquoune seule valeur pour
chacune des proprieacuteteacutes agrave un instant donneacute Cette valeur peut changer au cours du
temps mais agrave un instant donneacute il nrsquoy en a qursquoune seule
3-Regravegles concernant les associations
Lrsquoidentifiant drsquoune association est implicitement formeacute par la concateacutenation des
identifiants des entiteacutes lieacutees
11
On ne repreacutesente pas cet identifiant au niveau du MCD Deux occurrences drsquoassociation ne
peuvent pas avoir le mecircme identifiant Pour une occurrence lrsquoidentifiant ne doit jamais
changer de valeur (lrsquoidentifiant est une proprieacuteteacute constante)
Une association peut avoir des proprieacuteteacutes mais ce nrsquoest pas obligatoire
IV-MCDIntroduction aux cardinaliteacutes
Sommaire
1 Formalisme
2 La cardinaliteacute minimale
o 21 Exemples
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple 1
o 32 Exemple 2
4 Conclusion
5 Exemple
6 Repreacutesentation des cardinaliteacutes
Les cardinaliteacutes drsquoune entiteacute dans une association exprime le nombre de fois qursquoune
occurrence de cette entiteacute est impliqueacutee dans lrsquoassociation au minimum et au maximum
1-Formalisme
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
21--Exemples
Pour la cardinaliteacute mini entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
Si la reacuteponse est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas un
client raquo on met la cardinaliteacute mini agrave 1
12
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
22-Application
1 Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
2 Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum lrsquoentiteacute peut ecirctre en relation avec lrsquoassociation Cela
peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute on indique la valeur n) ou une seule
fois
On reacutepond agrave la question Combien au maximum lrsquoentiteacute peut participer agrave lrsquoassociation
Si la reacuteponse est laquo au plus une fois raquo la cardinaliteacute maximale prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo la cardinaliteacute maximale prend la valeur N
31-Exemple 1
REGLES DE GESTION
Un salarieacute est affecteacute au plus agrave un seul service Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
32-Exemple 2
REGLE DE GESTION Un eacutelegraveve doit suivre au minimum une option et au maximum
3 options
13
4-Conclusion
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1 n un(e) ou plusieurs
0 n zeacutero ou plusieurs
5-Exemple
6-Repreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave plusieurs
voitures
14
Une personne a une adresse ou est sans domicile A une adresse il y a une ou plusieurs
personne qui y habitent
C-Les cardinaliteacutes et les diffeacuterents types dassociations
I-MCDCardinaliteacutes
Sommaire
1 Deacutefinition et formalisme
2 La cardinaliteacute minimale
o 21 Exemple
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple
4 Reacutecapitulatif
o 41 Exemples complets
1-Deacutefinition et formalisme
Les cardinaliteacutes sont des couples de valeur que lon trouve entre chaque entiteacute et ses
associations lieacutees
Donc pour une association de 2 entiteacutes il y a 4 cardinaliteacutes agrave indiquer (2 de chaque cocircteacute)
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Pour les associations agrave 2 entiteacutes ce sont des valeurs qui permettent drsquoindiquer combien de fois
au minimum et au maximum une occurrence dentiteacute peut ecirctre lieacutee agrave une autre occurrence
dentiteacute
De maniegravere plus geacuteneacuterale les cardinaliteacutes drsquoune entiteacute dans une association expriment le
nombre de fois qursquoune occurrence de cette entiteacute peut ecirctre impliqueacutee dans une
occurrence de lassociation au minimum et au maximum
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propres agrave lorganisation
eacutetudieacutee qui sont deacutecideacutees par les gestionnaires et deacutecideurs Ces regravegles expriment des
contraintes sur le modegravele
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
8
11-Entiteacute
Une entiteacute repreacutesente un objet du SI (acteur document concept hellip) ou plus exactement un
ensemble drsquoobjets ayant les mecircmes caracteacuteristiques
Dans une entiteacute on met les informations neacutecessaires et suffisantes pour caracteacuteriser cette
entiteacute Ces informations sont appeleacutees proprieacuteteacutes Les proprieacuteteacutes sont collecteacutees lors de
lrsquoeacutetablissement du dictionnaire des donneacutees (voire partie suivante) Les proprieacuteteacutes prennent
des valeurs pour chaque occurrence drsquoune entiteacute
Une proprieacuteteacute particuliegravere appeleacutee identifiant permet de distinguer sans ambiguiumlteacute toutes les
occurrences de lrsquoentiteacute Lrsquoidentifiant est toujours souligneacute Lrsquoidentifiant est une proprieacuteteacute qui
ne peut pas changer au cours du temps pour une occurrence
12-Association
Crsquoest un lien entre deux entiteacutes (ou plus) On doit lui donner un nom souvent un verbe qui
caracteacuterise le type de relation entre les entiteacutes
Une association possegravede parfois des proprieacuteteacutes
13-Cardinaliteacutes
Ce sont des expressions qui permettent drsquoindiquer combien de fois au minimum et au
maximum le lien entre 2 entiteacutes peut se produire Pour une association de 2 entiteacutes il y a 4
cardinaliteacutes agrave indiquer
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propre au SI eacutetudieacute qui
expriment des contraintes sur le modegravele
2-La notion drsquooccurrence
Il ne faut pas confondre
ENTITE et OCCURRENCE drsquoentiteacute
ni PROPRIETE et VALEUR de proprieacuteteacute
ni ASSOCIATION et OCCURRENCE drsquoassociation
Reprenons ces concepts
Une ENTITE est une FAMILLE drsquoobjets ayant les mecircmes caracteacuteristiques appeleacutees
proprieacuteteacutes
Un MEMBRE de la famille est appeleacute OCCURRENCE drsquoentiteacute
Une entiteacute repreacutesente un ENSEMBLE drsquoOCCURRENCES
Une PROPRIETE est une information eacuteleacutementaire qui permet de deacutecrire une entiteacute ou une
association Une proprieacuteteacute peut prendre une VALEUR (crsquoest lrsquoeacutequivalent drsquoune variable)
(On peut dire qursquoune VALEUR est une OCCURRENCE de PROPRIETE)
De mecircme une ASSOCIATION est un LIEN entre 2 entiteacutes ou plus et une OCCURRENCE
drsquoassociation est un lien entre 2 OCCURRENCES drsquoentiteacutes
Exemple
9
Consideacuterons le scheacutema suivant
PROPRIETE VALEUR de PROPRIETE
Reacutefeacuterence 456
Deacutesignation Manteau
Prix unitaire 100euro
ENTITE OCCURRENCE drsquoentiteacute
PRODUIT Manteau de reacutefeacuterence 456 agrave 100euro
COMMANDE numeacutero 123 du 081002
ASSOCIATION OCCURRENCE drsquoassociation
CONCERNER lien entre la commande 123 et le manteau 456 pour une quantiteacute de 3 uniteacutes
On peut repreacutesenter une entiteacute comme un ensemble ougrave les eacuteleacutements sont les
occurrences
Une association peut ecirctre vue comme lrsquoensemble des relations entre les occurrences
des entiteacutes associeacutees
Attention agrave ne pas confondre occurrences et proprieacuteteacutes En effet on peut dire agrave la fois qursquoune entiteacute est un ensemble de proprieacuteteacutes et un ensemble
drsquooccurrences
Une proprieacuteteacute est une rubrique un eacuteleacutement drsquoinformation qui permet de deacutecrire une entiteacute
Une entiteacute est deacutecrite par plusieurs proprieacuteteacutes
Une occurrence est un exemplaire un eacuteleacutement particulier de la famille repreacutesenteacutee par lrsquoentiteacute
Les proprieacuteteacutes drsquoune entiteacute prennent des valeurs pour chaque occurrence
Chaque occurrence drsquoentiteacute est identifieacutee de maniegravere unique par un identifiant qui est une
proprieacuteteacute particuliegravere telle que 2 occurrences de lrsquoentiteacute ne peuvent pas avoir la mecircme valeur
pour cette proprieacuteteacute
10
On repreacutesente souvent les occurrences drsquoune entiteacute sous forme drsquoun tableau
Les lignes correspondent aux occurrences et les colonnes correspondent aux proprieacuteteacutes
Exemple
III-MCDRegravegles de construction
Sommaire
1 Regravegles concernant les proprieacuteteacutes
2 Regravegles concernant les entiteacutes
3 Regravegles concernant les associations
1-Regravegles concernant les proprieacuteteacutes
Pour qursquoil nrsquoy ait pas drsquoambiguiumlteacute possible une proprieacuteteacute ne peut pas apparaicirctre
plusieurs fois dans un MCD
Autrement dit toutes les proprieacuteteacutes drsquoun MCD doivent ecirctre diffeacuterentes les unes des autres
Exemples Une proprieacuteteacute Date ne peut pas apparaicirctre simultaneacutement dans une entiteacute
COMMANDE et une entiteacute FACTURE Si crsquoeacutetait le cas il faudrait remplacer Date par
Date_commande et Date_facture par exemple
Toute proprieacuteteacute ne doit avoir agrave un moment donneacute qursquoune seule valeur pour une
occurrence Par conseacutequent un nom de proprieacuteteacute doit toujours ecirctre au singulier
Exemple Dans la proprieacuteteacute note drsquoune entiteacute ELEVE on ne peut avoir qursquoune seule note Si
on veut la note de plusieurs matiegraveres il faut mettre autant de proprieacuteteacutes qursquoil y a de matiegraveres
par exemple noteALSI noteAMSI noteDAIGL etc
2-Regravegles concernant les entiteacutes
Toute entiteacute doit comporter un identifiant qui permet de distinguer entre elles toutes
les occurrences drsquoune mecircme entiteacute Lrsquoidentifiant est placeacute en tecircte des proprieacuteteacutes et il
est souligneacute
Pour chaque occurrence drsquoune entiteacute il ne doit y avoir qursquoune seule valeur pour
chacune des proprieacuteteacutes agrave un instant donneacute Cette valeur peut changer au cours du
temps mais agrave un instant donneacute il nrsquoy en a qursquoune seule
3-Regravegles concernant les associations
Lrsquoidentifiant drsquoune association est implicitement formeacute par la concateacutenation des
identifiants des entiteacutes lieacutees
11
On ne repreacutesente pas cet identifiant au niveau du MCD Deux occurrences drsquoassociation ne
peuvent pas avoir le mecircme identifiant Pour une occurrence lrsquoidentifiant ne doit jamais
changer de valeur (lrsquoidentifiant est une proprieacuteteacute constante)
Une association peut avoir des proprieacuteteacutes mais ce nrsquoest pas obligatoire
IV-MCDIntroduction aux cardinaliteacutes
Sommaire
1 Formalisme
2 La cardinaliteacute minimale
o 21 Exemples
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple 1
o 32 Exemple 2
4 Conclusion
5 Exemple
6 Repreacutesentation des cardinaliteacutes
Les cardinaliteacutes drsquoune entiteacute dans une association exprime le nombre de fois qursquoune
occurrence de cette entiteacute est impliqueacutee dans lrsquoassociation au minimum et au maximum
1-Formalisme
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
21--Exemples
Pour la cardinaliteacute mini entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
Si la reacuteponse est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas un
client raquo on met la cardinaliteacute mini agrave 1
12
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
22-Application
1 Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
2 Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum lrsquoentiteacute peut ecirctre en relation avec lrsquoassociation Cela
peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute on indique la valeur n) ou une seule
fois
On reacutepond agrave la question Combien au maximum lrsquoentiteacute peut participer agrave lrsquoassociation
Si la reacuteponse est laquo au plus une fois raquo la cardinaliteacute maximale prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo la cardinaliteacute maximale prend la valeur N
31-Exemple 1
REGLES DE GESTION
Un salarieacute est affecteacute au plus agrave un seul service Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
32-Exemple 2
REGLE DE GESTION Un eacutelegraveve doit suivre au minimum une option et au maximum
3 options
13
4-Conclusion
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1 n un(e) ou plusieurs
0 n zeacutero ou plusieurs
5-Exemple
6-Repreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave plusieurs
voitures
14
Une personne a une adresse ou est sans domicile A une adresse il y a une ou plusieurs
personne qui y habitent
C-Les cardinaliteacutes et les diffeacuterents types dassociations
I-MCDCardinaliteacutes
Sommaire
1 Deacutefinition et formalisme
2 La cardinaliteacute minimale
o 21 Exemple
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple
4 Reacutecapitulatif
o 41 Exemples complets
1-Deacutefinition et formalisme
Les cardinaliteacutes sont des couples de valeur que lon trouve entre chaque entiteacute et ses
associations lieacutees
Donc pour une association de 2 entiteacutes il y a 4 cardinaliteacutes agrave indiquer (2 de chaque cocircteacute)
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Pour les associations agrave 2 entiteacutes ce sont des valeurs qui permettent drsquoindiquer combien de fois
au minimum et au maximum une occurrence dentiteacute peut ecirctre lieacutee agrave une autre occurrence
dentiteacute
De maniegravere plus geacuteneacuterale les cardinaliteacutes drsquoune entiteacute dans une association expriment le
nombre de fois qursquoune occurrence de cette entiteacute peut ecirctre impliqueacutee dans une
occurrence de lassociation au minimum et au maximum
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propres agrave lorganisation
eacutetudieacutee qui sont deacutecideacutees par les gestionnaires et deacutecideurs Ces regravegles expriment des
contraintes sur le modegravele
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
9
Consideacuterons le scheacutema suivant
PROPRIETE VALEUR de PROPRIETE
Reacutefeacuterence 456
Deacutesignation Manteau
Prix unitaire 100euro
ENTITE OCCURRENCE drsquoentiteacute
PRODUIT Manteau de reacutefeacuterence 456 agrave 100euro
COMMANDE numeacutero 123 du 081002
ASSOCIATION OCCURRENCE drsquoassociation
CONCERNER lien entre la commande 123 et le manteau 456 pour une quantiteacute de 3 uniteacutes
On peut repreacutesenter une entiteacute comme un ensemble ougrave les eacuteleacutements sont les
occurrences
Une association peut ecirctre vue comme lrsquoensemble des relations entre les occurrences
des entiteacutes associeacutees
Attention agrave ne pas confondre occurrences et proprieacuteteacutes En effet on peut dire agrave la fois qursquoune entiteacute est un ensemble de proprieacuteteacutes et un ensemble
drsquooccurrences
Une proprieacuteteacute est une rubrique un eacuteleacutement drsquoinformation qui permet de deacutecrire une entiteacute
Une entiteacute est deacutecrite par plusieurs proprieacuteteacutes
Une occurrence est un exemplaire un eacuteleacutement particulier de la famille repreacutesenteacutee par lrsquoentiteacute
Les proprieacuteteacutes drsquoune entiteacute prennent des valeurs pour chaque occurrence
Chaque occurrence drsquoentiteacute est identifieacutee de maniegravere unique par un identifiant qui est une
proprieacuteteacute particuliegravere telle que 2 occurrences de lrsquoentiteacute ne peuvent pas avoir la mecircme valeur
pour cette proprieacuteteacute
10
On repreacutesente souvent les occurrences drsquoune entiteacute sous forme drsquoun tableau
Les lignes correspondent aux occurrences et les colonnes correspondent aux proprieacuteteacutes
Exemple
III-MCDRegravegles de construction
Sommaire
1 Regravegles concernant les proprieacuteteacutes
2 Regravegles concernant les entiteacutes
3 Regravegles concernant les associations
1-Regravegles concernant les proprieacuteteacutes
Pour qursquoil nrsquoy ait pas drsquoambiguiumlteacute possible une proprieacuteteacute ne peut pas apparaicirctre
plusieurs fois dans un MCD
Autrement dit toutes les proprieacuteteacutes drsquoun MCD doivent ecirctre diffeacuterentes les unes des autres
Exemples Une proprieacuteteacute Date ne peut pas apparaicirctre simultaneacutement dans une entiteacute
COMMANDE et une entiteacute FACTURE Si crsquoeacutetait le cas il faudrait remplacer Date par
Date_commande et Date_facture par exemple
Toute proprieacuteteacute ne doit avoir agrave un moment donneacute qursquoune seule valeur pour une
occurrence Par conseacutequent un nom de proprieacuteteacute doit toujours ecirctre au singulier
Exemple Dans la proprieacuteteacute note drsquoune entiteacute ELEVE on ne peut avoir qursquoune seule note Si
on veut la note de plusieurs matiegraveres il faut mettre autant de proprieacuteteacutes qursquoil y a de matiegraveres
par exemple noteALSI noteAMSI noteDAIGL etc
2-Regravegles concernant les entiteacutes
Toute entiteacute doit comporter un identifiant qui permet de distinguer entre elles toutes
les occurrences drsquoune mecircme entiteacute Lrsquoidentifiant est placeacute en tecircte des proprieacuteteacutes et il
est souligneacute
Pour chaque occurrence drsquoune entiteacute il ne doit y avoir qursquoune seule valeur pour
chacune des proprieacuteteacutes agrave un instant donneacute Cette valeur peut changer au cours du
temps mais agrave un instant donneacute il nrsquoy en a qursquoune seule
3-Regravegles concernant les associations
Lrsquoidentifiant drsquoune association est implicitement formeacute par la concateacutenation des
identifiants des entiteacutes lieacutees
11
On ne repreacutesente pas cet identifiant au niveau du MCD Deux occurrences drsquoassociation ne
peuvent pas avoir le mecircme identifiant Pour une occurrence lrsquoidentifiant ne doit jamais
changer de valeur (lrsquoidentifiant est une proprieacuteteacute constante)
Une association peut avoir des proprieacuteteacutes mais ce nrsquoest pas obligatoire
IV-MCDIntroduction aux cardinaliteacutes
Sommaire
1 Formalisme
2 La cardinaliteacute minimale
o 21 Exemples
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple 1
o 32 Exemple 2
4 Conclusion
5 Exemple
6 Repreacutesentation des cardinaliteacutes
Les cardinaliteacutes drsquoune entiteacute dans une association exprime le nombre de fois qursquoune
occurrence de cette entiteacute est impliqueacutee dans lrsquoassociation au minimum et au maximum
1-Formalisme
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
21--Exemples
Pour la cardinaliteacute mini entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
Si la reacuteponse est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas un
client raquo on met la cardinaliteacute mini agrave 1
12
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
22-Application
1 Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
2 Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum lrsquoentiteacute peut ecirctre en relation avec lrsquoassociation Cela
peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute on indique la valeur n) ou une seule
fois
On reacutepond agrave la question Combien au maximum lrsquoentiteacute peut participer agrave lrsquoassociation
Si la reacuteponse est laquo au plus une fois raquo la cardinaliteacute maximale prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo la cardinaliteacute maximale prend la valeur N
31-Exemple 1
REGLES DE GESTION
Un salarieacute est affecteacute au plus agrave un seul service Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
32-Exemple 2
REGLE DE GESTION Un eacutelegraveve doit suivre au minimum une option et au maximum
3 options
13
4-Conclusion
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1 n un(e) ou plusieurs
0 n zeacutero ou plusieurs
5-Exemple
6-Repreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave plusieurs
voitures
14
Une personne a une adresse ou est sans domicile A une adresse il y a une ou plusieurs
personne qui y habitent
C-Les cardinaliteacutes et les diffeacuterents types dassociations
I-MCDCardinaliteacutes
Sommaire
1 Deacutefinition et formalisme
2 La cardinaliteacute minimale
o 21 Exemple
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple
4 Reacutecapitulatif
o 41 Exemples complets
1-Deacutefinition et formalisme
Les cardinaliteacutes sont des couples de valeur que lon trouve entre chaque entiteacute et ses
associations lieacutees
Donc pour une association de 2 entiteacutes il y a 4 cardinaliteacutes agrave indiquer (2 de chaque cocircteacute)
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Pour les associations agrave 2 entiteacutes ce sont des valeurs qui permettent drsquoindiquer combien de fois
au minimum et au maximum une occurrence dentiteacute peut ecirctre lieacutee agrave une autre occurrence
dentiteacute
De maniegravere plus geacuteneacuterale les cardinaliteacutes drsquoune entiteacute dans une association expriment le
nombre de fois qursquoune occurrence de cette entiteacute peut ecirctre impliqueacutee dans une
occurrence de lassociation au minimum et au maximum
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propres agrave lorganisation
eacutetudieacutee qui sont deacutecideacutees par les gestionnaires et deacutecideurs Ces regravegles expriment des
contraintes sur le modegravele
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
10
On repreacutesente souvent les occurrences drsquoune entiteacute sous forme drsquoun tableau
Les lignes correspondent aux occurrences et les colonnes correspondent aux proprieacuteteacutes
Exemple
III-MCDRegravegles de construction
Sommaire
1 Regravegles concernant les proprieacuteteacutes
2 Regravegles concernant les entiteacutes
3 Regravegles concernant les associations
1-Regravegles concernant les proprieacuteteacutes
Pour qursquoil nrsquoy ait pas drsquoambiguiumlteacute possible une proprieacuteteacute ne peut pas apparaicirctre
plusieurs fois dans un MCD
Autrement dit toutes les proprieacuteteacutes drsquoun MCD doivent ecirctre diffeacuterentes les unes des autres
Exemples Une proprieacuteteacute Date ne peut pas apparaicirctre simultaneacutement dans une entiteacute
COMMANDE et une entiteacute FACTURE Si crsquoeacutetait le cas il faudrait remplacer Date par
Date_commande et Date_facture par exemple
Toute proprieacuteteacute ne doit avoir agrave un moment donneacute qursquoune seule valeur pour une
occurrence Par conseacutequent un nom de proprieacuteteacute doit toujours ecirctre au singulier
Exemple Dans la proprieacuteteacute note drsquoune entiteacute ELEVE on ne peut avoir qursquoune seule note Si
on veut la note de plusieurs matiegraveres il faut mettre autant de proprieacuteteacutes qursquoil y a de matiegraveres
par exemple noteALSI noteAMSI noteDAIGL etc
2-Regravegles concernant les entiteacutes
Toute entiteacute doit comporter un identifiant qui permet de distinguer entre elles toutes
les occurrences drsquoune mecircme entiteacute Lrsquoidentifiant est placeacute en tecircte des proprieacuteteacutes et il
est souligneacute
Pour chaque occurrence drsquoune entiteacute il ne doit y avoir qursquoune seule valeur pour
chacune des proprieacuteteacutes agrave un instant donneacute Cette valeur peut changer au cours du
temps mais agrave un instant donneacute il nrsquoy en a qursquoune seule
3-Regravegles concernant les associations
Lrsquoidentifiant drsquoune association est implicitement formeacute par la concateacutenation des
identifiants des entiteacutes lieacutees
11
On ne repreacutesente pas cet identifiant au niveau du MCD Deux occurrences drsquoassociation ne
peuvent pas avoir le mecircme identifiant Pour une occurrence lrsquoidentifiant ne doit jamais
changer de valeur (lrsquoidentifiant est une proprieacuteteacute constante)
Une association peut avoir des proprieacuteteacutes mais ce nrsquoest pas obligatoire
IV-MCDIntroduction aux cardinaliteacutes
Sommaire
1 Formalisme
2 La cardinaliteacute minimale
o 21 Exemples
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple 1
o 32 Exemple 2
4 Conclusion
5 Exemple
6 Repreacutesentation des cardinaliteacutes
Les cardinaliteacutes drsquoune entiteacute dans une association exprime le nombre de fois qursquoune
occurrence de cette entiteacute est impliqueacutee dans lrsquoassociation au minimum et au maximum
1-Formalisme
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
21--Exemples
Pour la cardinaliteacute mini entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
Si la reacuteponse est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas un
client raquo on met la cardinaliteacute mini agrave 1
12
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
22-Application
1 Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
2 Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum lrsquoentiteacute peut ecirctre en relation avec lrsquoassociation Cela
peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute on indique la valeur n) ou une seule
fois
On reacutepond agrave la question Combien au maximum lrsquoentiteacute peut participer agrave lrsquoassociation
Si la reacuteponse est laquo au plus une fois raquo la cardinaliteacute maximale prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo la cardinaliteacute maximale prend la valeur N
31-Exemple 1
REGLES DE GESTION
Un salarieacute est affecteacute au plus agrave un seul service Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
32-Exemple 2
REGLE DE GESTION Un eacutelegraveve doit suivre au minimum une option et au maximum
3 options
13
4-Conclusion
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1 n un(e) ou plusieurs
0 n zeacutero ou plusieurs
5-Exemple
6-Repreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave plusieurs
voitures
14
Une personne a une adresse ou est sans domicile A une adresse il y a une ou plusieurs
personne qui y habitent
C-Les cardinaliteacutes et les diffeacuterents types dassociations
I-MCDCardinaliteacutes
Sommaire
1 Deacutefinition et formalisme
2 La cardinaliteacute minimale
o 21 Exemple
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple
4 Reacutecapitulatif
o 41 Exemples complets
1-Deacutefinition et formalisme
Les cardinaliteacutes sont des couples de valeur que lon trouve entre chaque entiteacute et ses
associations lieacutees
Donc pour une association de 2 entiteacutes il y a 4 cardinaliteacutes agrave indiquer (2 de chaque cocircteacute)
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Pour les associations agrave 2 entiteacutes ce sont des valeurs qui permettent drsquoindiquer combien de fois
au minimum et au maximum une occurrence dentiteacute peut ecirctre lieacutee agrave une autre occurrence
dentiteacute
De maniegravere plus geacuteneacuterale les cardinaliteacutes drsquoune entiteacute dans une association expriment le
nombre de fois qursquoune occurrence de cette entiteacute peut ecirctre impliqueacutee dans une
occurrence de lassociation au minimum et au maximum
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propres agrave lorganisation
eacutetudieacutee qui sont deacutecideacutees par les gestionnaires et deacutecideurs Ces regravegles expriment des
contraintes sur le modegravele
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
11
On ne repreacutesente pas cet identifiant au niveau du MCD Deux occurrences drsquoassociation ne
peuvent pas avoir le mecircme identifiant Pour une occurrence lrsquoidentifiant ne doit jamais
changer de valeur (lrsquoidentifiant est une proprieacuteteacute constante)
Une association peut avoir des proprieacuteteacutes mais ce nrsquoest pas obligatoire
IV-MCDIntroduction aux cardinaliteacutes
Sommaire
1 Formalisme
2 La cardinaliteacute minimale
o 21 Exemples
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple 1
o 32 Exemple 2
4 Conclusion
5 Exemple
6 Repreacutesentation des cardinaliteacutes
Les cardinaliteacutes drsquoune entiteacute dans une association exprime le nombre de fois qursquoune
occurrence de cette entiteacute est impliqueacutee dans lrsquoassociation au minimum et au maximum
1-Formalisme
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
21--Exemples
Pour la cardinaliteacute mini entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
Si la reacuteponse est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas un
client raquo on met la cardinaliteacute mini agrave 1
12
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
22-Application
1 Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
2 Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum lrsquoentiteacute peut ecirctre en relation avec lrsquoassociation Cela
peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute on indique la valeur n) ou une seule
fois
On reacutepond agrave la question Combien au maximum lrsquoentiteacute peut participer agrave lrsquoassociation
Si la reacuteponse est laquo au plus une fois raquo la cardinaliteacute maximale prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo la cardinaliteacute maximale prend la valeur N
31-Exemple 1
REGLES DE GESTION
Un salarieacute est affecteacute au plus agrave un seul service Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
32-Exemple 2
REGLE DE GESTION Un eacutelegraveve doit suivre au minimum une option et au maximum
3 options
13
4-Conclusion
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1 n un(e) ou plusieurs
0 n zeacutero ou plusieurs
5-Exemple
6-Repreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave plusieurs
voitures
14
Une personne a une adresse ou est sans domicile A une adresse il y a une ou plusieurs
personne qui y habitent
C-Les cardinaliteacutes et les diffeacuterents types dassociations
I-MCDCardinaliteacutes
Sommaire
1 Deacutefinition et formalisme
2 La cardinaliteacute minimale
o 21 Exemple
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple
4 Reacutecapitulatif
o 41 Exemples complets
1-Deacutefinition et formalisme
Les cardinaliteacutes sont des couples de valeur que lon trouve entre chaque entiteacute et ses
associations lieacutees
Donc pour une association de 2 entiteacutes il y a 4 cardinaliteacutes agrave indiquer (2 de chaque cocircteacute)
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Pour les associations agrave 2 entiteacutes ce sont des valeurs qui permettent drsquoindiquer combien de fois
au minimum et au maximum une occurrence dentiteacute peut ecirctre lieacutee agrave une autre occurrence
dentiteacute
De maniegravere plus geacuteneacuterale les cardinaliteacutes drsquoune entiteacute dans une association expriment le
nombre de fois qursquoune occurrence de cette entiteacute peut ecirctre impliqueacutee dans une
occurrence de lassociation au minimum et au maximum
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propres agrave lorganisation
eacutetudieacutee qui sont deacutecideacutees par les gestionnaires et deacutecideurs Ces regravegles expriment des
contraintes sur le modegravele
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
12
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
22-Application
1 Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
2 Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum lrsquoentiteacute peut ecirctre en relation avec lrsquoassociation Cela
peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute on indique la valeur n) ou une seule
fois
On reacutepond agrave la question Combien au maximum lrsquoentiteacute peut participer agrave lrsquoassociation
Si la reacuteponse est laquo au plus une fois raquo la cardinaliteacute maximale prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo la cardinaliteacute maximale prend la valeur N
31-Exemple 1
REGLES DE GESTION
Un salarieacute est affecteacute au plus agrave un seul service Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
32-Exemple 2
REGLE DE GESTION Un eacutelegraveve doit suivre au minimum une option et au maximum
3 options
13
4-Conclusion
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1 n un(e) ou plusieurs
0 n zeacutero ou plusieurs
5-Exemple
6-Repreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave plusieurs
voitures
14
Une personne a une adresse ou est sans domicile A une adresse il y a une ou plusieurs
personne qui y habitent
C-Les cardinaliteacutes et les diffeacuterents types dassociations
I-MCDCardinaliteacutes
Sommaire
1 Deacutefinition et formalisme
2 La cardinaliteacute minimale
o 21 Exemple
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple
4 Reacutecapitulatif
o 41 Exemples complets
1-Deacutefinition et formalisme
Les cardinaliteacutes sont des couples de valeur que lon trouve entre chaque entiteacute et ses
associations lieacutees
Donc pour une association de 2 entiteacutes il y a 4 cardinaliteacutes agrave indiquer (2 de chaque cocircteacute)
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Pour les associations agrave 2 entiteacutes ce sont des valeurs qui permettent drsquoindiquer combien de fois
au minimum et au maximum une occurrence dentiteacute peut ecirctre lieacutee agrave une autre occurrence
dentiteacute
De maniegravere plus geacuteneacuterale les cardinaliteacutes drsquoune entiteacute dans une association expriment le
nombre de fois qursquoune occurrence de cette entiteacute peut ecirctre impliqueacutee dans une
occurrence de lassociation au minimum et au maximum
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propres agrave lorganisation
eacutetudieacutee qui sont deacutecideacutees par les gestionnaires et deacutecideurs Ces regravegles expriment des
contraintes sur le modegravele
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
13
4-Conclusion
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1 n un(e) ou plusieurs
0 n zeacutero ou plusieurs
5-Exemple
6-Repreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave plusieurs
voitures
14
Une personne a une adresse ou est sans domicile A une adresse il y a une ou plusieurs
personne qui y habitent
C-Les cardinaliteacutes et les diffeacuterents types dassociations
I-MCDCardinaliteacutes
Sommaire
1 Deacutefinition et formalisme
2 La cardinaliteacute minimale
o 21 Exemple
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple
4 Reacutecapitulatif
o 41 Exemples complets
1-Deacutefinition et formalisme
Les cardinaliteacutes sont des couples de valeur que lon trouve entre chaque entiteacute et ses
associations lieacutees
Donc pour une association de 2 entiteacutes il y a 4 cardinaliteacutes agrave indiquer (2 de chaque cocircteacute)
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Pour les associations agrave 2 entiteacutes ce sont des valeurs qui permettent drsquoindiquer combien de fois
au minimum et au maximum une occurrence dentiteacute peut ecirctre lieacutee agrave une autre occurrence
dentiteacute
De maniegravere plus geacuteneacuterale les cardinaliteacutes drsquoune entiteacute dans une association expriment le
nombre de fois qursquoune occurrence de cette entiteacute peut ecirctre impliqueacutee dans une
occurrence de lassociation au minimum et au maximum
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propres agrave lorganisation
eacutetudieacutee qui sont deacutecideacutees par les gestionnaires et deacutecideurs Ces regravegles expriment des
contraintes sur le modegravele
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
14
Une personne a une adresse ou est sans domicile A une adresse il y a une ou plusieurs
personne qui y habitent
C-Les cardinaliteacutes et les diffeacuterents types dassociations
I-MCDCardinaliteacutes
Sommaire
1 Deacutefinition et formalisme
2 La cardinaliteacute minimale
o 21 Exemple
o 22 Application
3 La cardinaliteacute maximale
o 31 Exemple
4 Reacutecapitulatif
o 41 Exemples complets
1-Deacutefinition et formalisme
Les cardinaliteacutes sont des couples de valeur que lon trouve entre chaque entiteacute et ses
associations lieacutees
Donc pour une association de 2 entiteacutes il y a 4 cardinaliteacutes agrave indiquer (2 de chaque cocircteacute)
Il y a trois valeurs typiques 0 1 et N (plusieurs)
Pour les associations agrave 2 entiteacutes ce sont des valeurs qui permettent drsquoindiquer combien de fois
au minimum et au maximum une occurrence dentiteacute peut ecirctre lieacutee agrave une autre occurrence
dentiteacute
De maniegravere plus geacuteneacuterale les cardinaliteacutes drsquoune entiteacute dans une association expriment le
nombre de fois qursquoune occurrence de cette entiteacute peut ecirctre impliqueacutee dans une
occurrence de lassociation au minimum et au maximum
Les cardinaliteacutes traduisent des regravegles de gestion Ce sont des regravegles propres agrave lorganisation
eacutetudieacutee qui sont deacutecideacutees par les gestionnaires et deacutecideurs Ces regravegles expriment des
contraintes sur le modegravele
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
15
2-La cardinaliteacute minimale
Elle est exprimeacutee presque toujours par lrsquoune des deux valeurs 0 ou 1
Elle traduit combien de fois au minimum une occurrence de lrsquoentiteacute participe agrave lrsquoassociation
autrement dit si une occurrence est obligatoirement associeacutee agrave une autre ou pas
21-Exemple
Pour la cardinaliteacute minimale entre client et commander il faut se poser la question
Pour un client donneacute combien de fois au minimum il commande
ou encore mieux
Est-il obligatoire quun client effectue une commande de produit
Cela deacutepend des REGLES DE GESTION de lentreprise
Si la regravegle de gestion est laquo tout client doit passer au moins une commande sinon ce nrsquoest pas
un client raquo on met la cardinaliteacute mini agrave 1
Mais on peut tregraves bien imaginer que lrsquoentreprise veut aussi meacutemoriser les clients potentiels
(prospects) qui nrsquoont encore rien commandeacute Dans ce cas un client peut tregraves bien ne pas
avoir encore commandeacute et on met la cardinaliteacute mini agrave 0
En fait les cardinaliteacutes deacutependent des regravegles de gestion propres agrave lrsquoorganisation eacutetudieacutee La
regravegle peut tregraves bien ecirctre laquo On ne meacutemorise que les clients qui ont deacutejagrave commandeacute raquo ou bien
laquo On veut meacutemoriser les prospects raquo
22-Application
Trouver la question qui permet de trouver la cardinaliteacute minimale pour lrsquoentiteacute produit
et lrsquoassociation commander
Reacuteponse Est-il obligatoire quun produit ait eacuteteacute commandeacute pour quil soit meacutemoriseacute
dans la base de donneacutee ou bien Peut-il exister dans la base de donneacutee des produits qui
nont jamais eacuteteacute commandeacutes
Faites deux hypothegraveses de regravegle de gestion concernant ce lien et trouver les
cardinaliteacutes minimales correspondantes
Reacuteponse
H1 lentreprise peut proposer de nouveaux produits sur catalogue par exemple
quelle meacutemorise dans sa base de donneacutees mais qui nont jamais encore eacuteteacute
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
16
commandeacutes =gt cardinaliteacute minimale agrave 0 (cest plutocirct le cas pour les entreprises de
vente)
H2 tout produit inscrit dans la base de donneacutee est forceacutement commandeacute (par exemple
parce que lentreprise ne propose pas de catalogue mais fabrique seulement agrave la
commande) =gt cardinaliteacute minimale agrave 1 (cest plutocirct le cas pour les entreprises de
production)
3-La cardinaliteacute maximale
Elle traduit combien de fois au maximum une occurrence dentiteacute peut ecirctre en relation avec
une occurrence de lassociation Cela peut ecirctre plusieurs fois (si crsquoest un nombre indeacutetermineacute
on indique la valeur n) ou une seule fois
Cette cardinaliteacute reacutepond agrave la question
la participation dune occurrence doit-elle ecirctre unique ou bien peut-elle ecirctre multiple
ou bien
combien de fois au maximum une occurrence est elle impliqueacutee dans lassociation
Si lassociation est binaire (relie seulement deux entiteacute) la question peut ecirctre aussi
Une occurrence de lentiteacute peut-elle ecirctre relieacutee agrave plusieurs occurrences de lautre entiteacute
ou bien ne peut-elle ecirctre relieacutee quagrave une seule autre occurrence au plus
Si la reacuteponse est laquo au plus une fois raquo (participation unique) la cardinaliteacute maximale
prend pour valeur 1
Si la reacuteponse est laquo plusieurs raquo (participation multiple) la cardinaliteacute maximale prend
la valeur N
31-Exemple
RG (regravegles de gestion)
1 Un salarieacute est affecteacute au plus agrave un seul service
2 Dans un service sont affecteacutes plusieurs salarieacutes
Il arrive (mais crsquoest rare) qursquoune cardinaliteacute maximale ait une valeur limiteacutee
Exemple
RG Un eacutelegraveve peut suivre au maximum 3 options
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
17
4-Reacutecapitulatif
En fait dans la grande majoriteacute des cas on nrsquoutilise que 4 combinaisons de valeurs pour les
cardinaliteacutes
01 au plus un(e)
11 un(e) et un(e) seul(e)
1n un(e) ou plusieurs
0 n zeacutero ou plusieurs
41-Exemples complets
RG un client commande au moins 1 produit (sous entendu ou plusieurs) et un produit peut ne
pas encore avoir eacuteteacute commandeacute comme il peut lavoir eacuteteacute plusieurs fois
RG Un salarieacute est obligatoirement affecteacute agrave 1 et 1 seul service Un service pour exister doit
avoir au moins un salarieacute affecteacute (sous-entendu il peut bien sur en avoir plusieurs)
II-MCDAssociations
Sommaire
1 Les associations binaires concernant 2 entiteacutes
11 Les associations hieacuterarchiques [1n]
12 Les associations non hieacuterarchiques [n n]
13 Les associations de type [1 1]
2 Les autres types dassociation
21 Les associations reacuteflexives
211 Exemple dassociation reacuteflexive hieacuterarchique
212 Exemples dassociations reacuteflexives non hieacuterarchiques
22 Les associations de dimension 3 ou plus (ternaires ou plus)
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
18
1-Les associations binaires concernant 2 entiteacutes
On distingue trois cateacutegories dassociations en fonction des cardinaliteacutes maximales de ses
branches
-Les associations hieacuterarchiques encore appeleacutees associations [1 n] ou associations
fonctionnelles
-Les associations non hieacuterarchiques encore appeleacutees associations [n n] ou non
fonctionnelles
-Les association [1 1] les 2 branches ont pour cardinaliteacute maximale 1 Ce cas est rare
11-Les associations hieacuterarchiques [1 n]
Ce sont les associations ougrave dun cocircteacute la |cardinaliteacute maximale est agrave 1 et de lautre cocircteacute la
cardinaliteacute maximale est agrave n
Cela signifie quune occurrence de A est relieacutee au plus agrave une seule occurrence de B Cest-agrave-
dire si on connaicirct une occurrence de A alors on saura forceacutement quelle est la seule occurrence
de B qui correspond (si elle existe) On dit que A deacutetermine B Cest un lien de deacutependance
fonctionnelle B deacutepend fonctionnellement de A
Lentiteacute qui correspond agrave la branche du cocircteacute du 1 est parfois appeleacutee entiteacute fils et lentiteacute
correspondant agrave la branche du cocircteacute n est parfois appeleacutee entiteacute pegravere Cette appellation deacutecoule
de lanalogie un fils na quun seul pegravere et un pegravere peut avoir plusieurs fils
12-Les associations non hieacuterarchiques [n n]
13-Les associations de type [1 1]
Cas exceptionnel
Ex un employeacute travaille sur un ordinateur (p 99 de Modeacuteliser les donneacutees)
La facture correspondant agrave une commande
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
19
2-Les autres types dassociation
Le plus souvent une association relie 2 entiteacutes avec 2 branches Ce type dassociation est
appeleacute association binaire Nous avons deacutejagrave eacutetudieacute en deacutetail les diffeacuterents types dassociations
binaires
Mais une association peut aussi relier 3 ou tregraves rarement 4 entiteacutes (quasiment jamais plus) On
parle dassociation ternaire quaternaire (n-aire)
Enfin une association peut aussi relier une entiteacute agrave elle-mecircme cest-agrave-dire que des
occurrences de la mecircme entiteacute sont relieacutees entre elles Lassociation correspondante est
qualifieacutee de reacuteflexive
Ce sont ces autres types dassociation que nous allons eacutetudier maintenant
21-Les associations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique et des
associations reacuteflexives non hieacuterarchique
211-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Exemples doccurrences diagramme doccurrences
Remarquez limportance du rocircle dans le diagramme doccurrence
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
20
212--Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Personnes fregraveres = reacuteflexive symeacutetrique (rocircle pas indispensable car a pour fregravere = ecirctre fregravere
de)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute
Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
22-Les associations de dimension 3 ou plus (ternaires ou plus)
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle alors
dassociation ternaire On utilise une association ternaire quand on a besoin de connaicirctre une
occurrence de chaque entiteacute pour avoir une information
Exemple
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une
date donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La
quantiteacute est une donneacutee porteacutee par cette association
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
21
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
III-MCDRepreacutesentation des cardinaliteacutes
Une voiture est posseacutedeacutee par une seule personne Une personne peut posseacuteder de 0 agrave
plusieurs voitures
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
22
Une personne a une adresse ou est sans domicile A une adresse il y a une ou
plusieurs personnes qui y habitent
IV-MCDAssociation ternaire
Une association peut relier plus de 2 entiteacutes ensemble le plus souvent trois On parle
alors dassociation ternaire (dimension 3) On utilise une association ternaire quand on
a besoin de connaicirctre une occurrence de chaque entiteacute pour avoir une information
Ex
Pour connaicirctre la quantiteacute de chacune des piegraveces fabriqueacutee par chaque ouvrier agrave une date
donneacutee on utilise une association ternaire entre OUVRIER PIECE et DATE La quantiteacute est
une donneacutee porteacutee par cette association
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
23
Une occurrence de lassociation fabrique implique une seule occurrence de chaque entiteacute
Exemple
Ouvrier Piegravece Date quantiteacute
Dupont 1 1702 50
Dubois 2 1702 100
Martin 1 1702 40
Dupont 3 1702 55
Dubois 3 1702 20
Dupont 1 1602 40
Martin 1 1602 40
Lassociation ternaire implique aussi que
1 Pour un ouvrier on peut avoir plusieurs piegraveces diffeacuterentes agrave la mecircme date (il peut
fabriquer plusieurs types de piegraveces le mecircme jour)
2 Une piegravece peut ecirctre fabriqueacutee par plusieurs ouvriers diffeacuterents le mecircme jour
3 A des dates diffeacuterentes un mecircme ouvrier peut fabriquer les mecircmes piegraveces
Lidentifiant dune association ternaire est formeacutee de la concateacutenation (juxtaposition)
des identifiants des 3 entiteacutes relieacutees
Dans notre exemple on ne peut donc pas avoir plusieurs occurrences de fabrique qui
concernent Dupont la piegravece ndeg1 agrave la date du 1702
V-MCDAssociations reacuteflexives
Une association reacuteflexive est une association reliant des occurrences de la mecircme entiteacute
Ces associations sont quasiment toujours binaire (2 branches)
Pour lire une association reacuteflexive il est faut connaicirctre le rocircle attribueacute agrave chaque branche de
lassociation cest agrave dire le rocircle de chaque occurrence dans le lien
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
24
Il existe comme pour les autres associations des associations reacuteflexives hieacuterarchique (une des
cardinaliteacutes maximales agrave 1) et des association reacuteflexives non hieacuterarchique (les deux
cardinaliteacutes maximales agrave n)
1-Exemple dassociation reacuteflexive hieacuterarchique
Dans une entreprise bureaucratique chaque salarieacute a un seul chef (supeacuterieur hieacuterarchique
direct) sauf le patron et chaque chef a au moins un salarieacute sous ses ordres Evidemment
certains salarieacutes ne sont chefs de personnes
Un mecircme salarieacute peut agrave la fois ecirctre chef et avoir un chef
Tutu peut ecirctre chef de titi et de toto et dautres salarieacutes mais il na quun seul chef au
maximum
toto peut ecirctre le chef de coco et avoir pour chef tutu
2-Exemples dassociations reacuteflexives non hieacuterarchiques
Piegraveces composants composeacute = reacuteflexive asymeacutetrique
Une piegravece peut entrer dans la composition de plusieurs autres piegraveces (ex un boulon) Une
piegravece peut aussi ecirctre composeacutee de plusieurs autres piegraveces (ex un moteur) Une mecircme piegravece
peut ecirctre composeacutee dautres piegraveces et entrer dans la composition dune ou plusieurs autres
piegraveces (ex une carte reacuteseau)
Preacutecision de vocabulaire dimension dune association
La dimension dune association correspond au nombre de branches de lassociation Dans plus
de 80 des cas les associations sont binaires
Dimension 2 binaire
Dimension 3 ternaire (rare)
Dimension supeacuterieure n-aire (exceptionnel)
Lorsquil ny a pas de reacuteflexiviteacute le nombre de branches est eacutegal au nombre dentiteacutes relieacutees
La dimension est dans ce cas le nombre dentiteacutes concerneacutees par lassociation
Mais la reacuteflexiviteacute existe et donc on peut avoir plusieurs branches de la mecircme association sur
la mecircme entiteacute Dans ce cas alors la dimension est supeacuterieure au nombre dentiteacutes concerneacutees
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
25
Dimension = nombre dentiteacute lieacutees
Une association reacuteflexive (1 entiteacute) est quasiment toujours binaire (2 branches)
On pourrait aussi avoir une association ternaire impliquant seulement deux entiteacutes
D-Passage MCD lt=gt modegravele relationnel
I-MRRappel sur le modegravele relationnel
Cest un modegravele LOGIQUE de donneacutee celui qui correspond agrave lorganisation des donneacutees dans
les bases de donneacutees relationnelles (il existe dautres organisations de bases de donneacutees
hieacuterarchique reacuteseau objethellip)
Les SGBD actuels les plus courants sont relationnels (Oracle SQL Server Access MySQL
hellip )
Un modegravele relationnel est composeacute de relations encore appeleacutee tables Ces tables sont
deacutecrites par des attributs ou champs (noms de colonnes) Pour deacutecrire une relation on
indique tout simplement son nom en majuscule suivi du nom de ses attributs entre
parenthegraveses
Lidentifiant dune relation est composeacute dun ou plusieurs attributs qui forment la cleacute primaire
Une relation peut faire reacutefeacuterence agrave une autre en utilisant une cleacute eacutetrangegravere qui correspond agrave
la cleacute primaire de la relation reacutefeacuterenceacutee
Il ny a pas de notation officielle pour repeacuterer les cleacutes primaires et eacutetrangegraveres Cest agrave vous
den adopter une et de lexpliquer en leacutegende Toutefois une notation sest peu agrave peu
reacutepandue
on souligne la cleacute primaire dun seul trait
on fait preacuteceacuteder (ou suivre) les cleacutes eacutetrangegraveres du symbole
Chaque ligne (tuple ou enregistrement) dune table repreacutesente une occurrence de lentiteacute ou
de lassociation correspondante
II-MRPassage du MCD au MR
Sommaire
1 Regravegle 1
2 Regravegle 2
3 Exception agrave la regravegle 1
4 Cas particulier des associations reacuteflexives
o 41 Reacuteflexive hieacuterarchique
o 42 Reacuteflexive non hieacuterarchique
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
26
1-Regravegle 1
Toute entiteacute devient une relation ayant pour cleacute primaire son identifiant
Chaque proprieacuteteacute se transforme en attribut CLIENT (code_client nom
preacutenom adresse code_postal ville teacuteleacutephone)
Remarque contrairement aux proprieacuteteacutes les attributs ne doivent pas comporter despaces
2-Regravegle 2
Toute association non hieacuterarchique (de type [n n] ou de dimension gt 2) devient une
relation La cleacute primaire est formeacutee par la concateacutenation (juxtaposition) lensemble des
identifiants des entiteacutes relieacutees Toutes les proprieacuteteacutes eacuteventuelles deviennent des attributs qui
ne peuvent pas faire partie de la cleacute
CONCERNER (numeacutero_commande reacutefeacuterence_article quantiteacute)
Cette regravegle est valable pour toutes les associations ternaires (ou quaternaires) qui sont
forceacutement non hieacuterarchiques (|cardinaliteacutes maximales toutes eacutegales agrave n)
3-Exception agrave la regravegle 1
Les entiteacutes nayant que leur identifiant comme attribut ne deviennent pas des relations mais
des attributs dans les autres relations lieacutees
Avec ce modegravele on meacutemorise chaque jour pour chaque ouvrier les piegraveces quil a fabriqueacute et
en quelle quantiteacute Quand on passe au modegravele relationnel lentiteacute DATE FABRICATION ne
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
27
devient pas une relation mais un attribut cleacute dans la relation FABRIQUE issue de
lassociation
FABRIQUE (code_ouvrier reacutefeacuterence_piegravece date quantiteacute) Date ici fait partie de la cleacute
primaire mais nest pas cleacute eacutetrangegravere
4-Cas particulier des associations reacuteflexives
Les associations reacuteflexives suivent les regravegles 2 ou 3 selon les |cardinaliteacutes mais posent un
problegraveme particulier une mecircme proprieacuteteacute va se retrouver deux fois en attribut dans la mecircme
relation Il faut alors donner un nom diffeacuterent et significatif aux deux attributs correspondants
Dans les reacuteflexives il est conseilleacute de nommer les branches par des rocircles pour pouvoir lire
dans le bon sens lassociation Les rocircles aident agrave nommer les attributs correspondant agrave
lassociation
41-Reacuteflexive hieacuterarchique
(Une branche agrave la cardinaliteacute maxi agrave 1 et lautre agrave n)
Regravegle ndeg 2
Lecture de lassociation
Regravegle ndeg1 lidentifiant de SALARIE va devenir cleacute primaire et les autres proprieacuteteacutes des
attributs
Regravegle ndeg2 pour traduire lassociation [1 n] encadrer lidentifiant de lentiteacute SALARIE
devient cleacute eacutetrangegravere
lidentifiant de SALARIE matricule se retrouve deux fois dans la relation comme cleacute
primaire et comme cleacute eacutetrangegravere
On va donc donner un nom diffeacuterent et significatif agrave ces deux matricules par exemple Un
salarieacute a pour chef 0 ou un seul autre salarieacute Un salarieacute est chef de 0 agrave n autre(s) salarieacute
Traduction en modegravele relationnel
SALARIE (matricule nom preacutenom fonctionhellip matricule_chef)
42-Reacuteflexive non hieacuterarchique
Regravegle ndeg3
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
28
Lecture de lassociation
Une piegravece entre dans la composition de 0 agrave plusieurs autres piegraveces Une piegravece peut ecirctre
composeacutee de plusieurs autres piegraveces Une piegravece entre dans la composition dune autre un
certain nombre de fois
Ex La piegravece voiture est composeacutee de 4 piegraveces roue La piegravece roue est elle-
mecircme composeacutee dune piegravece pneu et dune piegravece jante
Une piegravece entrant dans la composition dune autre est appeleacutee composant Une piegravece
composeacutee dautres piegraveces est appeleacutee composeacute Une roue est agrave la fois un composant (de
voiture) et un composeacute (de pneu et jante)
Traduction en modegravele relationnel
PIECE (reacutefeacuterence libelleacute)
COMPOSITION(reacutefeacuterence_composeacute reacutefeacuterence_composant nombre)
E-Normalisation du modegravele relationnel
I-Deacutependance fonctionnelle
Sommaire
1 Introduction
2 Rappels sur la notion de deacutependance fonctionnelle
21 Deacutefinition
22 Terminologie
23 DF agrave partir de proprieacuteteacutes concateacuteneacutees
24 Proprieacuteteacutes des deacutependances fonctionnelles
241 Union
242 Transitiviteacute
1-Introduction
Lobjectif de la normalisation est de construire un scheacutema de base de donneacutees coheacuterent
Un mauvais scheacutema logique peut conduire agrave un certain nombre danomalies pendant la phase
dexploitation de la base de donneacutee Nous allons voir ces anomalies dans une premiegravere partie
Pour qursquoun modegravele relationnel soit normaliseacute il faut qursquoil respecte certaines contraintes
appeleacutees les formes normales Les formes normales srsquoappuient sur les deacutependances
fonctionnelles entre attributs
2-Rappels sur la notion de deacutependance fonctionnelle
La construction du MCD mais eacutegalement du modegravele relationnel correspondant repose
presque entiegraverement sur le concept de deacutependance fonctionnelle Crsquoest ce concept qui permet
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
29
de passer drsquoun ensemble de proprieacuteteacutes non structureacute agrave un modegravele conceptuel des donneacutees
formeacute drsquoentiteacutes et drsquoassociations et au modegravele relationnel correspondant
21-Deacutefinition
On dit que b est en deacutependance fonctionnelle (DF) de a si agrave une valeur quelconque de la
proprieacuteteacute a on ne peut faire correspondre qursquoune seule valeur au plus de la proprieacuteteacute b
On note a b
(Source)-gt (but)
Autrement dit si on connaicirct la valeur de a on peut en deacuteduire une seule valeur de b
Mais la reacuteciproque nrsquoest pas vrai (si on connaicirct b on ne peut pas en deacuteduire a)
Exemple
Num client Nom client
Il existe une DF entre num client et Nom client car si on connaicirct une valeur de la proprieacuteteacute
num client (ex 4553) il ne peut lui correspondre qursquoune seule valeur de la proprieacuteteacute nom
(ex Duval)
La reacuteciproque est fausse
Nom client Num client nrsquoest pas une DF
Si lrsquoon connaicirct la valeur de la proprieacuteteacute Nom client on ne peut pas en deacuteduire la proprieacuteteacute
Num client car il peut y avoir des homonymes
22-Terminologie
Si on a une deacutependance fonctionnelle a b on peut employer les expressions suivantes
de faccedilon eacutequivalente
-Il y a une deacutependance fonctionnelle de a vers b
- b est en deacutependance fonctionnelle de a
- b deacutepend fonctionnellement de a
- a est la source et b est le but (ou la cible) de la deacutependance fonctionnelle
23-DF agrave partir de proprieacuteteacutes concateacuteneacutees
(Partie gauche composeacutee de plusieurs attributs)
Il peut exister des deacutependances fonctionnelles agrave partir de proprieacuteteacutes concateacuteneacutees cest-agrave-dire
qui forment un tout indissociable comme si elles eacutetaient soudeacutees
On note par un + cette concateacutenation
Exemple Consideacuterons une commande qui comporte plusieurs produits Num_Commande +
Ref_Produit quantiteacute commandeacutee
Si on nrsquoa seulement le numeacutero de la commande on ne peut pas en deacuteduire la quantiteacute
commandeacutee car il faut aussi savoir de quel produit De mecircme on ne peut pas savoir la
quantiteacute commandeacutee drsquoun produit si on ne sait pas de quelle commande Il faut bien connaicirctre
agrave la fois la commande et le produit (leurs identifiants respectifs) pour en deacuteduire la quantiteacute
commandeacutee
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
30
Les deacutependances fonctionnelles dont la source est formeacutee de plusieurs proprieacuteteacutes doivent ecirctre
eacuteleacutementaires cest-agrave-dire ne pas ecirctre creacuteeacutees artificiellement
Ex Num Commande + Num Client date commande
nrsquoest pas une DF eacuteleacutementaire car on nrsquoa pas besoin du numeacutero de client pour connaicirctre la date
de commande il suffit de connaicirctre le numeacutero de la commande La proprieacuteteacute Num Client ne
24-Proprieacuteteacutes des deacutependances fonctionnelles
Les deacutependances fonctionnelles ont les proprieacuteteacutes suivantes
241-Union
Si on a deux DF ayant la mecircme source on peut les rassembler en une seule en seacuteparant les
cibles par une virgule Si a b et a c
Ex Reacutefeacuterence Deacutesignation et Reacutefeacuterence Prix de vente unitaire
Alors par union on a Reacutefeacuterence Deacutesignation Prix de vente unitaire
Lors du traceacute du graphe des deacutependances fonctionnelles lrsquounion permet de regrouper sur une
seule ligne toutes les deacutependances fonctionnelles ayant la mecircme source
242-Transitiviteacute
Si a b et b c alors on a a c
Ex Num Meacutedecin Code Service et Code Service Num Hopital
Alors on a Num Meacutedecin Num Hopital
Les DF qui peuvent ecirctre deacuteduites par transitiviteacute de deux autres DF (qui ne sont pas directes)
doivent ecirctre eacutelimineacutees car elles sont alors redondantes
Il ne reste alors que les DF directes cest-agrave-dire celles qui ne peuvent pas ecirctre retrouveacutees par
transitiviteacute
Attention toutefois agrave la signification des deacutependances Une deacutependance fonctionnelle
quon peut retrouver par transitiviteacute ne doit pas ecirctre supprimeacutee si elle na pas le mecircme sens que
la transitiviteacute des deux autres car il y aurait perte dinformation
II-MRInteacuterecirct de la normalisation
Exemple
Pour vous montrer lrsquointeacuterecirct de la normalisation drsquoune base de donneacutee relationnelle voyons les
problegravemes que peuvent poser lrsquoutilisation drsquoune base de donneacutee baseacutee sur un modegravele
relationnel non normaliseacute
Soit le scheacutema de relation
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
31
FOURNISSEUR (NomFournisseur AdresseFournisseur Produits
Prix)
Modegravele en extension
NomFournisseur AdresseFournisseur Produit Prix
Lebras 10 Rue des Gras - Clermont Chaise
table
20
35
Dupont 86 Rue de la Reacutepublique - Moulins Bureau 60
Lajoie 26 Rue des Docircmes - Vichy Lit 50
Dupont 39 Rue des Buttes - Moulins Lampe
Table de chevet
18
25
1degproblegraveme
Il nrsquoy a pas de cleacute primaire on ne sait pas si les deux Dupont sont diffeacuterents ou pas (si crsquoest
le mecircme Dupont il y a une des deux adresses qui est fausse
2degproblegraveme
Lrsquoadresse nrsquoest pas deacutecomposeacutee Si on veut par exemple rechercher tous les fournisseurs qui
habitent la mecircme ville ccedila ne va pas ecirctre possible
3degproblegraveme
Une relation (table) correspondant agrave ce scheacutema pourra eacuteventuellement contenir plusieurs
produits pour un mecircme fournisseur
Dans ce cas il faudra faire face agrave un certain nombre de problegravemes
ladresse du fournisseur sera dupliqueacutee dans chaque n-uplet (redondance)
si on souhaite modifier ladresse dun fournisseur il faudra rechercher et mettre agrave jour
tous les n-uplets correspondant agrave ce fournisseur
si on insegravere un nouveau produit pour un fournisseur deacutejagrave reacutefeacuterenceacute il faudra veacuterifier
que ladresse est identique
si on veut supprimer un fournisseur il faudra retrouver et supprimer tous les n-uplets
correspondant agrave ce fournisseur (pour diffeacuterents produits) dans la table
La normalisation eacutelimine les redondances ce qui permet
- une diminution de la taille de la base de donneacutee sur le disque
- une diminution des risques drsquoincoheacuterence
- drsquoeacuteviter une mise agrave jour multiple des mecircmes donneacutees
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
32
III-MR 3 formes normales
Les 3 formes normales du modegravele relationnel
Sommaire
1 1er forme normale
2 2egraveme forme normale
3 3egraveme forme normale
4 Application des regravegles
5 Reacutesumeacute
1-1er forme normale
Une relation est normaliseacutee en premiegravere forme normale si
-Elle possegravede une cleacute identifiant de maniegravere unique et stable chaque ligne
-Chaque attribut est monovalueacute (ne peut avoir qursquoune seule valeur par ligne)
-Aucun attribut nrsquoest deacutecomposable en plusieurs attributs significatifs
Contre-exemple
EMPLOYE ( Nom Preacutenom Enfants Diplocircmes)
Cette relation nrsquoest pas en premiegravere forme normale
Un employeacute peut avoir plusieurs enfants et plusieurs diplocircmes En outre ces attributs sont
deacutecomposables diplocircme est deacutecomposable en Nature et Anneacutee et Enfants est deacutecomposable
en Preacutenom et Anneacutee de Naissance
2-2egraveme forme normale
Une relation R est en deuxiegraveme forme normale si et seulement si
-Elle est en 1FN
-Et tout attribut non cleacute est totalement deacutependant de toute la cleacute
Autrement dit aucun des attributs ne deacutepend que drsquoune partie de la cleacute
La 2FN nest agrave veacuterifier que pour les relations ayant une cleacute composeacutee Une relation en 1FN
nayant quun seul attribut cleacute est toujours en 2FN
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
33
Contre-exemple
Cette relation est en premiegravere forme normale (existence drsquoune cleacute valide et aucun attribut
nrsquoest deacutecomposable)
MAIS elle nrsquoest pas en 2deg forme normale car on a DeacutesignationProd ne deacutepend pas de toute la
cleacute mais seulement de reacutefeacuterenceProd
ReacutefeacuterenceProd DeacutesignationProd
Pour connaicirctre lrsquoattribut deacutesignationProd on nrsquoa pas besoin de connaicirctre le numeacutero de
commande
3-3egraveme forme normale
Une relation est en 3deg forme normale si et seulement si
Elle est en 2deg forme normale et tout attribut doit deacutependre directement de la cleacute cest-dire
qursquoaucun attribut ne doit deacutependre de la cleacute par transitiviteacute
Autrement dit aucun attribut ne doit deacutependre drsquoun autre attribut non cleacute
Contre-exemple
CLIENT (Num_client Nom_client code_categ nom_categ) Cette relation nrsquoest pas en 3FN
car num_client nom_categ nrsquoest pas une deacutependance directe
En effet on a aussi num_client num_categ nom_categ
4-Application des regravegles
Si lrsquoune des 3 regravegles nrsquoest pas veacuterifieacutee cela indique une erreur dans le modegravele relationnel et il
faut alors modifier pour que les 3 regravegles soient veacuterifieacutees pour toutes les relations
On veacuterifie les regravegles dans lrsquoordre Si la premiegravere forme normale nrsquoest pas respecteacutee pas la
peine de veacuterifier la 2FN Et si la 2FN nrsquoest pas veacuterifieacutee inutile de veacuterifier la 3FN
5-Reacutesumeacute
Modegravele normaliseacute = relations avec
-Une cleacute qui permet de distinguer chaque occurrence
-Des attributs eacuteleacutementaires (1FN)
-En deacutependance de TOUTE la cleacute (2FN)
-Et RIEN QUE de la cleacute (3FN)
On parle aussi de normalisation pour un MCD Un MCD qui donne un MR normaliseacute est
qualifieacute aussi de normaliseacute
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
34
F-MeriseLes diagrammes de flux
Les diagrammes de flux reacutepondent agrave la question Que fait le systegraveme
En ce sens ce sont des modegraveles FONCTIONNELS (qui deacutecrivent les fonctions)
Il existe2 types principaux de diagrammes de flux
1 Le modegravele de contexte (MC) ougrave le domaine drsquoeacutetude est vu comme une boite noire On
ne repreacutesente que les flux exteacuterieurs au domaine
2 Le modegravele de flux de donneacutees (DFD) ou encore modegravele de flux conceptuels (MFC) ougrave
lrsquoon deacutetaille les activiteacutes du domaine drsquoeacutetude On repreacutesente aussi les flux internes au
domaine
I-MeriseVocabulaire associeacute aux modegraveles de flux
Sommaire
1 Domaine deacutetude
2 Acteur externe
3 Domaine connexe
4 Flux de donneacutees
1-Domaine deacutetude
Le domaine deacutetude est un sous-ensemble coheacuterent de lentreprise ou de lorganisme bien
deacutelimiteacute et formant le contenu du sujet agrave eacutetudier
Dans les modegraveles de flux le domaine deacutetude est repreacutesenteacute par un
rectangle agrave trait plein Le nom du domaine est placeacute agrave lrsquointeacuterieur du rectangle
2-Acteur externe
Un acteur externe est un eacuteleacutement eacutemetteur ou reacutecepteur de donneacutees situeacute hors du
systegraveme dinformation eacutetudieacute
Dans les modegraveles de flux un acteur externe est repreacutesenteacute par un cercle plein Le nom de
lrsquoacteur est placeacute agrave lrsquointeacuterieur du cercle
3-Domaine connexe
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
35
Un domaine connexe est un composant du systegraveme drsquoinformation interagissant avec le
domaine drsquoeacutetude Crsquoest un acteur interne agrave lrsquoentreprise mais externe au domaine drsquoeacutetude
Dans les modegraveles de flux une activiteacute est repreacutesenteacutee
graphiquement par un rectangle Le nom de lactiviteacute est placeacute agrave lrsquointeacuterieur du rectangle
4-Flux de donneacutees
Un flux est un transfert drsquoinformations entre composants du systegraveme Le composant
peut ecirctre un domaine une activiteacute ou un acteur externe
Dans les modegraveles de flux un flux de donneacutees est repreacutesenteacute
graphiquement par une flegraveche orienteacutee du composant eacutemetteur du flux vers le composant
reacutecepteur Le libelleacute du flux est inscrit en regard de la flegraveche traceacutee
Formalisme graphique illustrant par exemple un eacutechange entre un acteur externe et le
domaine deacutetude
II-MeriseModegravele de contexte
Le modegravele de contexte sert agrave repreacutesenter les interactions entre le domaine deacutetude et
lrsquoenvironnement et entre le domaine deacutetude et les eacuteventuels domaines connexes
Le domaine deacutetude y est repreacutesenteacute comme une boicircte noire
Le modegravele de contexte utilise les concepts suivants
le domaine deacutetude
les acteurs externes
les flux de donneacutees
les domaines connexes
Exemple de modegravele de contexte au sein drsquoune socieacuteteacute commerciale on eacutetudie le domaine laquo gestion des ventes raquo
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
36
Remarque
on ne fait pas apparaicirctre les flux entre acteurs externes et domaines connexes ou entre
les domaines connexes
Exemple le flux correspondant agrave la livraison de marchandises nrsquoapparaicirct pas
II-MeriseMFC ou DFD
Sommaire
1 Modegravele de flux conceptuel(MFC) ou diagramme de flux de donneacutees(DFD)
o 11 Deacutefinition
o 12 Exemple
o 13 Regravegles de deacutecomposition des activiteacutes
1-Modegravele de flux conceptuel (MFC) ou diagramme de flux de donneacutees (DFD)
11-Deacutefinition
Ce modegravele permet de deacutecider quelles activiteacutes inter-relieacutees de quelle maniegravere permettront de
reacutesoudre au mieux le problegraveme poseacute et cette reacuteflexion est meneacutee sans sencombrer dans un
premier temps du comportement du systegraveme (ordonnancement regravegles deacutemission
synchronisationshellip)
Les modegraveles de flux conceptuels permettent de deacutecomposer le domaine drsquoeacutetude en activiteacutes Il
nrsquoy a pas ici de notion drsquoorganisation mais drsquoobjectifs agrave reacutealiser On repreacutesente les flu x
entre activiteacutes et avec lrsquoenvironnement
Pour analyser les communications et les activiteacutes on procegravede par laquo zooms raquo successifs sur le
domaine eacutetudieacute pour eacutelaborer des modegraveles de plus en plus deacutetailleacutes qui permettront davoir
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
37
une cartographie deacutetailleacutee du systegraveme et de preacuteparer le passage au modegravele conceptuel de
repreacutesentation des traitements
Le modegravele de contexte est eacutegalement appeleacute le diagramme de flux de donneacutees de niveau 0
Nous obtenons ensuite des diagrammes de premier deuxiegraveme troisiegraveme hellip niveau par
eacuteclatements successifs des activiteacutes agrave chacun de ces niveaux
La deacutecomposition drsquoun domaine ou drsquoune activiteacute en plusieurs activiteacutes peut faire apparaicirctre
de nouveaux flux dus
1 agrave lrsquoeacutechange drsquoinformations entre activiteacutes
2 agrave la deacutecomposition drsquoun flux preacutesent au niveau n en plusieurs flux au niveau n+1
12-Exemple
Si on reprend le modegravele de contexte preacuteceacutedent on srsquoaperccediloit que le domaine des ventes peut-
ecirctre eacuteclateacute en trois activiteacutes Nous obtenons ainsi le diagramme de flux de donneacutees de niveau
1
Remarque
On peut deacutecomposer le modegravele de flux de niveau 1 en un modegravele de flux de niveau 2
et etc hellip jusqursquoagrave arriver agrave un modegravele ougrave lrsquoactiviteacute correspond agrave une opeacuteration au sens
Merise (regravegle drsquoininterruption)
Exemple lrsquoactiviteacute laquo gestion des factures raquo peut ecirctre encore deacutecomposeacutee en activiteacutes
laquo facturation raquo et laquo Suivi des regraveglements raquo
13-Regravegles de deacutecomposition des activiteacutes
Pourquoi deacutecomposer
1 Pour deacutesagreacuteger les groupes de flux pour arriver agrave la deacutefinition des flux-types du
domaine eacutetudieacute
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
38
2 Pour preacuteparer leacutetude dynamique du systegraveme dinformation pour arriver agrave
lrsquoidentification des processus et des opeacuterations conceptuelles
Comment deacutecomposer
1 Identifier les groupes de donneacutees entrant et sortant du domaine drsquoeacutetude pour construire
le modegravele de contexte
2 Identifier les activiteacutes geacuteneacuterant ou traitant les flux de donneacutees pour construire le DFD
de niveau 1(approche par les donneacutees) ou identifier une activiteacute de niveau 1 comme un
ensemble drsquoactiviteacutes participant agrave une mecircme finaliteacute (approche par les objectifs)
Jusquougrave deacutecomposer
Lorsquune activiteacute a atteint le niveau dinterruptabiliteacute (degraves lors que le traitement est
deacuteclencheacute il se deacuteroule sans attente de ressources compleacutementaires exteacuterieures) Lactiviteacute est
alors une opeacuteration conceptuelle qui sera deacutecrite lors de leacutetude dynamique du SI dans le
MCTA
G-Les Modegraveles de traitements (MCT et MCTA)
I-MeriseMCT
Sommaire
1 Modeacutelisation des Traitements
2 Le MCT
3 Les concepts du MCT
o 31 Lrsquoeacuteveacutenement
o 32 Lrsquoopeacuteration
o 33 Le reacutesultat
o 34 La synchronisation
o 35 Regravegle deacutemission
o 36 Rocircle des regravegles de gestion
o 37 Le processus
4 Meacutethode drsquoeacutetablissement drsquoun MCT
o 41 Regravegles de validation
o 42 Cas particuliers
421 Cycles
422 Les eacuteveacutenements consommables
1-Modeacutelisation des Traitements
La modeacutelisation des traitements pour but de faire la repreacutesentation dynamique du systegraveme
drsquoinformation crsquoest-agrave dire de repreacutesenter lrsquoenchaicircnement des traitements reacutealiseacutes
Cette modeacutelisation srsquoeffectue agrave deux niveaux
1 le niveau conceptuel ougrave lrsquoon srsquointeacuteresse aux opeacuterations en dehors de toute mise en
oeuvre organisationnelle
2 le niveau organisationnel ougrave se pose les questions du qui ougrave quand
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
39
2-Le MCT
Lrsquoobjectif du MCT est de reacutepondre agrave la question QUOI faire par rapport agrave un eacuteveacutenement
Crsquoest la chronologie qui importe Autrement dit le MCT est une repreacutesentation de la
succession des regravegles de gestion dont lrsquoentreprise veut se doter pour reacutepondre aux eacuteveacutenements
auxquels elle doit faire face du fait de son activiteacute et de son environnement
3-Les concepts du MCT
31-Lrsquoeacuteveacutenement
Crsquoest une sollicitation du systegraveme drsquoinformation qui geacutenegravere une reacuteaction de la part de celui-ci
Un eacuteveacutenement peut ecirctre externe au domaine eacutetudieacute (ex commande client) ou interne au SI
souvent le reacutesultat drsquoun processus anteacuterieur (ex ordre de preacuteparation) Un eacuteveacutenement peut-
ecirctre aussi temporel cest-agrave-dire lieacute agrave des dates qui rythment lrsquoexeacutecution de certains traitements
(deacutelai de maintenance relances)
32-Lrsquoopeacuteration
Crsquoest un ensemble drsquoactions accomplies par le systegraveme drsquoinformation en reacuteaction agrave un
eacuteveacutenement ou agrave une conjonction drsquoeacuteveacutenements et non interruptibles par un eacuteveacutenement
externe
Remarque Une opeacuteration deacuteclenche au moins un reacutesultat Une opeacuteration est repreacutesenteacutee par
un verbe ou mieux un substantif (ex Preacuteparer la commande ou preacuteparation de la commande)
34-Le reacutesultat
Un reacutesultat peut-ecirctre un document un message externe un nouvel eacutetat du SI (nouvelle
situation nouvelles donneacutees) creacuteeacute par une opeacuteration qui peut lui-mecircme jouer le rocircle
drsquoeacuteveacutenement
Un reacutesultat externe repreacutesente une information envoyeacutee agrave lrsquoexteacuterieur du SI (ex facture)
Un reacutesultat interne est un nouvel eacutetat du systegraveme drsquoinformation (ex ordre de preacuteparation)
35-La synchronisation
Crsquoest une condition booleacuteenne (ET OU) traduisant les regravegles de gestion que doivent
respecter les eacuteveacutenements pour deacuteclencher une opeacuteration Dans le cas ET elle marque quun
eacuteveacutenement deacutejagrave lagrave doit en attendre un ou plusieurs autres
Remarque Pour quil soit question de synchronisation il faut la preacutesence de plusieurs
eacuteveacutenements deacuteclencheurs aussi le symbole de synchronisation est laisseacute agrave blanc dans le cas
dun eacuteveacutenement unique
Si tous les eacuteveacutenements entrants sont lieacutes par le mecircme opeacuterateur on peut seulement faire
figurer lopeacuterateur dans le symbole de synchronisation sinon il faut numeacuteroter les eacuteveacutenements
(a b c hellip) et constituer lexpression agrave laide des eacuteveacutenements et des opeacuterateurs (ex (a ET b)
OU c) Regravegle deacutemission
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
40
Condition traduisant les regravegles de gestion qui permet dexprimer des conditions de sortie des
reacutesultats
Remarques Lexpression dune regravegle deacutemission peut ecirctre composeacutee de plusieurs conditions
eacuteleacutementaires relieacutees par les opeacuterateurs ET OU On peut eacutegalement utiliser lopeacuterateur NON
pour exprimer la neacutegation dune condition
36-Rocircle des regravegles de gestion
Recenseacutees lors de leacutetude de lexistant ou deacutefinies pour le futur SI elles deacutecrivent les
enchaicircnements dopeacuterations Elles rendent possible le regroupement des actions au sein dune
seule opeacuteration non interruptible au niveau conceptuel
37-Le processus
Crsquoest un enchaicircnement synchroniseacute dopeacuterations au sein dun mecircme domaine geacuteneacuteralement
deacuteclencheacute par un eacuteveacutenement externe (externe au domaine ou au SI tout entier)
Un MCT est la repreacutesentation de lrsquoenchaicircnement des opeacuterations drsquoun processus
4-Meacutethode drsquoeacutetablissement drsquoun MCT
1 Reacutealiser le graphe des flux (repreacutesentation des acteurs eacuteveacutenements et reacutesultats
externes
2 Pour chaque eacuteveacutenement recenser les opeacuterations deacuteclencheacutees etou les eacuteveacutenements
internes produits
3 Regrouper dans une mecircme opeacuteration tous les traitements qui ont les mecircmes
deacuteclencheurs dans une uniteacute de temps avec la mecircme synchronisation
41-Regravegles de validation
Une opeacuteration ne peut pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement externe
Si tel est le cas il faut deacutecrire une seconde opeacuteration deacuteclencheacutee par cet eacuteveacutenement en attente
42-Cas particuliers
421-Cycles
Pour une mecircme opeacuteration leacuteveacutenement deacuteclencheur et leacuteveacutenement reacutesultat sont identiques
Une commande de client est servie si les marchandises sont disponibles sinon cette
commande est mise en attente Les commandes en attente sont reacuteexamineacutees lors de chaque
reacuteapprovisionnement afin de les livrer
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
41
Il faut sassurer que le cycle a bien un deacutebut et une fin ici cest lrsquoeacuteveacutenement
Reacuteapprovisionnement effectueacute qui permet deacuteviter que le cycle ne se deacuteroule sans fin sur les
commandes en attente
Noter limportance du concept doccurrences deacuteveacutenement
-une occurrence de Reacuteappro est-elle autoriseacutee agrave consommer toutes les occurrences de
Commande en attente
-si le reacuteapprovisionnement est insuffisant de nouvelles occurrences de Commande en attente
doivent-elles ecirctre creacuteeacutees
422-Les eacuteveacutenements consommables
Un client non satisfait peut retourner un article On lui fait un avoir Il peut alors le
preacutesenter en caisse pour ecirctre rembourseacute de son achat Il peut encore remplacer larticle
deacutefectueux par un autre auquel cas on annule lavoir
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
42
Ce qui pose question
UNE occurrence de leacuteveacutenement avoir eacutetabli ne peut ecirctre consommeacutee par 2 opeacuterations
(rembourser et imputer)
Dit autrement avoir eacutetabli ne sait pas vers quelle opeacuteration se diriger On pourrait se dire
quil est implicite que cest le premier eacuteveacutenement qui survient qui gagne si Echange survient
en premier alors lavoir est annuleacute
Cependant que se passe-t-il si les 2 eacuteveacutenements externes se produisent simultaneacutement Si on
impleacutemente tel quel ce scheacutema dans un automate il est vraisemblable que le client pourra
avoir le beurre et largent du beurre
se preacutesenter en caisse et faire leacutechange pour un seul retour Il est donc preacutefeacuterable dexpliciter
(cf ci-apregraves)
Une autre solution consiste agrave indiquer explicitement que cet eacuteveacutenement est consommable
cest-agrave-dire que la premiegravere opeacuteration qui se deacuteclenche annule lrsquoeacuteveacutenement pour lrsquoautre
opeacuteration
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
43
II-MeriseInteacutegration des donneacutees dans le MCT
Sommaire
1 DEFINITION
2 FORMALISME DU MCTA
3 REPRESENTATION DES ACTIONS SUR LES DONNEES
4 COMPLEMENTS
o 41 Condition de deacuteclenchement
o 42 Action collective
o 43 Coheacuterence de la base de donneacutees
o 44 REGLES DE VALIDATION DrsquoUN MCTA
o 45 Exemple de MCTA
1-DEFINITION
Le MCTA est une repreacutesentation syntheacutetique des traitements qui met en eacutevidence les reacuteactions
du systegraveme aux eacuteveacutenements et linteraction avec les donneacutees
Il vise agrave
Deacutecrire le fonctionnement du systegraveme indeacutependamment de lorganisation
Donner une vision des traitements et de la coordination des eacuteveacutenements deacuteclencheurs
Rapprocher les donneacutees et les traitements
2-FORMALISME DU MCTA
Pour mettre en eacutevidence lrsquoarticulation entre les donneacutees et les traitements dans le MCT on
ajoute agrave droite de chaque opeacuteration les entiteacutes ou associations qui sont consulteacutees ou qui
subissent un changement drsquoeacutetat (creacuteation mise agrave jour suppression hellip)
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
44
3-REPRESENTATION DES ACTIONS SUR LES DONNEES
Un objet correspond agrave une entiteacute ou une association du MCD correspondant au champ
drsquoeacutetude du SI Une action est une manipulation (creacuteation consultation modification ou
suppression) drsquoun objet du systegraveme drsquoinformation Elle est symboliseacutee par un trait entre
lrsquoopeacuteration et lrsquoobjet manipuleacute Ce trait est non orienteacute sil sagit dune suppression et il
est orienteacute pour les autres types de manipulation le sens de la flegraveche deacutepend du type de
manipulation
Un eacutetat drsquoobjet est un stade transitoire par lequel passe un objet (entiteacute ou association) au
cours de sa laquo vie raquo
Dans un MCTA une opeacuteration est composeacutee dun ensemble dactions sur les donneacutees
Les actions sur les donneacutees sont de 4 types
Creacuteation drsquoune occurrence
Creacuteation drsquoune occurrence de lrsquoobjet 1 dans lrsquoeacutetat 1
Suppression drsquoune occurrence
Suppression drsquoune occurrence de lrsquoobjet 3 se trouvant dans lrsquoeacutetat 2
Consultation drsquoune occurrence
Consultation drsquoune occurrence de lrsquoobjet 4 dans lrsquoeacutetat 6 Leacutetat de lrsquoobjet nrsquoest pas indiqueacute
mais sera eacuteventuellement testeacute avant reacutealisation de la (ou des) action (s) suivante (s)
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
45
Modification drsquoune occurrence
Modification drsquoune occurrence de lrsquoobjet 2 si elle est dans lrsquoeacutetat 3 elle passe agrave lrsquoeacutetat 4 ou agrave
lrsquoeacutetat 5
Lrsquoaction de modification inclut implicitement la ou les consultations preacutealables
On ne doit pas seacuteparer les consultations qui preacutecegravedent les modifications des modifications
elles-mecircmes
Remarque geacuteneacuterale Lrsquoordre des actions drsquoune opeacuteration sera si possible preacutesenteacute de haut en
bas
4-COMPLEMENTS
41-Condition de deacuteclenchement
Lrsquoaction eacuteleacutementaire peut ecirctre accompagneacutee drsquoune condition de deacuteclenchement (agrave indiquer au
niveau du trait ou agrave cocircteacute de lrsquoobjet) Cette condition peut porter sur lrsquoeacutetat de la structure des
donneacutees agrave un moment preacutecis etou sur le type drsquoeacuteveacutenement constateacute agrave lrsquoentreacutee de lrsquoopeacuteration
42-Action collective
Elle permet drsquoindiquer que lrsquoaction intervient sur un ensemble drsquooccurrences de lrsquoobjet
concerneacute (toutes srsquoil nrsquoy a pas de condition de deacuteclenchement associeacutee limitant le nombre
drsquooccurrences manipuleacutees)
Exemple en fin de mois une compagnie dassurances reacutesilie les polices quelle a proposeacutees degraves que le deacutelai de signature de celles-ci est deacutepasseacute
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
46
C1 si le deacutelai de signature est deacutepasseacute
43-Coheacuterence de la base de donneacutees
Une BD a coheacuterent si elle ne comporte pas de contradictions (par rapport aux regravegles de
gestion en particulier)
Une action peut ne pas laisser la structure de donneacutees dans un eacutetat coheacuterent
En revanche la coheacuterence doit toujours ecirctre assureacutee au niveau drsquoune opeacuteration
44-REGLES DE VALIDATION DrsquoUN MCTA
Une opeacuteration conceptuelle ne doit pas ecirctre interrompue par lrsquoattente drsquoun eacuteveacutenement
externe
Une opeacuteration conceptuelle prend la structure de donneacutees manipuleacutees dans un eacutetat
coheacuterent et la rend dans un eacutetat coheacuterent
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle
47
45-Exemple de MCTA
C1 si le client eacutetait preacuteceacutedemment un client prospect (cest-agrave-dire client potentiel)
C2 sil sagit dun nouveau client ou si le client eacutetait preacuteceacutedemment un client prospect le
client est mis en portefeuille (cest-agrave-dire qursquoil est reacuteellement client)
C3 si disponibiliteacute de tous les produits (quantiteacute en stock suffisante pour assurer la livraison)
Remarque on considegravere ici qursquoil nrsquoy a pas de livraison partielle