m.e.d.a.l. module denseignement à distance pour larchitecture logicielle alain vailly diapositive...

61
M.E.D.A. M.E.D.A. L. L. Module d’Enseignement à Module d’Enseignement à Distance pour Distance pour l’Architecture Logicielle l’Architecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème année Les diagrammes de flots de données

Upload: eugene-metayer

Post on 03-Apr-2015

114 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

M.E.D.A.L.M.E.D.A.L.

Module d’Enseignement à Distance Module d’Enseignement à Distance pour l’Architecture Logiciellepour l’Architecture Logicielle

Alain VAILLYDiapositive n° 1 IUP MIAGE - Université de NANTES

IUP-MIAGE 2ème année

Les diagrammes de flots de données

Page 2: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

MEDALMEDAL

Alain VAILLYDiapositive n° 2

Cours magistral

Contexte

Auto-évaluation

Exercices

Corrigés des

exercices

RéférencesEvaluation

IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

Etudes de cas

Page 3: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 3 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

Cours magistral

- les automates

- les diagrammes de flots de données

informations

fonctions

comportements

- les arbres JSD

1) Introduction

2) Les DFD, une définition

3) Les DFD, ailleurs

4) Les DFD, un essai de synthèse

5) Conclusion

D.F.D.

PLAN

Page 4: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 4 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

Cours magistral

1) Introduction

2) Les DFD, une définition

3) Les DFD, ailleurs

4) Les DFD, un essai de synthèse

5) Conclusion

PLAN

Page 5: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 5 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

Cours magistral

1) Introduction

2) Les DFD, une définition

3) Les DFD, ailleurs

4) Les DFD, un essai de synthèse

5) Conclusion

PLAN

Page 6: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 6 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

Cours magistral

1) Introduction

2) Les DFD, une définition

3) Les DFD, ailleurs

4) Les DFD, un essai de synthèse

5) ConclusionPLAN

Page 7: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 7 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

Cours magistral1) Introduction

2) Les DFD, une définition

3) Les DFD, ailleurs

4) Les DFD, un essai de synthèse

5) ConclusionPLAN

Page 8: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 8 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

Cours magistral1) Introduction

2) Les DFD, une définition

3) Les DFD, ailleurs

4) Les DFD, un essai de synthèse

5) ConclusionPLAN

Page 9: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

3) Les DFD, ailleurs

Alain VAILLYDiapositive n° 9 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

Cours magistral1) Introduction

2) Les DFD, une définition

4) Les DFD, un essai de synthèse

5) ConclusionPLAN

Page 10: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

3) Les DFD, ailleurs

Alain VAILLYDiapositive n° 10 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

Cours magistral1) Introduction

2) Les DFD, une définition

5) ConclusionPLAN

4) Les DFD, un essai de synthèse

Page 11: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

3) Les DFD, ailleurs

Alain VAILLYDiapositive n° 11 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

Cours magistral1) Introduction

2) Les DFD, une définition

PLAN

4) Les DFD, un essai de synthèse

5) Conclusion

Page 12: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 12 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

Cours magistral

2.1) Les DFD, une définition2.2) Les DFD dans la méthode SSADM2.2.1) Utilisation des DFD2.2.2) Démarche de création des DFD

2) Les DFD, une définition

3) Les DFD, ailleurs

4) Les DFD, un essai de synthèse

3.1) Dans la méthode SA de DE MARCO3.2) Dans la méthode SA-RT de HATLEY-PIRBHAI3.3) Dans la méthode de SHLAER-MELLOR3.4) Dans la méthode Merise3.5) Les DFD et la méthode SADT3.6) Les DFD et les SSD de JACKSON

4.1) Ce que sont les DFD4.2) Ce qu’il faudrait qu’ils soient4.3) Ce qu’en fait R. FRANCE4.4) Ce qu’en fait G. RANDELL

1) Introduction

5) Conclusion

PLAN

Page 13: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 13

1) Introduction

IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

… qui repose sur 4 notions seulement

• Outil de modélisation des fonctions d’un système

• Principe de base : décomposition en niveaux

• Modèle ancien

• Modèle très utilisé dans le monde anglo-saxon

• Modèle simple (voire simpliste) ...

début des années 1970

SSADM

SA

SA-RT

SADT

….

UML

processusacteur

lieu de stockageflot de données

Page 14: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 14

2) Les DFD, une définition2.1) Les DFD, une définition

IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

SSADMprocessus

entité externestockage

flot de données

Les diagrammes de flots de données sont une techniquede représentation des flots d’information d’un système

largement répandu dans le monde anglo-saxon.

Page 15: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Les diagrammes de flots de données sont une techniquede représentation des flots d’information d’un système

largement répandu dans le monde anglo-saxon.

Alain VAILLYDiapositive n° 15

2) Les DFD, une définition

IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

SSADM processus

entité externestockage

flot de données

2) Les DFD, une définition2.1) Les DFD, une définition

Page 16: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 16

2) Les DFD, une définition

IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

SSADM processus

entité externestockage

flot de données

Les diagrammes de flots de données sont une techniquede représentation des flots d’information d’un système

largement répandu dans le monde anglo-saxon.

2) Les DFD, une définition2.1) Les DFD, une définition

Page 17: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 17

2) Les DFD, une définition

IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

SSADM processus

stockageflot de données

Les diagrammes de flots de données sont une techniquede représentation des flots d’information d’un système

largement répandu dans le monde anglo-saxon.

2) Les DFD, une définition2.1) Les DFD, une définition

entité externe

Page 18: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 18

2) Les DFD, une définition

IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

SSADM processus

stockage

flot de données

Les diagrammes de flots de données sont une techniquede représentation des flots d’information d’un système

largement répandu dans le monde anglo-saxon.

2) Les DFD, une définition2.1) Les DFD, une définition

entité externe

Page 19: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 19

2) Les DFD, une définition

IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

Nomx

entité externeentité externe

si plusieurs copies

Identificateur(toujours en minuscule)

Entité située en dehors des frontières de l’application, fournissant des données au système ou en recevant de lui.

Son fonctionnement interne n’est pas étudié.

Nomx

si un seul exemplaire

2) Les DFD, une définition2.1) Les DFD, une définition

Page 20: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 20

2) Les DFD, une définition

IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

processusprocessus

Seulement si DFD au niveau physique (nom de la

personne qui exécute ou nom du système dans

lequel le traitement est réalisé)

Identificateur(par convention, un nombre)

Elément qui transforme un ensemble de données (les entrées) enun autre (les sorties). Ces processus correspondent aux fonctions du système.

Nom

x Localisation

Nom du processus(toujours sous forme « verbe-complément »)

2) Les DFD, une définition2.1) Les DFD, une définition

Page 21: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 21

2) Les DFD, une définition

IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

stockagestockage

Lieu où les données sont stockées. Leur contenu n’est accessibleQUE par l’intermédiaire d’un processus.

x

si plusieurs copies

IdentificateurD : valeur par défaut

M : manuelC : automatisé

si un seul exemplaire

Nom x Nom

2) Les DFD, une définition2.1) Les DFD, une définition

Page 22: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 22

2) Les DFD, une définition

IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

flot de donnéesflot de données

Déplacement des données dans le système

C2 : un flot doit soit arriver à un processus, soit en partir.

C1 : un flot ne peut pas partir d’un élément et y arriver.

Nom Ensemble de données

2) Les DFD, une définition2.1) Les DFD, une définition

Page 23: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 23

2) Les DFD, une définition

IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.SSADM

Directeurb

Clienta

Directeurb

Clienta

Employébanque d

Employeurc

Fermer lescomptes

Inscrire lesNouveaux clients

01

Enregistrer lesDépôts et retraits

02

03

D1 Clients

D2 Comptes bancaires

D2 Comptes bancaires

Solde Total

Retrait

Salaire

Dépôt

Nom client, N° compte

N° compte

Nom client

Ex compte

Ex compte

Notification clôture

Notificationclôture

stockagestockage

entitéentité externeexterne

flot de flot de donnéesdonnées

processusprocessus

2) Les DFD, une définition2.1) Les DFD, une définition

Page 24: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 24

2) Les DFD, une définition

IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.SSADM

Directeurb

Clienta

Directeurb

Clienta

Employébanque d

Employeurc

Fermer lescomptes

Inscrire lesNouveaux clients

01

Enregistrer lesDépôts et retraits

02

03

D1 Clients

D2 Comptes bancaires

D2 Comptes bancaires

Solde Total

Retrait

Salaire

Dépôt

Nom client, N° compte

N° compte

Nom client

Ex compte

Ex compte

Notification clôture

Notificationclôture

stockagestockage

entitéentité externeexterne

flot de flot de donnéesdonnées

processusprocessus

2) Les DFD, une définition2.1) Les DFD, une définition

Page 25: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 25 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

2) Les DFD, une définition2.1) Les DFD dans la méthode SSADM

Les DFD sont un des 3 ingrédients de base de la méthode SSADM. Ils sont utilisés à au moins quatre reprises, pour décrire :

1) le système physique actuel,

2) le système logique actuel,

3) les solutions possibles,

4) la solution retenue.

Ces diagrammes doivent être étroitement liés aux autres, qu’il s’agisse de la structure de données ou des arbres JSD.

1

2

4

3

Page 26: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 26 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

2) Les DFD, une définition2.1) Les DFD dans la méthode SSADM

La démarche préconisée par SSADM est la suivante :

1) définition du premier DFD,

2) simplification,

3) définition des niveaux bas.

On peut aborder ce problème par les documents, par une étude des ressources

physiques et de leur évolution, par une étude de la structure hiérarchique de

l’entreprise... Il existe une démarche

et une « norme ».

Page 27: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 27 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

2) Les DFD, une définition2.1) Les DFD dans la méthode SSADM

Une approche par les documents peut être tentée, en suivant la démarche suivante :

1) recenser les principaux documents, leurs émetteurs et leurs destinataires,

2) dessiner le chemin parcouru par ces documents,

3) définir les limites de l’application,

4) identifier les processus à l’intérieur du système, chacun correspondant à l’émission ou à la réception d’un ou de plusieurs documents. Lorsque des documents sont conservés dans des fichiers, des stockages sont ajoutés.

Emetteur

Destinataire

Traiter

x

y Stockage

Page 28: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 28 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

2) Les DFD, une définition2.1) Les DFD dans la méthode SSADM

Pour simplifier le premier DFD, forcément compliqué :

1) on commence par dessiner un diagramme de contexte

2) on regroupe, tout en introduisant des niveaux.

entre 2 et 8 flots par

processus

système

1 2

1.1 1.2

2.1 2.2

2.31.2.1 1.2.2

Diagramme A-0 de SADTDiagramme A-0 de SADT

Page 29: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 29 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

2) Les DFD, une définition2.1) Les DFD dans la méthode SSADM

La définition des niveaux les plus bas

se fait en fournissant lesalgorithmes des

processus-feuilles.

Descriptif :Lire D1 : Fichier des lecteursSi nom du demandeur est inconnu alors

Réponse demande := « refusée ; demandeur inconnu »sinon

Lire D3.1 : PrêtsSi livre disponible alors

Réponse demande := « refusée ; livre disponible »sinon

Lire D3.2 : RéservationsSi réservation déjà déposée par ce demandeur, pour ce livre alors

Réponse demande := « refusée ; réservation déjà faite »sinon

Réponse demande := « acceptée »Enregistrer réservation dans D3.2 : Réservations

FinsiFinsi

FinsiFin-descriptif

P-SPEC de SA-RTP-SPEC de SA-RT

Evénement déclencheur : réception du flot Demande-résa (Nom, Livre, …)

Evénement résultat : émission en direction du lecteur du flot Réponse demande

Page 30: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 30 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.1) Dans la méthode SA de DE MARCO

Selon DE MARCO, « un diagramme de flots de données est une représentation réseau d’un système. Le système peut être automatisé,

manuel ou les deux. Le diagramme de flots de données décrit le système en termes de ses composants et d’interfaces entre ceux-ci. »

1 schéma = 1 page A4 maxi1 schéma = 1 page A4 maxiDécomposition possibleDécomposition possible

Feuilles décrites par mini-Feuilles décrites par mini-spécificationsspécifications

processusproducteur-consommateur

fichierflot de donnéesNom

NomNom

Nom

un des plus anciens

Page 31: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 31 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.1) Dans la méthode SA de DE MARCO

Le flot X arrive de la source S et est transformé en Y par le processus P1 (qui a besoin d’accéder au fichier F pour faire son travail). Y, à

son tour, est transformé en Z par le processus P2.

F

P2

XS

P1

Y Z

Page 32: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 32 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.1) Dans la méthode SA de DE MARCO

pas encouragé par l’auteur !

W

X

P1

Z

Y

+*

X et YX et Y

W ou ZW ou Z

Page 33: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 33 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.2) Dans la méthode SA-RT de HATLEY-PIRBHAI

Le diagramme de flots de données est l’outil de base pour la description des besoins du système, dans la méthode SA-RT.

« Le modèle peut être vu comme un réseau géant de processus terminaux reliés entre eux au travers de leurs flots de données, un

réseau dans lequel chaque processus est un processeur arbitrairement rapide, indépendant et déclenché par les données. »

processusproducteur-consommateur

stockageflot de données

Nom

NomNom

Page 34: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 34 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.2) Dans la méthode SA-RT de HATLEY-PIRBHAI

PIECES

Obtenir paiementclient

1

Rendre la monnaie

2

Valider le paiement

3

Obtenir le prix duproduit

4

Obtenir une bonnesélection

5

Distribuer leproduit

6

PRODUITS

TABLE DES PRIX

Sélection client

Objet

Fausses pièces

Prix

Pièces rendues

Produit

Sélection valide

Monnaie àrendre

Paiement

Page 35: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 35 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.2) Dans la méthode SA-RT de HATLEY-PIRBHAI

Valider le paiement

3

Prix

Paiement

PSPEC3 : Valider le paiementEntrées : Prix, Paiement Sorties : Paiement suffisant, Monnaie à rendre

Si Paiement ≥ Prix alorsPaiement suffisant := OuiMonnaie à rendre := Paiement - Prix

sinonPaiement suffisant := Non

FinsiFin-PSPEC3

Paiement suffisant ??

Monnaie à rendre ??

La spécification de chaque processus terminal fait l’objet d’une description

séparée (P-SPEC).

Ces flots sont des flots de

CONTRÔLE, qui relèvent d’un autre schéma, le DFC.

Page 36: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 36 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

Obtenir paiementclient

1

Rendre la monnaie

2

Valider le paiement

3

Obtenir le prix duproduit

4

Obtenir une bonnesélection

5

Distribuer leproduit

6

Pièce détectéePaiement suffisant

Demande de retour pièces

Produit distribué

Produit disponible

3) Les DFD, ailleurs3.2) Dans la méthode SA-RT de HATLEY-PIRBHAI

Diagramme de flots de Diagramme de flots de contrôle (DFC)contrôle (DFC)

Barre de contrôleBarre de contrôle

Entité externeEntité externe

Page 37: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 37 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.2) Dans la méthode SA-RT de HATLEY-PIRBHAI

Ces barres de contrôle matérialisent un processus de prise de décision (un seul par niveau de DFD) qui reçoit des données de contrôle (des sortes de variables booléennes), les traite, les stocke éventuellement

dans un stockage et qui en envoie d’autres

- soit à un autre DFC,

- soit à un DFD. DFC = DFD traitant des DFC = DFD traitant des données de contrôledonnées de contrôle

Les processus de bas niveau sont décrits, comme dans les DFD, par des mini-spécifications (les

C-SPEC).

Page 38: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 38 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.2) Dans la méthode SA-RT de HATLEY-PIRBHAI

On peut exprimer ces C-SPEC de plusieurs façons.

Automate de MEALY

Attente de pièces

Attente de sélection

Distribution produit

Produit disponible = FauxRendre paiement

Pièce détectéeAccepter sélection

Demande de retour piècesRendre le paiement

Paiement suffisantDistribuer produitProduit distribué

Accepter nouvelle pièce

Page 39: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 39 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.2) Dans la méthode SA-RT de HATLEY-PIRBHAI

Table de décision

Rendre la monnaie Distribuer le produit Obtenir une bonne sélection

0 0 1

1 0 0

0 0 0

1 1 0

Accepter sélection

Rendre paiement

Accepter nouvelle pièce

Distribuer produit

Processus activéProcessus activé

Action à exécuterAction à exécuter

Page 40: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 40 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.3) Dans la méthode de SHLAER-MELLOR

Une version (très) retouchée de ces DFD existe dans la méthode OOA, de SHLAER et MELLOR. En OOA, ces diagrammes fournissent une

représentation graphique des processus, de leurs actions et des communications établies entre eux. Ils sont appelés ADFD.

processusproducteur-consommateur

stockageflot de données

Nom

NomNom

Action Data Flow DiagramsAction Data Flow Diagrams

ADFD = DFD avec flots ADFD = DFD avec flots conditionnels et flots de contrôleconditionnels et flots de contrôle

flot de contrôle

Nom

= objet !!!= objet !!!

1 objet = 1 ADFD !!!1 objet = 1 ADFD !!!

Page 41: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 41 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.3) Dans la méthode de SHLAER-MELLOR

Générer TR12

TR11

Regarder les param.de temps

TR12

Test pour savoir sile four est plein

TR07

Calcul de la temp.nécessaire

TR08

Trouvée une couléepour ce four

TR05

HORLOGE

N° four

TR12 : température four OK

N° Four

Temp. Four OK

Temp. Four non OK

ConditionCondition

Temps actuel

Temps actuel

Page 42: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Nom

Alain VAILLYDiapositive n° 42 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.4) Dans la méthode Merise

Les diagrammes de flots de données n’ont été que tardivement introduit dans Merise (à partir de la version 2), où ils sont tolérés. Ils

sont, en effet, présents, sous des noms d’emprunts, à plusieurs « endroits » :

activitéspartenaires

mémorisationflux de données

Nom

Nom activité

Nom

opérationsacteurs

stockage (??)flot de données

Nom opération Nom acteur

Modèle Conceptuel de CommunicationModèle Conceptuel de Communication

Modèle Conceptuel d’ActivitéModèle Conceptuel d’Activité

Page 43: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

E05

Alain VAILLYDiapositive n° 43 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.4) Dans la méthode Merise

Administrer lesventes

CLIENT

Modèle Conceptuel de CommunicationModèle Conceptuel de Communication

TRANSPORTEUR

Gérer les stocksEt transport

Stockerphysiquement

Commande

Article

E02

E01

E03 E06

E08E04

E08

Page 44: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 44 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.4) Dans la méthode Merise

Historique desventes

Client

Modèle Conceptuel d’ActivitéModèle Conceptuel d’Activité

Centrale achat

FournisseurRéapprovisionner

Acheter

Réceptionner

Vendre

Cdes centrale achat

Catalogue

Commandes

Réassortiment

Marchandises

Retours

Invendus

Etat ventes

Articles reçus

Art.disponiblesArt. en ruptureArticles en vente normale

Articles en solde

Achats normaux

Achats en solde

Articles rendus

Page 45: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 45 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.5) Les DFD et la méthode SADT

Même si, officiellement, SADT n’utilise pas de diagrammes de flots de données, il y a des ressemblances entre un actigramme et un DFD. Un

actigramme sert à modéliser un processus, avec toutes ses composantes :

Activité

Contrôles

Entrées

Mécanismes

Sorties

Entrées : données à transformer par l’activité

Sorties : données transformées par l’activité

Mécanismes : moyens nécessaires pour mettre en œuvre l’activité

Contrôles : données dont l’utilisation influe sur le processus

actigramme = DFD avec des actigramme = DFD avec des données de contrôle et des données de contrôle et des

mécanismes et sans les mécanismes et sans les stockages.stockages.

Actigramme = processusActigramme = processus

Page 46: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 46 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.5) Les DFD et la méthode SADT

Concevoir

Fabriquer

Vendre

Commandes

Statistiques de vente

Patrons

Robes

Factures

Matières premières

Mode

Pas plus de 7 Pas plus de 7 processus par niveauprocessus par niveau

Page 47: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 47 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.5) Les DFD et la méthode SADT

Préparerun plat

Epluchures

Préférences

Recette Régime

Viande

Farine

Légumes

Fruits

Four Cuisinière Robot

Plat principal

Dessert

Pâtée du chien

Si C1 est vraie et si M1 disponible alorsS1, S2 = f(E1, E2)

Finsi

Si C1 est vraie et si C3 est fausse et si M1 disponible alorsSi qualité (E1) = bonne alors

S1, S2 = f(E1, E2)E1 et E2 disparaissent

FinsiFinsi

E1 E2 C1 M1 S1 S2

E1 (dont qualité = fausse) E2 C1 (non C3) M1 S1 S2 (non E1) (non E2)

Avec des légumes et de la viande, en utilisant le four, et en suivant une recette, on produit un plat

principal et des épluchures.

Avec des légumes de mauvaise qualité et de la viande, en utilisant le four, et en suivant une recette et sans régime,

on produit un plat principal et des épluchures, en faisant disparaître

viande et légumes.

Page 48: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 48 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.6) Les DFD et les SSD de JACKSON

La description des traitements, dans la méthode JSD, fait appel aux SSD. Ces SSD sont des DFD bien plus complets et bien moins ambigus. Il y a

deux types de processus, des « ordinaires » et d’autres de synchronisation, des flots de données et des vecteurs d’états.

processusentités externes

vecteur étatflot de données

P

D

D

flot de données = file flot de données = file d’attente infinied’attente infinie

vecteur état = un par vecteur état = un par processusprocessus

System Specification DiagramSystem Specification Diagram

Page 49: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 49 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.6) Les DFD et les SSD de JACKSON

P1 D P2

Le processus P1 est connecté à un Le processus P1 est connecté à un processus P2 par un flot D de données processus P2 par un flot D de données

produites par P1 et consommées par P2.produites par P1 et consommées par P2.

P1 D P2

Plusieurs processus P1 sont connectés à Plusieurs processus P1 sont connectés à plusieurs processus P2 par un flot D de plusieurs processus P2 par un flot D de

données, produites par les P1 et données, produites par les P1 et consommées par les P2.consommées par les P2.

Le processus P2 est connecté à un Le processus P2 est connecté à un processus P1 par le vecteur d’état D de P1, processus P1 par le vecteur d’état D de P1, P2 lisant directement dans le vecteur de P1.P2 lisant directement dans le vecteur de P1.

P1 D P2

Le processus P2 est connecté à des Le processus P2 est connecté à des processus P1 par leur vecteur d’état D, P2 processus P1 par leur vecteur d’état D, P2 lisant directement dans le vecteur des P1.lisant directement dans le vecteur des P1.

P1 D P2

dimension Ndimension N

Page 50: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 50 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.6) Les DFD et les SSD de JACKSON

Le processus P3 est connecté à deux Le processus P3 est connecté à deux processus P1 et P2, par des flots de données processus P1 et P2, par des flots de données

D et E. Les flots sont consommés en D et E. Les flots sont consommés en suivant une loi précise.suivant une loi précise.

Le processus P3 est connecté à deux Le processus P3 est connecté à deux processus, P1 et P2, par des flots de processus, P1 et P2, par des flots de

données D et E. Les flots sont consommés données D et E. Les flots sont consommés de façon aléatoire.de façon aléatoire.

P1 D

P3

P2 E

P1 D

P3

P2 E

La LOI est précisée dans la La LOI est précisée dans la spécification du processus P3.spécification du processus P3.

Page 51: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 51 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

3) Les DFD, ailleurs3.6) Les DFD et les SSD de JACKSON

C Clients CommandesCO

Fonction F3

(schéma dû à M. JACKSON)(schéma dû à M. JACKSON)

E

KO

F3

CV OV

processusprocessus

flot de donnéesflot de donnéesvecteur d’étatvecteur d’état

Page 52: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 52 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

4) Les DFD, un essai de synthèse4.1) Ce que sont les DFD

Les DFD sont :

- un formalisme largement répandu,

- qui correspond à un besoin,

- qui souffre d’un certain nombre de défauts :

+ ambigu,

+ non formel,

+ sans ref. à un modèle qcq de communication

processusprocessusentité externeentité externe

stockagestockageflot de donnéesflot de données

G.P. RANDELLG.P. RANDELL

R. FRANCER. FRANCE

Page 53: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 53 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

4) Les DFD, un essai de synthèse4.2) Ce qu’il faudrait qu’ils soient

Deux questions sans réponse :

- X = f (a, b) ou bien X = f (a) ??

- synchrone ou asynchrone ??

Les DFD doivent « traiter » ces deux

problèmes.

Les messages arrivés mais Les messages arrivés mais pas encore « lus » sont-ils pas encore « lus » sont-ils

conservés ou bien détruits ?conservés ou bien détruits ?

Comment passer des Comment passer des entrées aux sorties ??entrées aux sorties ??

a

S

P1X

U

P2

P3

P4

Y Z

T

b

Que se passe-t-il à l’entrée ??Que se passe-t-il à l’entrée ??

Page 54: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 54 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

4) Les DFD, un essai de synthèse4.3) Ce qu’en fait R. FRANCE

DFD selon R. FRANCE = formalisme de DE MARCO

+ notion de flot de contrôle

+ notion de file d’attente+ automates de MEALY !!+ automates de MEALY !!

+ notion de paquet de messages

flot synchrone

flot asynchrone avec variable

flot asynchrone avec file d’attente (infinie)

+ ...+ ...

Page 55: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 55 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

4) Les DFD, un essai de synthèse4.3) Ce qu’en fait R. FRANCE

Le flot asynchrone avec file Le flot asynchrone avec file d’attente infinie i1 est éclaté en d’attente infinie i1 est éclaté en

trois flots o1, o2 et o3.trois flots o1, o2 et o3.

Le flot asynchrone avec Le flot asynchrone avec variable o1 est composé des variable o1 est composé des

deux flots i1 et i2.deux flots i1 et i2.

Le flot synchrone o1 est Le flot synchrone o1 est composé des flots i1 et i2.composé des flots i1 et i2.

o1i1

i2

i1

i2

o1

o2

o1

o3

i1

Page 56: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 56 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

4) Les DFD, un essai de synthèse4.4) Ce qu’en fait G.P. RANDELL

DFD selon G.P. RANDELL = formalisme de DE MARCO

+ nommage des flots relativement aux processus

+ lien entre entrées (ou sorties)

flot nommé

flots liés

i1

Page 57: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 57 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

4) Les DFD, un essai de synthèse4.4) Ce qu’en fait G.P. RANDELL

La prise en compte par P de La prise en compte par P de i1 produira o2 ; celle de i2 i1 produira o2 ; celle de i2

donnera o1.donnera o1.

i1 et i2 sont nécessaires pour i1 et i2 sont nécessaires pour déclencher le processus P.déclencher le processus P.

i1 ou i2 suffit à déclencher le i1 ou i2 suffit à déclencher le processus P.processus P.

i1

i2o1P

i1

i2o1P

i1

i2 Po1

o2

a

ab

b

Page 58: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 58 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

4) Les DFD, un essai de synthèse4.4) Ce qu’en fait G.P. RANDELL

P

P

D

D

i3

i2

i3

i2

o2

o1

i1

o2

o1

i1b

ab

a

sans extensionssans extensions

avec avec extensionsextensions

No CommentNo Comment ! !

Page 59: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 59 IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

5) Conclusion

Formalisme utile … à la condition que l’on ajoute les extensions proposées par :

G. P. RANDELL

R. FRANCE

indispensableindispensable

souhaitablesouhaitable

Page 60: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

Alain VAILLYDiapositive n° 60

Bibliographie (sommaire)

IUP MIAGE - Université de NANTES

M.E.D.A.L.M.E.D.A.L.

Pour compléter la formation ...

la référence :-)

• P. ANDRE, A. VAILLY, « Conception des systèmes d’information ;Panorama des méthodes et des techniques », Editions Ellipses, janvier 2001,ISBN 2-7298-0479-X

• C. ASHWORTH, M. GOODLAND, « SSADM, a practical approach », Mc Graw Hill Book Company Europe, 1990, ISBN 0-07-707213-8

Page 61: M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 2ème

M.E.D.A.L.M.E.D.A.L.

Alain VAILLYDiapositive n° 61

Fin

IUP MIAGE - Université de NANTES