Narzędzia
Portfolio Roadmapa Słownik Blog Portal dla BA
← Wszystkie artykuły
modelowanie 2026-05-31

Data flow diagrams (DFD) - modelowanie przepływu danych

8 min czytania

Jak tworzyć diagramy przepływu danych od poziomu kontekstu do szczegółów.

DFD przepływ danych modelowanie kontekst

Na trzecim spotkaniu projektu MediFlow - sieci 12 przychodni wdrażającej rejestrację online - kierownik IT i kierownik rejestracji pokłócili się o jedno zdanie: „Skierowanie trafia do systemu". Kierownik IT rozumiał to tak, że skierowanie wpada do bazy danych i tam zostaje. Kierowniczka rejestracji - że skierowanie idzie najpierw do weryfikacji w NFZ, potem do rozliczeń, a kopia wraca do pacjenta SMS-em. Tę samą frazę czytali na dwa zupełnie różne sposoby. Spór trwałby godzinami, gdyby analityk nie wstał i nie narysował tego na tablicy: prostokąt „Pacjent", kółko „Zweryfikuj skierowanie", strzałki, magazyn „Baza skierowań". Po pięciu minutach było jasne, gdzie leży nieporozumienie.

To jest cała moc Data Flow Diagrams (DFD) - diagramów przepływu danych. Nie pokazują, jak coś jest zbudowane (od tego są diagramy UML), tylko co dzieje się z danymi: skąd przychodzą, co je przetwarza, gdzie się zatrzymują i dokąd trafiają. To mapa drogowa informacji w systemie. W tym artykule pokażę Ci cztery elementy, z których składa się każdy DFD, trzy poziomy szczegółowości (0, 1, 2), pełny przykład krok po kroku na systemie MediFlow oraz błędy, które robią początkujący.

Cztery elementy DFD - alfabet diagramu

DFD ma tylko cztery symbole. To zaleta, nie ograniczenie - dzięki temu rozumie go nawet interesariusz, który widzi diagram pierwszy raz w życiu.

ElementCo oznaczaSymbolPrzykład z MediFlow
Encja zewnętrzna (external entity) Źródło lub odbiorca danych spoza systemu - człowiek lub inny system Prostokąt Pacjent, Lekarz, System NFZ (eWUŚ)
Proces (process) Czynność, która przekształca dane wejściowe w wyjściowe Kółko lub prostokąt z zaokrąglonymi rogami Zweryfikuj skierowanie, Zarezerwuj slot, Wyślij potwierdzenie
Magazyn danych (data store) Miejsce, gdzie dane spoczywają - baza, plik, rejestr Dwie równoległe linie (lub otwarty prostokąt) Baza pacjentów, Grafik lekarzy, Rejestr wizyt
Przepływ danych (data flow) Ruch konkretnej porcji danych między elementami Strzałka z etykietą Dane rezerwacji, Potwierdzenie wizyty, Status uprawnień

Najważniejsza zasada, o której zaraz przypomnę przy błędach: każdy przepływ ma nazwę rzeczownikową (co płynie), a każdy proces ma nazwę czasownikową (co robi). „Dane rezerwacji" to przepływ. „Zarezerwuj slot" to proces. Nigdy odwrotnie.

Poziomy DFD: od ogółu do szczegółu

Nie rysuje się jednego ogromnego diagramu. DFD buduje się warstwami - od lotu ptaka po szczegół. To pozwala rozmawiać z każdym interesariuszem na odpowiednim poziomie: z zarządem o poziomie 0, z deweloperem o poziomie 2.

Poziom 0 - diagram kontekstowy

System jako jeden proces (jedno kółko) i jego encje zewnętrzne dookoła. Pokazuje granice systemu: co jest w środku, co na zewnątrz, jakie dane przekraczają tę granicę. To zdjęcie satelitarne - widać miasto i drogi do niego, nie widać ulic. Encja typu „System NFZ/eWUŚ" prędzej czy później zamienia się w konkretną integrację - co wtedy trzeba ustalić, opisuję w tekście o REST API od strony analityka.

MediFlow, poziom 0: jeden proces „System rejestracji MediFlow". Wokół encje: Pacjent (wysyła: dane rezerwacji; odbiera: potwierdzenie), Lekarz (wysyła: dostępność grafiku; odbiera: lista wizyt), System NFZ/eWUŚ (odbiera: zapytanie o uprawnienia; wysyła: status uprawnień).

Poziom 1 - główne procesy

Ten jeden proces z poziomu 0 rozbija się na kilka głównych procesów (zwykle 3-7) i pojawiają się magazyny danych. To mapa miasta z dzielnicami i głównymi ulicami.

MediFlow, poziom 1 rozbija system na: 1. Uwierzytelnij pacjenta, 2. Wyszukaj dostępne sloty, 3. Zweryfikuj uprawnienia NFZ, 4. Zarezerwuj wizytę, 5. Wyślij potwierdzenie. Magazyny: Baza pacjentów, Grafik lekarzy, Rejestr wizyt.

Poziom 2 - rozwinięcie wybranego procesu

Bierzesz jeden proces z poziomu 1 i rozkładasz go na podprocesy. Nie rozwijasz wszystkich - tylko te, które są na tyle złożone, że wymagają zoomu. To plan jednej dzielnicy z budynkami.

MediFlow, poziom 2 dla procesu „3. Zweryfikuj uprawnienia NFZ": 3.1 Pobierz PESEL z danych rezerwacji, 3.2 Wyślij zapytanie do eWUŚ, 3.3 Zinterpretuj odpowiedź, 3.4 Oznacz wizytę jako refundowaną lub komercyjną. Przy braku odpowiedzi z eWUŚ - przepływ do podprocesu „Oznacz do ręcznej weryfikacji".

W praktyce 2-3 poziomy wystarczają dla większości systemów. Schodzenie głębiej rzadko ma sens - diagram staje się drobiazgowy i traci funkcję komunikacyjną.

Zasada równowagi - najważniejsza reguła spójności

Tu kryje się błąd, który psuje większość amatorskich DFD. Obowiązuje zasada równowagi (balancing): przepływy wchodzące i wychodzące z procesu na poziomie wyższym muszą się zgadzać z przepływami na jego rozwinięciu poziom niżej.

Jeśli na poziomie 1 do procesu „Zweryfikuj uprawnienia NFZ" wchodzi „dane rezerwacji", a wychodzi „status uprawnień", to na poziomie 2 te same dwa przepływy muszą przekraczać granicę rozwiniętego diagramu - ani jednego więcej, ani jednego mniej. Jeśli nagle na poziomie 2 pojawia się przepływ, który znikąd przychodzi i nigdzie z poziomu 1 nie wynika, masz niespójność. Diagramy „nie domykają się".

Jak narysować DFD krok po kroku

  1. Wyznacz granice systemu. Co jest w środku, co na zewnątrz? W MediFlow rezerwacja i weryfikacja NFZ są w środku, ale fizyczna wizyta u lekarza i sama usługa NFZ - na zewnątrz.
  2. Zidentyfikuj encje zewnętrzne. Kto/co dostarcza dane i kto/co je odbiera. Pacjent, Lekarz, NFZ.
  3. Narysuj poziom 0. Jeden proces, encje dookoła, nazwane przepływy między nimi.
  4. Wyłoń główne procesy i magazyny. Zapytaj: jakie główne czynności dzieją się z danymi? Gdzie dane spoczywają?
  5. Narysuj poziom 1. Rozbij jeden proces na kilka, podłącz magazyny, zachowaj zgodność przepływów z poziomem 0.
  6. Rozwiń złożone procesy na poziomie 2. Tylko te, które tego potrzebują. Pilnuj zasady równowagi.
  7. Zweryfikuj. Sprawdź, czy każdy proces ma wejście i wyjście (proces bez wejścia to „cud", bez wyjścia to „czarna dziura"), czy magazyny mają i zapis, i odczyt, czy nazwy są jednoznaczne. Poproś interesariusza o przeczytanie diagramu na głos.

Do narysowania nie potrzebujesz drogiego narzędzia. Zacznij od tablicy i karteczek - najszybciej wyłapiesz nieporozumienia jak to z „skierowanie trafia do systemu". Potem przepisz do draw.io, Lucidchart lub Visio. Na platformie Analify masz wbudowany edytor diagramów, w którym możesz złożyć DFD bez instalowania niczego.

DFD a inne notacje - kiedy co

NotacjaCo modelujeKiedy użyć
DFD Przepływ danych: skąd-dokąd, co się z nimi dzieje Gdy chcesz zrozumieć, jak informacja krąży w systemie i gdzie są wąskie gardła danych
BPMN Przepływ procesu biznesowego: kto, w jakiej kolejności, z bramkami decyzyjnymi Gdy modelujesz proces z udziałem ludzi, ról, decyzji i zdarzeń
Diagram klas UML Strukturę danych: klasy, atrybuty, relacje Gdy projektujesz model dziedziny dla deweloperów
ERD Strukturę bazy danych: encje, atrybuty, klucze, kardynalność Gdy projektujesz schemat bazy

W praktyce te notacje się uzupełniają. DFD pokazuje, że „dane rezerwacji" płyną do procesu, a diagram ERD pokazuje, z jakich pól ta rezerwacja się składa i jak łączy się z pacjentem. Z kolei jeśli interesuje Cię kolejność czynności i kto je wykonuje, sięgnij po BPMN. DFD i BPMN bywają mylone, bo oba mają strzałki - ale BPMN śledzi proces, a DFD śledzi dane.

Częste błędy przy tworzeniu DFD

  • Mylenie przepływu danych z przepływem sterowania. DFD pokazuje, jakie dane płyną, a nie „co dzieje się najpierw". Strzałka „pacjent klika przycisk" jest błędna - to akcja, nie dane. Poprawnie: „dane rezerwacji".
  • Proces-cud i proces-czarna dziura. Proces, który ma wyjście, ale nie ma wejścia (skąd wziął dane?), albo wejście bez wyjścia (gdzie zniknęły?). Każdy proces przekształca coś w coś.
  • Magazyn bez zapisu albo bez odczytu. Jeśli do magazynu nic nie wpływa, skąd wzięły się dane? Jeśli nic nie wypływa - po co ten magazyn istnieje?
  • Przepływ danych prosto z encji do magazynu. Dane z encji zewnętrznej muszą przejść przez proces, zanim trafią do magazynu - ktoś musi je przyjąć i zwalidować. Strzałka „Pacjent → Baza pacjentów" z pominięciem procesu to częsty błąd.
  • Złamana zasada równowagi. Przepływy na poziomie 2 nie zgadzają się z poziomem 1. Diagramy przestają tworzyć spójną całość.
  • Nadmiar szczegółu. Diagram z czterdziestoma elementami, którego nikt nie ogarnia. Jeśli nie mieści się na jednym ekranie i nie da się go opowiedzieć w minutę - zejdź poziom wyżej albo podziel.
  • Niejednoznaczne nazwy. Przepływ „XDR" albo proces „Obsłuż". Co obsłuż? Nazwy muszą być zrozumiałe dla osoby spoza zespołu.

FAQ - Data Flow Diagrams

Czym różni się DFD od BPMN?

DFD modeluje przepływ danych - co dzieje się z informacją, skąd przychodzi i dokąd trafia. BPMN modeluje przepływ procesu - kolejność czynności, role wykonawców, decyzje i zdarzenia. DFD odpowiada na pytanie „gdzie płyną dane", BPMN na „kto, co i w jakiej kolejności robi".

Ile poziomów DFD powinienem narysować?

Najczęściej 2-3: poziom 0 (kontekst), poziom 1 (główne procesy), poziom 2 (rozwinięcie najbardziej złożonych procesów). Schodzenie głębiej zwykle nie ma sensu - diagram traci czytelność i funkcję komunikacyjną.

Co to jest zasada równowagi (balancing) w DFD?

To reguła spójności: przepływy danych wchodzące i wychodzące z procesu na poziomie wyższym muszą dokładnie odpowiadać przepływom przekraczającym granicę jego rozwinięcia na poziomie niższym. Dzięki temu diagramy z różnych poziomów tworzą spójną całość.

Czy DFD nadaje się do projektów zwinnych?

Tak, jako lekkie narzędzie komunikacyjne. Nie musisz tworzyć kompletnej, wielopoziomowej dokumentacji - często wystarczy szybki DFD na tablicy, by wyjaśnić zespołowi, jak dane krążą w jednej funkcji. Wartość tkwi w rozmowie, którą diagram wywołuje, nie w samym pliku.

Jakim narzędziem narysować DFD?

Na start - kartka lub tablica z karteczkami. Do wersji cyfrowej: draw.io (darmowe), Lucidchart, Microsoft Visio, lub wbudowany edytor diagramów na platformie Analify. Narzędzie jest drugorzędne - liczy się poprawność elementów i spójność poziomów.

Podsumowanie

Data Flow Diagram to jedno z najprostszych, a zarazem najpotężniejszych narzędzi analityka. Cztery symbole, trzy poziomy szczegółowości i jedna żelazna zasada równowagi - to wszystko, czego potrzebujesz, żeby zamienić mglistą frazę „dane trafiają do systemu" w jednoznaczny obraz, na który wszyscy patrzą tak samo.

DFD nie zastępuje innych notacji - współpracuje z nimi. Pokazuje, gdzie płyną dane, podczas gdy BPMN śledzi proces, a ERD opisuje strukturę. Najlepsi analitycy dobierają notację do pytania, na które właśnie odpowiadają.

Chcesz przećwiczyć modelowanie na realnym przypadku? Złóż DFD systemu rejestracji w edytorze diagramów na platformie Analify, a potem zestaw go z diagramem ERD tej samej dziedziny - zobaczysz, jak dwie notacje opowiadają tę samą historię z różnych stron.

Czytaj też

Newsletter Analify

Nowe artykuły, porady i materiały dla analityków - prosto na email.

Dołącz do społeczności analityków biznesowych

Rozwijaj kompetencje, ucz się od praktyków i buduj karierę w analizie biznesowej.

Dołącz do Analify
SK

Sebastian Koczyk

Analityk biznesowy, twórca Analify.pl

Dołącz do społeczności analityków biznesowych - szkolenia wideo, prelekcje na żywo i wsparcie ekspertów

Sprawdź Analify