120253807-MERISE

74
Merise 1 Coté DONNEES MCD - MLD www.Tellora.fr

Transcript of 120253807-MERISE

Page 1: 120253807-MERISE

Merise

1

Coté DONNEESMCD - MLD

www.Tellora.fr

Page 2: 120253807-MERISE

Modèle en W

Analyse des besoinssystème

Conception maquette Vérification maquette

Validation maquette

Conception système Validation logiciel

2

Réalisation maquette Conception logiciel

Réalisation logiciel

Vérification logiciel

www.Tellora.fr

Page 3: 120253807-MERISE

Cycle de vie de MERISE

Conception système Vérification système

Analyse des besoinssystème

Validation système

Démonstrationsystème

3

Analyse des besoinsLogiciel

Conception Logiciel

Réalisation

Vérification logiciel

Validation logicielDémonstration

système

www.Tellora.fr

Page 4: 120253807-MERISE

Modèle de Vienne

PILOTAGE QUALITEDEVELOPPEMENT

MODELESTECHNIQUES

ETAPESCYCLE DE VIE

LIVRABLES

4www.Tellora.fr

Page 5: 120253807-MERISE

Les axes de modèlisation

FAIRE

5

ETRESE COMPORTER

www.Tellora.fr

Page 6: 120253807-MERISE

Les niveaux d'abstraction

�Niveau conceptuel�Niveau organisationnel

6

�Niveau organisationnel�Niveau logique�Niveau physique

www.Tellora.fr

Page 7: 120253807-MERISE

Les modèles de Merise

CONCEPTUEL

INTERFACESCOMMU-NICATION DONNEES TRAITEMENT

MCC MCD MCT

7

ORGANISA-TIONNEL

LOGIQUE

MOC MOD MOT

MLD

www.Tellora.fr

Page 8: 120253807-MERISE

MCC

M C D Brut M C T

Messages

Le cycle d'abstraction

Dictionnaire des données

M O D

Objet

de gestion Règles

de traitement

Règles

d'organisation

8

M C D Validé et optimisé

Validation et optimisation

Scénario d'activité

Conception d'interface

MOT

M L D

www.Tellora.fr

Page 9: 120253807-MERISE

Les niveaux de préoccupation

�Niveau Système� Solution dans le domaine de l'information

9

� Solution dans le domaine de l'information

�Niveau logiciel� Solution dans le domaine de l'informatique

www.Tellora.fr

Page 10: 120253807-MERISE

Modèle conceptuel de communication (MCC)

�Définition :� Le MCC détermine le domaine d'étude et ses

échanges avec l'environnement.

�Concepts associés

10

�Concepts associés� Domaine d'étude� Acteurs externes� Domaines connexes� Message

www.Tellora.fr

Page 11: 120253807-MERISE

Modèle Conceptuel de communication

�Définition� Un MCC détermine, par affinage successifs des

activités, la composition du domaine d'étude sans

11

activités, la composition du domaine d'étude sans en décrire le comportement.

�Le MCC se construit par raffinement successif

www.Tellora.fr

Page 12: 120253807-MERISE

Les concepts associés

� Domaine d'étude� Sous ensemble cohérent de l'entreprise ou de l'organisme, bien délimité et

formant le contenu du sujet à étudier

� Activité� Ensemble de traitements homogènes qui transforment ou manipulent des

12

� Ensemble de traitements homogènes qui transforment ou manipulent des données

� Message� Représentation d'un échange d'informations entre deux composants du

système ou entre un composant du système et un système extérieur

� Acteur externe� Source ou destination de données située en dehors du système étudié

www.Tellora.fr

Page 13: 120253807-MERISE

Gammes opératoires

� Objectifs� Partitionner le domaine étudié en activités� Point de passage obligé pour modéliser les traitements� Maitriser la progression vers le détail du système

� Niveau de détail

13

� Niveau de détail� On s'arrête quand l'activité correspond à une opération.

� Démarche� Identifier les flux de données entrant et sortant du domaine� Identifier les activités� Raffiner par conservation ou décomposition

www.Tellora.fr

Page 14: 120253807-MERISE

Exemple de MCCNiveau 0

Assurance

AssuréDéclaration de sinistre

Niveau prise en charge

Règlement sinistre

Garage AgrééFacture

14

Expert

www.Tellora.fr

Page 15: 120253807-MERISE

Exemple de MCCNiveau 1

Assurance

Sinistre

AutoAssuré

Garage Agréé

Déclaration de sinistre

Niveau prise en charge

Facture

Ordre de

15

Compta

Expert

paiement

Paiement

www.Tellora.fr

Page 16: 120253807-MERISE

�Vision Statique du Système d'Information

�Représentation sémantique des

Modèle Conceptuel de Données

16

�Représentation sémantique des données

�Modèle Entité / Relation

www.Tellora.fr

Page 17: 120253807-MERISE

STAGE

Code Stage

Nom de l'entité

Identifiant

Entités

17

Code Stage

Nom Stage

Durée

Identifiant

Informations

www.Tellora.fr

Page 18: 120253807-MERISE

STAGES

Code Stage

Ensemble des Stages

• CO1

• CO2 • LO1

• LO2

Entités et occurrences d'entités

18

Nom Stage

Durée

CO1

CO2

LO1

LO2

Langage Objet

3 jours

occurrences

de Stages

www.Tellora.fr

Page 19: 120253807-MERISE

STAGE

Code Stage

STAGIAIRE

Code Stagiaires Inscrire

Relation"Liens de sens entre entités"

19

Code Stage

Nom Stage

Durée

Code Stagiaires

Nom

Prénom

Entreprise

Inscrire

Un stagiaire est inscrit à un stage

www.Tellora.fr

Page 20: 120253807-MERISE

CO1CO2

LO1

LO2

S1S2

S3

Occurrences de relations

20

LO2

Par construction, une seule association est possible entre

une occurrence de stage et une occurrence de stagiaire.

www.Tellora.fr

Page 21: 120253807-MERISE

Cardinalités

STAGESTAGIAIRE

Inscrire0,N 1,N

minmax

21

La cardinalité exprime le nombre minimal et maximal de participations d'une occurrence d'entité à la relation.

• A une occurrence de Stagiaire peut correspondre de 0 à N occurrence de relations "Inscrire".

• A une occurrence de Stage peut correspondre de 1 à N occurrences de relations "Inscrire".

www.Tellora.fr

Page 22: 120253807-MERISE

CARDINALITES"Elles expriment les règles de gestion"

STAGE Inscrire1,N

A une occurrence de STAGE correspond de 1 à N occurrence de STAGIAIRE

� L'occurrence stage ne peut être créée que s'il y a au moins un inscrit.

� L'inscription du premier stagiaire entraîne la création de l'occurrence de

22

STAGE Inscrire0,N

A une occurrence de STAGE correspond de 0 à N occurrence de STAGIAIRE

� L'occurrence stage peut être créée avant toute inscription.

Stage

www.Tellora.fr

Page 23: 120253807-MERISE

Cardinalités"Elles expriment les règles de gestion"

STAGIAIRE Inscrire1,N

A une occurrence de STAGIAIRE correspond de 1 à N occurrence de STAGE.

� L'occurrence stagiaire ne peut être créé indépendamment de son inscription.

23

STAGIAIRE Inscrire0,N

A une occurrence de STAGIAIRE correspond de 0 à N occurrence de STAGE.

� L'occurrence stagiaire peut être créée indépendamment de son inscription

www.Tellora.fr

Page 24: 120253807-MERISE

Cardinalités"Elles expriment les règles de gestion"

STAGIAIRE Inscrire1,1

A une occurrence de STAGIAIRE correspond 1 et 1 seule occurrence de STAGE.

� On ne peut créer l'occurrence Stagiaire indépendamment de son inscription.

�Le stagiaire ne peut s'inscrire qu'une seule fois.

24

STAGIAIRE Inscrire0,1

A une occurrence de STAGIAIRE correspond de 0 à 1 occurrence de STAGE

� On peut créer l'occurrence Stagiaire indépendamment de son inscription.

�Le stagiaire ne peut s'inscrire qu'une seule fois.

�Il ne peut s'inscrire qu'une seule fois.

www.Tellora.fr

Page 25: 120253807-MERISE

Cardinalités

"Les relations ternaires"

VOITUREEMPRUNTEUR Emprunter0,N 0,N

25

Par construction, la même occurrence d'Emprunteur ne peut emprunter plusieurs fois la même occurrence de Voiture.

� Le couple Id.Emprunteur - Id.Voiture est unique

www.Tellora.fr

Page 26: 120253807-MERISE

Cardinalités

"Les relations ternaires"

VOITUREEMPRUNTEUR Emprunter0,N 0,N

DATE0,N

26

La même occurrence d'Emprunteur ne peut emprunter à plusieurs reprises la même occurrence de Voiture.

La date permet de distinguer chaque occurrence de relation.

� Le triplet Date - Id.Emprunteur - Id.Voiture est unique

www.Tellora.fr

Page 27: 120253807-MERISE

Relation reflexive

PERSONNE

Filiation0,NA pour enfant

A pour parents

27

1,N

A pour parents

www.Tellora.fr

Page 28: 120253807-MERISE

Règles de construction"1ère FN"

PERSONNE

Les propriétés d'une entité ou d'une relation doivent être sous forme atomique.

� Pas de listes, tableaux ...

28

PERSONNE

N° Immat.

Nom patronymique

Prénom usuel

Date de Naissance

Prénoms Enfants

Liste

PERSONNE A pour0,N 1,1

ENFANT

www.Tellora.fr

Page 29: 120253807-MERISE

Règles de construction"3ème FN"

PERSONNE

N° Immat.

Les propriétés d'une entité ou d'une relation doivent être en dépendance directe avec l'indentifiant.

� Pas de transitivité.PERSONNE

N° immat.

29

N° Immat.

Nom patronymique

Prénom usuel

Date de Naissance

Entreprise

Adresse Entreprise

PERSONNE Travaille dans

1,1 0,N

ENTREPRISE

N° immat.

Nom

Prénom Date de Naissance

ENTREPRISE

Entreprise

Adresse Entreprise

www.Tellora.fr

Page 30: 120253807-MERISE

Règles de construction"2ème FN"

Les propriétés d'une relation doivent être en dépendance complète avec

les identifiants des entités reliées.

Achète

30

0,NCLIENT

0,N

TYPE DE VOITUREAchète

Qté, Remise

0,N

DATE

www.Tellora.fr

Page 31: 120253807-MERISE

Règles de construction"2ème FN"

Si la remise pour un client et un type de voiture est toujours la même,

� La remise ne dépend pas de la date

Achète

A pour remiseRemise

0,N 0,N

31

0,NCLIENT

0,N

TYPE DE VOITUREAchète

Qté

0,N

DATE

0,N 0,N

www.Tellora.fr

Page 32: 120253807-MERISE

Démarche de construction

�Etablir le dictionnaire de données.�Repérer les entités.�Attribuer à chaque entité un

identifiant (s'il n'existe pas le créer).

32

identifiant (s'il n'existe pas le créer).�Placer les propriétés dans les entités.�Placer les relations (éventuellement

les propriétés des relations).

www.Tellora.fr

Page 33: 120253807-MERISE

Généralisation-Spécialisation

VEHICULE

Id. Véhicule

Type Véhicule

Type voilure

Hauteur de jauge

Type de pneus

Date d'achat

1,1 0,N

est amarré

FABRICANT

est localisé0,1

0,1

33

Date d'achat

PORT GARAGE0,N 0,N

Une occurrence de Véhicule de type "Bateau" est toujours reliée à une occurrence de type "Port".

Une occurrence de Véhicule de type "Voiture" est toujours reliée à une occurrence de type "Garage".

www.Tellora.fr

Page 34: 120253807-MERISE

VEHICULE

Bateaux à Voile

Généralisation-Spécialisation

34

Bateaux à Moteur

www.Tellora.fr

Page 35: 120253807-MERISE

VEHICULE

N° Immat.

Date d'achat

FABRICANT

PORT

Généralisation-Spécialisation

35

BATEAU

Hauteur de jauge

VOITURE

Type de pneus

Bateau à Voile

Type de voilure

Bateau à Moteur

GARAGE

www.Tellora.fr

Page 36: 120253807-MERISE

Genéralisation/Spécialisation

Propriétés

génériquesRelations

génériques

36

Propriétés

spécifiques

Relations

spécifique

www.Tellora.fr

Page 37: 120253807-MERISE

Contrôle du modèle

�Vérifier que chaque propriété se trouve à un seul endroit du modèle.

�Contrôler chaque entité en vérifiant :

37

�Contrôler chaque entité en vérifiant :� Que chaque entité possède un identifiant.� Que chaque propriété est significative.� La 1ère FN.� La 3ème FN.

www.Tellora.fr

Page 38: 120253807-MERISE

Contrôle du modèle

�Contrôler chaque relation en vérifiant : � Qu'une occurrence de relation ne lie qu'une et une

seule occurrence de chacune des entités reliées.� Que les relations de cardinalités 1,1 ne porte pas

de propriété.

38

de propriété.� La 1ère FN.� La 2ème FN.� La 3ème FN.

�Contrôler que le modèle produit les résultats attendus.

www.Tellora.fr

Page 39: 120253807-MERISE

Contraintes sur les relations ou les pattes

�Contrainte de partition�Contrainte d'exclusion�Contrainte de totalité

39

�Contrainte de totalité�Contrainte d'inclusion�Contrainte d'égalité�Contrainte d'unicité

www.Tellora.fr

Page 40: 120253807-MERISE

Contrainte d'inclusion

Matièresait

enseignerI

O,n

O,n

40

Classe Prof

enseigneI

O,nO,n

O,n

Si enseigne (x:matière, y : professeur)

alors sait enseigner (x:matière, y : prof)

www.Tellora.fr

Page 41: 120253807-MERISE

Contrainte de totalité

Personne Contrat

souscrit

T

1,1O,n

41

Personne Contrat

conductrice 1,nO,n

Toute personne doit être reliée à un contrat d'une façon ou d'une autre

www.Tellora.fr

Page 42: 120253807-MERISE

Contrainte d'exclusion

Personne Cours

élève

X

O,n O,n

42

enseigneO,n

O,n

Si enseigne (x:personne, y :cours)

alors nonélève (x:personne, y : cours)

www.Tellora.fr

Page 43: 120253807-MERISE

Contrainte d'unicité

Matière

enseigne

O,n

43

Classe ProfO,nO,n

Dans une classe, une matière n'est enseignée que par un seul professeur

www.Tellora.fr

Page 44: 120253807-MERISE

Contrainte de stabilité

CommandeArticle ClientLigne (D)

O,nO,n 1,n

Passe (D)

0,n

44

Les relations sont définitives.

Une occurrence ne peut être détruite que si l'entité qu'elle met en jeu est elle même détruite.

www.Tellora.fr

Page 45: 120253807-MERISE

Validation données/traitements

INSCRIPTION

Demande Inscription

MOD Mise à jour

45

AC InscriptionMise à jour

www.Tellora.fr

Page 46: 120253807-MERISE

Exemple de MOD

INSCRIPTION

Demande InscriptionRESP. FORMATION

Nom responsable

Entreprise

Dépendre

1,N

46

AC

STAGIAIRE

Nom Stagiaire

SESSION

Code Session

Dépendre

Inscrire

1,1

1,N 0,N

www.Tellora.fr

Page 47: 120253807-MERISE

Validation données/traitements

Vérifier que chaque information du MCD ou MOD est utilisée dans un traitement :

- un écran

- une impression

- une opération dans un traitement

47

- une opération dans un traitement

- …

Vérifier que les traitements n’utilisent pas des informations oubliées …

www.Tellora.fr

Page 48: 120253807-MERISE

Optimisation fonctionnelle

� Veiller à ce que les opérations ne soient pas coûteuses en temps.

� Réduire le nombre de tables,� Limiter le nombre de jointures,

48

� Introduire des redondances, des compteurs, des états.

� L'optimisation fonctionnelle en contre partie rend :� Les mises à jour plus complexes,� Les évolutions plus difficiles.

www.Tellora.fr

Page 49: 120253807-MERISE

MLD

�Définition� Un Modèle Logique des Données (MLD) est une

représentation des données d'un système devant être mémorisées sur des supports informatiques permanents (fichier, base de données) et des liens

49

permanents (fichier, base de données) et des liens existants entre ces données.

� Il traduit le MOD dans un formalisme compatible avec l'état de l'art, mais encore portable par rapport à des choix techniques précis liés à des famille de SGBD

www.Tellora.fr

Page 50: 120253807-MERISE

Modèle logique de données (MLD)

� Règles de passage du MCD au MLD (x vaut 0 ou 1)� Les entités sont transformées en tables.

� Les identifiants des entités deviennent clé primaires

� Les relations x,N / x,N sont transformées en tables.La primary key est constituée de la concaténation des

50

� La primary key est constituée de la concaténation des identifiants des entités qui concourent à la relation

� Les relations x,1 / x,N deviennent clé étrangères.� L’identifiant coté x,N est migré dans l’entité coté x,1.

� Les relations x,1 / x,1 sont transformées en tables ou deviennent clé étrangères.

� L’identifiant en est déduit en fonction de la solution choisie.

www.Tellora.fr

Page 51: 120253807-MERISE

Exemple de MCD

Vol

No_Vol IVol_Depart DTVol_Arrive DTDestination A20

Modèle Conceptuel de Données

Projet : Tahiti

Modèle : Tahiti

Auteur : Clotilde Attouche Version 22/08/2004

51

1,1

0,n

0,n

0,n

0,1

A pour Patron

1,n

Est Patron de

Employe

ID_Emp INom VA30Salaire N4Emploi VA20

Avion

Id_Avion INom_Avion VA30

Dirige

Est EquipageUtilise

www.Tellora.fr

Page 52: 120253807-MERISE

Génération du MLD

NO_VOL = NO_VOL

VOL

NO_VOL INTEGER not nullVOL_DEPART DATE not nullVOL_ARRIVE DATE nullDESTINATION CHAR(20) not nullID_AVION INTEGER not null

Modèle Physique de Données

Projet : Tahiti

Modèle : Tahiti

Auteur : Clotilde Attouche Version 22/08/2004

52

ID_AVION = ID_AVION

ID_EMP = ID_EMP

ID_EMP = EMP_ID_EMP

EMPLOYE

ID_EMP INTEGER not nullNOM VARCHAR2(30) not nullSALAIRE NUMBER(4) not nullEMPLOI VARCHAR2(20) nullEMP_ID_EMP INTEGER null

AVION

ID_AVION INTEGER not nullNOM_AVION VARCHAR2(30) null

EST_EQUIPAGE

ID_EMP INTEGER not nullNO_VOL INTEGER not null

www.Tellora.fr

Page 53: 120253807-MERISE

Modèle Logique de données Réparti

� Définition� Un Modèle Logique des Données réparti précise

l'implantation logique des données permanentes sur chacune des machines logiques type d'un système (Schéma

53

chacune des machines logiques type d'un système (Schéma d'Architecture Logique des Moyens Informatiques)

� Le MLD Réparti est composé de 2 à N Modèles logiques de données locaux

� Chaque MLD local est propre à une machine logique type.

www.Tellora.fr

Page 54: 120253807-MERISE

Modèle Conceptuel des traitements

� Représente les règles de traitement stable� Ne tient pas compte des contraintes

54

� Ne tient pas compte des contraintes organisationnelles

� Découpage en opérations fondées sur les attentes conceptuelles

www.Tellora.fr

Page 55: 120253807-MERISE

Opération conceptuelle

Nom opération

Message

Synchronisation

Message

55

Règle Emission

Résultat

www.Tellora.fr

Page 56: 120253807-MERISE

Opération conceptuelle

� Définition :� l'opération conceptuelle est déclenchée par un ou plusieurs

événements, fournit un ou plusieurs résultats, met en oeuvre un ensemble de règles conceptuelles formalisées, consulte et/ou met à

56

ensemble de règles conceptuelles formalisées, consulte et/ou met à jour les entités de la mémoire permanente par l'intermédiaire d'actions, laisse les données du SI dans un état cohérent par rapport aux contraintes d'intégrité de la memoire permanente et enfin elle ne peut être interrompue par l'attente d'un événement externe ou temporel

www.Tellora.fr

Page 57: 120253807-MERISE

Exemple de MCT

AssuréDécalration d'accident

Dossier rejeté

Contrôle Dossier

Dossier non OK Dossier OK

57

Dossier ouvertRapport expertFacture garage

Réglement dossier

Toujours

Garage Expert

Réglement

www.Tellora.fr

Page 58: 120253807-MERISE

Processus

�Un processus est constitué d'un enchaînement d'opérations

�Une processus prend en charge message entrant et produit un message résultat.

58

entrant et produit un message résultat.�Le découpage en procéssus est laissé à

l'initiative des concepteurs.

www.Tellora.fr

Page 59: 120253807-MERISE

Le Modèle organisationnel des traitements (MOT)

� Définition� Le modèle organisationnel des traitements (MOT) permet de

représenter le Système d'Information, défini au niveau

59

représenter le Système d'Information, défini au niveau conceptuel, dans le cadre d'une organisation donnée

� L'unité de description est la procédure fonctionnelle

www.Tellora.fr

Page 60: 120253807-MERISE

Opération Organisationnelle

� Définition :� Une opération organisationnelle est un traitement exécuté

entièrement à partir d'un seul type de poste à la fois et d'une seule nature (conversationnelle, automatique, manuelle) et qui laisse la structure organisationnelle des données dans un état stable.

� Concepts associés :

60

� Concepts associés :� Message/ Composant de message� Fonction� Type de site� Type d'acteur� Type de poste

� Même formalisme que l'opération conceptuelle

www.Tellora.fr

Page 61: 120253807-MERISE

Opération organisée

Nom opération

Règles

Nat

ure

trai

tem

ent

Message

61

Nat

ure

trai

tem

ent

Règle Emission

Résultat

www.Tellora.fr

Page 62: 120253807-MERISE

Exemple de MOTGUICHET GESTIONNAIRE

Candidat Demande d'inscription

Contrôle Dossier

R1 - ComplétudeM

Dossier non OK Dossier OK

Dossier rejetéSaisie des dossiers

Dossier accepté

62

Edition AR inscription

D

toujours

AC

Tous les soirs

AR Inscription

www.Tellora.fr

Page 63: 120253807-MERISE

Architecture

63www.Tellora.fr

Page 64: 120253807-MERISE

Base de données

64www.Tellora.fr

Page 65: 120253807-MERISE

DataGuard

65www.Tellora.fr

Page 66: 120253807-MERISE

RAC

66www.Tellora.fr

Page 67: 120253807-MERISE

RAC + DataGuard

67www.Tellora.fr

Page 68: 120253807-MERISE

Algèbre Relationnel

68www.Tellora.fr

Page 69: 120253807-MERISE

Projection

�La projection permet de ne conserver que certains attributs(colonnes) d'une table en éliminant les doublons.

69

éliminant les doublons.�Expression :

� PROJECT (Nom de tables, attribut1, attribut2, etc)

www.Tellora.fr

Page 70: 120253807-MERISE

Restriction

�La restriction d'un fichier permet de ne conserver que les lignes qui satisfont à une condition.

70

une condition.�Expression :

� RESTRICT (Nom de table, condition)� RESTRICT (VENTES, Nom = « Martin »)

www.Tellora.fr

Page 71: 120253807-MERISE

Join

�L'opération de jointure fonctionne sur deux tables possédant au moins un attribut commun. � Il consiste à créer une troisième table dont la

structure est composé de l'ensemble des attributs des deux tables et dont les enregistrements sont

71

des deux tables et dont les enregistrements sont ceux qui satisfont à la condition.

�Expression : � JOIN (R1, R2, Condition)� JOIN (R1,R2, R1.Code client = R2.Code client)

www.Tellora.fr

Page 72: 120253807-MERISE

Difference

�La différence fonctionne entre deux tables de même structure.

�Elle consiste à créer une troisième table de même structure dont les lignes sont

72

celles qui appartiennent à la premiere table diminué de celles appartenant à la seconde.

�Expression : � DIFFERENCE (R1, R2)

www.Tellora.fr

Page 73: 120253807-MERISE

Union

�L'opération d'union fonctionne sur deux tables de même structure.

�Elle consiste à créer une troisième table composée de l'ensemble des lignes des

73

composée de l'ensemble des lignes des deux tables de départ à l'exclusion des doublons (enregistrements identiques)

�Expression :� UNION (R1, R2)

www.Tellora.fr

Page 74: 120253807-MERISE

Intersection

�L'opération d'intersection fonctionne sur deux tables de même structure.

�Elle consiste à créer une troisième table composé de l'ensemble des lignes

74

composé de l'ensemble des lignes appartenant simultanément aux deux tables de départ

�Expression :� INTERSECTION (R1, R2)

www.Tellora.fr