1 / 24

DIAGRAMMI DI FLUSSO DEI DATI

DIAGRAMMI DI FLUSSO DEI DATI. Introduzione ed esempio. DIAGRAMMI DI FLUSSO DI DATI. L'attenzione è rivolta soprattutto alla componente funzionale , mentre i dati giocano un ruolo subordinato. Caratteristiche:

burke
Download Presentation

DIAGRAMMI DI FLUSSO DEI DATI

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. DIAGRAMMI DI FLUSSO DEI DATI Introduzione ed esempio Diagrammi di flusso dei dati

  2. DIAGRAMMI DI FLUSSO DI DATI L'attenzione è rivolta soprattutto alla componente funzionale, mentre i dati giocano un ruolo subordinato. • Caratteristiche: • definizione delle interazioni tra il sistema (il dominio applicativo di interesse) e il mondo esterno • scomposizione gerarchica del sistema in processi (funzioni, attività nel dominio applicativo) collegati tramite flussi di dati • descrizione con l’uso del diagramma di flusso di dati - "Data Flow Diagram" Diagrammi di flusso dei dati

  3. deposito processo agente esterno (data flow) (process) (external agent) (data store) flusso di dati ) acquisisci cliente ordine ordine del fornitore ordine cliente acquisito Elementi di base dei DFD Si basano su una notazione grafica che mostra il flusso dei dati e le trasformazioni applicate ad essi dall’ingresso all’uscita del sistema; ciascun elemento è identificato da un nome (etichetta) esempio: Diagrammi di flusso dei dati

  4. E' un'attività di trasformazione, che acquisisce dati in input e li trasforma in dati di output. Ogni processo: deve essere collegato ad almeno un flusso di dati in input e ad almeno uno in output i flussi in output devono essere diversi rispetto ai flussi di input (in quanto oggetto di una trasformazione) Processo (Funzioni / Trasformazioni) Diagrammi di flusso dei dati

  5. Indica un flusso di materiale (dati) omogeneo: ha una direzione connette due elementi del sistema uno dei due elementi è necessariamente un processo o un agente esterno che produce il flusso o lo acquisisce Flusso di dati Diagrammi di flusso dei dati

  6. è un archivio, di dati permanenti, a cui i processi del sistema possono accedere, in lettura e/o in aggiornamento è, per definizione, statico: mentre il flusso trasporta i dati, che sono quindi "in movimento", nel deposito i dati sono messi "a riposo", disponibili per essere trattati dai processi acquisizio ne ordini ordini ordini ricevuti Deposito (data store) Diagrammi di flusso dei dati

  7. è un elemento/sistema esterno, con il quale il sistema da analizzare scambia informazioni in input e/o in output (sorgente o pozzo di flussi) può essere una persona, un'organizzazione, un sistema hardware / software, un oggetto qualsiasi come ogni sistema, potrebbe essere analizzato, ma: l'agente esterno è da considerarsi come una "scatola nera", della quale non ci interessano le caratteristiche interne ci interessano solo gli scambi di dati (flussi) tra l'agente esterno ed il sistema da analizzare Agente esterno Diagrammi di flusso dei dati

  8. Processo: tipologie di trasformazione Diagrammi di flusso dei dati

  9. Processo: tipologie di trasformazione Diagrammi di flusso dei dati

  10. il flusso può riferirsi a: dati organizzati in strutture (es. ordini memorizzati in un archivio) o non strutturati (es. reclami, risposte) zero, una o più occorrenze (es. dal deposito ordini possono essere letti da zero a molti ordini) di un dato reclami tratta risposte ordini ordini reclami ricevuti Composizione del flusso di dati Diagrammi di flusso dei dati

  11. Consente la connessione “asincrona” tra due processi acquisizio evasione ne ordini ordini ordini ordini ricevuti ricevuti ordini Ruolo del deposito il processo che accede ai dati contenuti nel deposito (es. evasione ordini) può iniziare la propria attività in un momento successivo al termine dell'attività del processo che li memorizza (es. acquisizione ordini) Quando la connessione tra processi avviene senza il tramite di un deposito, i processi sono "sincroni": il secondo processo inizia la propria attività immediatamente al termine dell'attività del primo Diagrammi di flusso dei dati

  12. flussi diversi possono aggiornare e/o leggere il medesimo deposito: ciascuno di essi corrisponde ad un determinato sottoinsieme del deposito è anche lecito che il medesimo flusso aggiorni e legga il deposito ordini via posta ordini da evadere ordini ordini già evasi ordini via telefono contratti contratti contratti stipulati stipulati Deposito e flussi di dati • i flussi di dati che entrano in un deposito lo aggiornano, mentre quelli che ne escono lo leggono i flussi in input al deposito, e in output dal deposito, aggiornano o leggono un sottoinsieme dei dati contenuti nel deposito, non necessariamente l'intero deposito: Diagrammi di flusso dei dati

  13. l'individuazione degli agenti esterni è la base per la definizione del contesto del sistema gli agenti esterni corrispondono alle particolari entità del "mondo esterno" con cui il sistema è in relazione definire gli agenti esterni, e i flussi di dati che essi scambiano con il nostro sistema, permette di precisare i "confini" del sistema che stiamo analizzando: le attività che producono i flussi indirizzati verso gli agenti esterni sono interne al sistema le attività che producono i flussi che arrivano dagli agenti esterni sono al di fuori del sistema Ruolo degli agenti esterni Diagrammi di flusso dei dati

  14. ogni sistema è in relazione con il "mondo esterno", dal quale riceve input e verso il quale produce output Z "il X sistema" Deposito W Y Diagramma di contesto il diagramma di contesto rappresenta le interazioni tra il sistema e il "mondo esterno" • un solo processo, che rappresenta il sistema nella sua globalità • tutti gli agenti esterni • i flussi che agenti esterni e sistema si scambiano • eventuali depositi Diagrammi di flusso dei dati

  15. ogni processo può essere scomposto in sottoprocessi (‘eplosione’ di un processo): la scomposizione origina un nuovo diagramma regola di scomposizione: i flussi di input e di output collegati al processo "padre" devono essere collegati anche ai processi "figli" (padri e figli devono avere i medesimi input ed output "netti” - regola di continuità dei flussi) la scomposizione è reversibile: è cioè possibile aggregare più processi in un macro-processo Scomposizione dei processi DFD articolati su più livelli il meccanismo di scomposizione dei processi permette di rappresentare le funzionalità di un sistema a diversi livelli di dettaglio: • dal diagramma più sintetico, con un unico processo (contesto) • attraverso una serie di diagrammi intermedi • fino ai diagrammi di dettaglio, che evidenziano i processi elementari (non ulteriormente scomposti) Diagrammi di flusso dei dati

  16. x z processo 2 y Diagramma di scomposizione del processo 2 x deposito 2.1 "X" z y 2.2 2.3 Scomposizione dei processi Ciascuna processo è identificato oltre che dal nome da un numero; i processi figli sono identificati con lo stesso numero del padre seguito da un altro numero progressivo, con una notazione ‘punto’ Es. n.ro padre 2 n.ri figli 2.1, 2.2, 2.3 n.ro padre 2.2 n.ri figli 2.2.1, 2.2.2, 2.2.3 Diagrammi di flusso dei dati

  17. x diagramma di contesto z x 0 z y diagramma di scomposizione di primo livello x x 1 z 3 2 z y scomposizione processo 1 1.4 scomposizione processo 3 1.1 3.3 3.2 1.3 1.2 3.1 scomposizione processo 2 2.1 2.2 DFD articolati su più livelli Diagrammi di flusso dei dati

  18. * connessione logica ‘AND’ tra flussi Å OR esclusivo tra flussi OR tra flussi C A A C P B F * P Å D E D B A C P B * D E Altri simboli utilizzati Diagrammi di flusso dei dati

  19. Problemi della scomposizione 1. In che modo (secondo quali criteri) è opportuno partizionare un processo? • sono state proposte diverse tecniche per aiutare l'analista nella scomposizione. • "eventi" a cui il processo deve rispondere, e definizione di un sottoprocesso per ciascun evento, che tratti l'evento in modo completo producendo tutte le "risposte" necessarie per soddisfarlo • scomposizione in base a ‘partizionamenti’ nel dominio applicativo 2. In quanti sottoprocessi bisogna partizionare ciascun processo? • non esiste una regola vera e propria. Il numero dei sottoprocessi dipende dal tipo di processo e dai criteri (dalla tecnica) utilizzata per il partizionamento • poiché ogni scomposizione genera un nuovo diagramma, è importante che il diagramma risultante risulti comprensibile, e che pertanto il numero di (sotto) processi contenuti non sia troppo elevato • l'applicazione ai DFD di studi di psicologia sperimentale hanno portato a proporre un numero indicativo di 7 (+ o - 2) sottoprocessi per ogni processo (sono numeri da prendere con buon senso, non da applicare in modo meccanico) Diagrammi di flusso dei dati

  20. 3. Fino a che livello di dettaglio spingersi nella scomposizione? • Ogni processo può essere più o meno complesso, e generare quindi un numero di sottoprocessi elementari molto diverso da quelli originati da un altro processo • Le tecniche utilizzate per il partizionamento influenzano anche il numero di diagrammi prodotti nella scomposizione, ed il livello di dettaglio necessario. • Il livello analitico da raggiungere è comunque fortemente condizionato dal processo di sviluppo utilizzato, e dalle modalità di passaggio previste tra l'analisi e il disegno. Diagrammi di flusso dei dati

  21. Qualche regola • Non considerare operazioni di inizializzazione, terminazione del sistema, di gestione di errori o eccezioni • il sistema va immaginato in uno stato stabile ed invariante in cui idati di uscita sono prodotti da quelli di ingresso • individuare entrate ed uscite nette dal sistema o sua parte • evidenziarle, ad esempio, disegnandole più estrne • assegnare ai flussi nomi significativi, • assegnare ai processi nomi significativi, che esprimano le trasformazioni sui dati • evitare nomi generici ed ambigui, usare la terminologia del dominio applicativo • verificare la correttezza e la consistenza del DFD, percorrendo i flussi sia dagli ingressi alle uscite, sia risalendo dalle uscite fino agli ingressi dai quali essi dipendono Diagrammi di flusso dei dati

  22. Punti di forza attenzione posta sull'interazione tra il sistema e il mondo esterno (approccio "sistemico", e definizione chiara del contesto capacità di rappresentare qualunque tipo di sistema, a diversi livelli di astrazione intuitività, immediatezza come strumento di comunicazione costituiscono una linea guida per gli analisti, in quanto costringono a porsi le domande a cui l'analisi deve dare risposta Punti di forza e criticità dei DFD Criticità • l'approccio top-down può risultare inadeguato per sistemi dai requisiti instabili • rischi di orientamento alle soluzioni tecniche ( "come bisogna implementare" anziché al "cosa deve fare il sistema"), particolarmente nei livelli più dettagliati • le "regole sintattiche" sono limitate: la qualità dei modelli prodotti dipende fortemente dall'esperienza di chi li utilizza Diagrammi di flusso dei dati

  23. ordinazione Ristorante Fornitore fornitura pagamento ordine pasto conto ricevuta Cliente DFD - Esempio gestione ristorante Diagramma di contesto Diagrammi di flusso dei dati

  24. DFD - Esempio gestione ristorante effettua paga- mento archivio pagam. archivio giacenze fattura emette ordine fornitura Fornitore Fornitore riceve registra consumo ordini menù effettua pagamento consumo processa ordine produci conto conto ordine prendi ordine pasto ordine ricevuta pagamento Cliente Diagrammi di flusso dei dati

More Related