DFD (Data Flow Diagram) Riferimenti: –Pressman, Cap. 8.

Post on 01-May-2015

239 views 1 download

Transcript of DFD (Data Flow Diagram) Riferimenti: –Pressman, Cap. 8.

DFD (Data Flow Diagram)

• Riferimenti:

–Pressman, Cap. 8

Costrutti dei DFD

Terminatore (in genere un elemento con comportamento proprio)

Funzione (trasforma i flussi in ingresso in flussi in uscita)

Data-store (magazzino di dati)

Flusso dati (data flow, dati in movimento)

Programmazione e DFD

Programma funzionale

F(a)

G(b)

F(G(x))

FGx a

Raffinamento di diagrammi DFD – regola di consistenza -

a+b c

a

b

c=d+e

Regole Sintattiche per non rappresentare DFD privi di significato• Ogni funzione, flusso, data-store, deve avere un nome; nel caso dei

flussi può essere associata un’espressione prevista dal dizionario dati

• Non esistono funzioni che creano uscite dal nulla• Non esistono funzioni che non creano nessuna uscita• E’ possibile mostrare più volte un data-store ed un terminatore per

aumentare la leggibilità delle figure• Non è possibile mostrare un flusso tra una funzione e se stessa• Esiste una “regola di consistenza” tra diagrammi DFD in relazione

di raffinamento• Talvolta s’impone un numero massimo di funzioni in cui è possibile

raffinare una funzione data (7)

Il Dizionario dei Dati nei DFD

n=n|*|+

Commenti sui diagrammi DFD (1)

• Il significato di un diagramma può essere difficilmente ricostruibile, in particolare nelle situazioni ove le funzioni sono complesse o non ancora definite

• Vi sono tuttavia situazioni ove I diagrammi DFD sono molti utili (e sufficienti)

Commenti sui diagrammi DFD (4)• Permette la rappresentazione di un diagramma di

contesto• Il diagramma di contesto indica cosa deve essere affrontato

nel sistema e cosa non deve essere affrontato; cioè cosa su cui è possibile/necessario fare delle ipotesi (per questo motivo è usato anche in congiunzione con altre notazioni (ad esempio UML))

• Forza la identificazione/specifica dei requisiti in termini di relazioni (funzioni) ingresso/uscita a partire da – Eventi possibili cui il software deve rispondere– Terminatori possibili con cui il software deve interagire

Limiti della specifica DFD• Il DFD non permette di specificare aspetti del

controllo cioè della sequenza delle funzioni• IL DFD non permette di rappresentare in modo

evidente le alternative• In certi contesti, la sequenza delle operazioni non è

fondamentale o è comunque basata sulla disponibilità dei dati; tipicamente, questa fu l’idea base nei software di natura gestionali

• Oggi, gli aspetti di controllo sono divenuti, anche nei software gestionali, importanti (WFMS)