Un diagramma di flusso dei dati (DFD) è una rappresentazione visiva del flusso di dati attraverso un sistema informativo o un processo aziendale. I DFD semplificano la comprensione dei sistemi complessi e sono una risorsa popolare per l'ingegneria del software, l'analisi dei sistemi, il miglioramento dei processi, la gestione aziendale e lo sviluppo agile del software.
Un diagramma di flusso dei dati utilizza simboli grafici per illustrare percorsi, processi e repository per lo storage dei dati dal punto in cui entrano in un sistema fino all'uscita. Questo modello visivo aiuta i professionisti a identificare i modi per migliorare l'efficienza e l'efficacia dei sistemi e dei processi esistenti, oltre a crearne di nuovi.
Ad esempio, un DFD di una procedura di reclamo assicurativo visualizzerebbe com'è un reclamo:
Gli analisti possono esaminare il DFD per individuare i colli di bottiglia nel processo, rilevare le aree in cui è probabile che si verifichino frodi, aiutare gli stakeholder a comprendere il processo e apportare migliorie alla progettazione.
Negli anni 1970, gli ingegneri del software Larry Constantine e Ed Yourdon introdussero i diagrammi del flusso di dati nel loro libro, "Structured Design". Invece di concentrarsi sulle procedure software, hanno basato i DFD sul modo in cui i dati si spostano all'interno di un sistema software.
Gli informatici Tom DeMarco, Chris Gane e Trish Sarson hanno contribuito a rendere popolari i DFD, sviluppando simboli e notazioni standardizzate del flusso di dati che vengono utilizzati ancora oggi.
Inizialmente, i diagrammi di flusso dei dati sono stati utilizzati principalmente nell'ingegneria del software. Dopo aver scoperto il loro valore per la comprensione e il miglioramento dei processi e dei workflow aziendali, i professionisti aziendali hanno iniziato a utilizzarli.
Dopo l'introduzione del linguaggio di modellazione unificato (UML) negli anni '90, i programmatori di software non si affidavano più esclusivamente ai diagrammi di flusso dei dati per l'ingegneria del software. I diagrammi UML forniscono una visione completa e dettagliata delle strutture e dei comportamenti nei sistemi complessi orientati agli oggetti.
Oggi, i DFD sono utilizzati principalmente come strumenti complementari ai diagrammi e ai diagrammi di flusso UML, fornendo panoramiche di sistema di alto livello durante lo sviluppo del software.
I diagrammi del flusso di dati sono importanti perché facilitano la comprensione del flusso di informazioni attraverso sistemi o processi complessi. Visualizzando i componenti di un intero sistema, i DFD possono aiutare gli utenti a:
Esistono 4 componenti principali di un DFD:
Si tratta dei punti di inizio e fine del flusso di dati in un DFD. Le entità esterne sono posizionate ai bordi di un DFD per rappresentare l'input e l'output delle informazioni per l'intero sistema o processo.
Un'entità esterna potrebbe essere una persona, un'organizzazione o un sistema. Ad esempio, un cliente potrebbe essere un'entità esterna in un DFD che modella il processo di esecuzione di un acquisto e di ricezione di una ricevuta di vendita. Le entità esterne sono anche note come terminatori, attori, fonti e sink.
I processi sono attività che modificano o trasformano i dati. Queste attività potrebbero includere il calcolo, l'ordinamento, la convalida, il reindirizzamento o qualsiasi altra trasformazione necessaria per far avanzare quel segmento del flusso di dati. Ad esempio, la verifica del pagamento con carta di credito sarebbe un processo che si verifica all'interno del DFD di acquisto di un cliente.
Queste sono le posizioni in un DFD in cui i dati vengono memorizzati per un uso successivo. Gli storage dei dati possono rappresentare database, documenti, file o qualsiasi repository per data storage. Ad esempio, gli storage dei dati in un DFD per l'evasione dei prodotti potrebbero includere un database degli indirizzi, un database dell'inventario e un foglio di calcolo del programma di consegna.
I flussi di dati sono i percorsi che le informazioni seguono durante il trasferimento tra entità, processi e storage dei dati. Ad esempio, in un DFD per l'e-commerce, il percorso che collega un utente che inserisce le credenziali di accesso a un gateway di autenticazione sarebbe un flusso di dati.
Per rappresentare visivamente i componenti DFD vengono utilizzati simboli e notazioni standard come cerchi, ovali, frecce e rettangoli. Oggi esistono 2 serie comuni di notazioni utilizzate nei modelli di diagrammi di flusso dei dati: la metodologia Yourdon e Coad e la metodologia Gane e Sarson. Entrambi i sistemi prendono il nome dagli informatici che li hanno creati.
Le metodologie differiscono nei simboli utilizzati per rappresentare i processi e gli storage dei dati, ma per il resto sono le stesse.
Esistono 2 tipi di DFD che offrono prospettive diverse su un sistema o un processo: DFD logici e DFD fisici.
Un DFD logico fornisce una visione di alto livello dei flussi di dati necessari per eseguire i processi aziendali o di sistema, senza entrare nei dettagli tecnici o di implementazione. L'attenzione si concentra sui dati necessari e su come vengono trasferiti durante il processo per completare l'obiettivo aziendale.
I DFD logici possono rappresentare attività aziendali come l'evasione degli ordini in un magazzino, un cliente che effettua un acquisto online o l'accoglienza di un paziente in una struttura sanitaria.
Un DFD fisico visualizza l'implementazione di un sistema o di un processo, inclusi il software, l'hardware e i file necessari. I DFD fisici si concentrano sulle tecnologie, le procedure e le operazioni sottostanti di un sistema o processo.
I DFD fisici sono spesso usati per rappresentare sistemi e flussi di lavoro complessi, ad esempio il modo in cui il software della supply chain mantiene l'inventario in un magazzino o il modo in cui le cartelle cliniche elettroniche vengono spostate in modo sicuro attraverso un sistema ospedaliero.
Talvolta i diagrammi di flusso dei dati vengono creati con più livelli DFD per mostrare progressivamente più dettagli su un sistema o un processo. Questo approccio a più livelli inizia con una visualizzazione semplice e di alto livello e diventa più complesso man mano che i DFD di livello inferiore approfondiscono processi e sottoprocessi.
Chiamato anche "diagramma di contesto", un DFD di livello 0 è una vista di alto livello che visualizza l'intero sistema come un unico processo. È il più semplice e basilare dei livelli. Dovrebbe essere facilmente comprensibile per chiunque lo visualizzi, indipendentemente dalle competenze tecniche o dal ruolo lavorativo.
Un DFD di livello 1 esplora le componenti del processo di alto livello in modo più dettagliato. Quello che era un singolo processo nel DFD a livello di contesto è suddiviso in sottoprocessi che forniscono maggiori informazioni sulla funzione e sui percorsi del flusso di dati.
Il livello 2 fornisce dettagli ancora più granulari aggiungendo nuovi sottoprocessi e le loro interazioni e relazioni con i flussi di dati e gli storage dei dati. Questo livello offre una visione molto complessa delle operazioni interne di un sistema o processo.
Poiché i DFD sono pensati per essere accessibili e facili da comprendere, è insolito andare oltre la complessità del livello 2. Tuttavia, sistemi altamente complessi potrebbero richiedere i dettagli elaborati di un DFD di livello 3, che mappa ogni singolo aspetto di un processo o sistema di dati.
La maggior parte dei diagrammi di flusso dei dati segue le stesse regole di base:
Progetta una strategia dati che elimini i silo, riduca la complessità e migliori la qualità dei dati per esperienze eccezionali di clienti e dipendenti.
Watsonx.data ti consente di scalare l'analytics e l'AI con tutti i tuoi dati, ovunque risiedano, attraverso uno storage dei dati aperto, ibrido e governato.
Sblocca il valore dei dati enterprise con IBM Consulting, creando un'organizzazione basata su insight in grado di generare vantaggi aziendali.