47
1 A-Introduction à Merise 1. Le système d’information de gestion 2. La modélisation B-Introduction au Modèle conceptuel des données 1. Recueil des données 2. Présentation des concepts et du formalisme du MCD 3. Règles de base pour la construction d'un MCD 4. Introduction aux cardinalités C-Les cardinalités et les différents types d'associations 1. Les cardinalités 2. Les différents types d'associations 3. Représentation des cardinalités 4. Association ternaire 5. Associations réflexives D-Passage MCD <=> modèle relationnel 1. Rappel sur le modèle relationnel 2. Passage du MCD au MR E-Normalisation du modèle relationnel 1. Dépendance fonctionnelle 2. Intérêt de la normalisation 3. Les 3 formes normales F-Les diagrammes de flux 1. Vocabulaire associé aux modè les de flux 2. Modèle de contexte 3. Modèle de flux conceptuel ou diagramme de flux de données G-Les Modèles de traitements (MCT et MCTA) 1. MCT 2. Intégration des données dans le MCT (à MCTA) SANGARE SOULEYMANE 00225-08281648 [email protected] [email protected] A-Introduction à Merise

Merise

  • Upload
    unibej

  • View
    624

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Merise

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

Page 2: 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

Page 3: Merise

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

Page 4: Merise

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

Page 5: Merise

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

Page 6: Merise

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

Page 7: Merise

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

Page 8: Merise

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

Page 9: Merise

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

Page 10: Merise

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

Page 11: Merise

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

Page 12: Merise

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

Page 13: Merise

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

Page 14: Merise

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

Page 15: Merise

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

Page 16: Merise

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

Page 17: Merise

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

Page 18: Merise

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

Page 19: Merise

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

Page 20: Merise

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

Page 21: Merise

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

Page 22: Merise

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

Page 23: Merise

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

Page 24: Merise

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

Page 25: Merise

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

Page 26: Merise

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

Page 27: Merise

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

Page 28: Merise

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

Page 29: Merise

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

Page 30: Merise

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

Page 31: Merise

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

Page 32: Merise

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

Page 33: Merise

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

Page 34: Merise

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

Page 35: Merise

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

Page 36: Merise

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

Page 37: Merise

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

Page 38: Merise

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

Page 39: Merise

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

Page 40: Merise

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

Page 41: Merise

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

Page 42: Merise

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

Page 43: Merise

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

Page 44: Merise

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

Page 45: Merise

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

Page 46: Merise

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

Page 47: Merise

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