Analisi strutturata

Un approccio ormai classico all’analisi dei sistemi è l’"analisi strutturata", proposta alla fine degli anni ‘70 da vari autori, principalmente da Tom DeMarco del gruppo di Edward Yourdon, e da Chris Gane e Trish Sarson.

Da allora la metodologia è evoluta, includendo nuovi modelli e coprendo aspetti prima non considerati, o raffinando strumenti che mostravano dei limiti nell’uso pratico di ogni giorno. Qui prenderemo in considerazione solo gli aspetti fondamentali della metodologia, presenti fin dal primo momento in cui è stata presentata.

Il principio dell’analisi strutturata è creare un modello del sistema identificando i flussi dei dati.

I dati nascono da sorgenti esterne, come per esempio i clienti o i fornitori, vengono elaborati da processi che li trasmettono verso depositi di dati (data store) o verso destinazioni, come per esempio il manager o ancora i clienti.

Lo strumento principale di questa metodologia è il Data Flow Diagram (DFD), un disegno che evidenzia flussi, processi, depositi, sorgenti e destinazioni dei dati. E’ importante non confondere i DFD con i flow-chart: mentre questi ultimi evidenziano il controllo di varie operazioni, secondo una logica di processore che le esegue, i primi evidenziano un flusso di dati tra più processi che avvengono in parallelo.

Il DFD è sempre accompagnato da almeno altri due strumenti: il dizionario dei dati e le "mini specifiche" di ogni processo, che completano le definizioni impostate nel diagramma. Oggi è stato integrato anche il modello E-R che verrà spiegato nella prossima sezione.

Per prendere confidenza con i DFD, vediamo un piccolo esempio, scegliendo come aspetto grafico quello proposto da Gane e Sarson che a nostro giudizio è il più elegante.

In questo esempio vediamo due processi, quattro data store e due entità esterne, sorgente e destinazione dei dati. Tutti questi elementi sono poi collegati da sette flussi di dati.

I due processi sono l’acquisizione degli ordini dal cliente e il riordino ai fornitori. Questi due processi sono da considerarsi delle procedure che vengono svolte in parallelo, cioè una vendita può avvenire nello stesso momento in cui è fatto un ordine a fornitore.

All’interno di ogni processo vengono elaborati i dati "pompati" dentro attraverso i data flow, per produrre dati in uscita verso altri processi, file o entità esterne.

Il processo numero 1 riceve i dati dell’ordine dal cliente, controlla che i prodotti richiesti siano tra quelli contenuti nell’archivio prodotti, scrive dei dati nell’archivio vendite e segnala al magazzino il prelievo di alcune unità dei prodotti ordinati.

Il processo numero 2, preleva i dati dal magazzino, controlla quali articoli sono sotto scorta, quindi sceglie il fornitore più conveniente per ordinare la merce mancante.

Il dizionario dei dati e le "mini spec." formalizzano queste note esposte per ora in italiano.

Il DFD riesce a modellare molto bene le attività che vengono svolte in una azienda: i due processi potrebbero infatti essere svolti da due diversi impiegati, uno dell’ufficio vendite e uno dell’ufficio acquisti.

E’ interessante notare che gli oggetti descritti in questo modo non sono necessariamente cose che risiedono dentro un computer, ma possono essere anche trasferimenti di dati o di materiale che avvengono anche con processori umani o per avvenimenti esterni al sistema informativo o addirittura all’azienda. Al termine dell’analisi si decide quale parte è vantaggioso automatizzare con una procedura computerizzata.