Diagram datových toků

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání
Tento článek pojednává o diagramu datových toků. Možná hledáte: dark, firm, dry z oblasti produkce masa.

Data Flow Diagram (DFD, Diagram datových toků) je jeden z nástrojů pro modelování funkcí systémů (zejména informačních systémů). Pomocí DFD lze modelovat celé organizace, slouží tedy i jako nástroj podnikatelského a strategického plánování. DFD je součástí strukturované analýzy a návrhu systémů, dalšími součástmi jsou Entity Relationship Diagram (ERD), State Transition Diagram (STD), Data Dictionary a Process Specification. Modifikované DFD lze použít i pro popis real-time systémů. DFD využívá např. komerční metodika SSADM (Structured Systems Analysis and Design Method).

Historie[editovat | editovat zdroj]

Notace DFD čerpá z oblasti teorie grafů, původně byla používána v operačním výzkumu při modelování workflow v organizacích. DFD vznikl z diagramu aktivit (Activity Diagram), používaném v metodice SADT (Structured Analysis and Design Technique) na konci sedmdesátých let 20. století. Popularizátory DFD jsou Edward Yourdon, Larry Constantine, Tom DeMarco, Chris Gane a Trish Sarson. [1]

Součásti DFD[editovat | editovat zdroj]

DFD sestává z procesů, toků, skladů a terminátorů. Existuje několik způsobů zobrazení těchto komponent DFD – viz Notace DFD. [2]

Proces[editovat | editovat zdroj]

Proces (funkce, transformace – aj. Process) představuje část systému, která mění vstupy na výstupy. Symbolem procesu je kruh, ovál, obdélník nebo obdélník se zaoblenými rohy (dle druhu notace). Proces je nazýván jedním slovem, krátkou větou nebo frází, která má jasně vyjadřovat jeho podstatu.[1]

Tok[editovat | editovat zdroj]

Tok (aj. Flow, Data Flow, Dataflow) znázorňuje přesun informací (někdy též materiálu) z jedné části systému do jiné. Symbolem toku je šipka. Tok by měl mít název určující, jaké informace (nebo jaký materiál) jsou přemísťovány. Výjimkou jsou toky, kde je zřejmé, jaké informace přemisťují díky entitám, které jsou těmito toky spojeny. Přesuny materiálu jsou modelovány v systémech, které nejsou jen informačního charakteru. Tok by měl přenášet pouze jeden typ informací (materiálu). Šipka znázorňuje směr toku (může být i obousměrná, pokud jsou informace z/do entity logicky závislá – např. otázka a odpověď). Toky propojují procesy, skladiště a terminátory.[1]

Toky materiálu v DFD

Sklad[editovat | editovat zdroj]

Sklad, skladiště (aj. Datastore nebo Data Store) slouží k uložení dat k pozdějšímu použití. Symbolem skladu jsou dvě vodorovné čáry, další způsob zobrazení viz Notace DFD. Název skladu bývá podstatné jméno v množném čísle (např. Objednávky) – odvozuje se od vstupních a výstupních toků skladu. Sklad nemusí být ve skutečnosti jen datovým souborem, může to být např. i složka s papírovými dokumenty, kartotéka, optické disky. Zobrazení skladu v DFD je tedy nezávislé na implementaci. Tok vycházející ze skladu většinou znázorňuje čtení dat uložených ve skladu a tok do skladu vyjadřuje většinou zápis nebo aktualizaci dat (někdy také vymazaní/odstranění dat).[1]

Terminátor[editovat | editovat zdroj]

Terminátor (aj. Terminator) představuje externí entity, které komunikují se systémem a stojí vně systému. Mohou to být např. různé organizace (např. banka), skupiny lidí (např. zákazníci), úřady (např. finanční úřad) nebo také oddělení (např. personální odbor) téže organizace, které ovšem nepatří do modelovaného systému. Terminátorem může být i jiný systém, s kterým modelovaný systém komunikuje.[1]

Pravidla vytváření DFD[editovat | editovat zdroj]

Názvy entit by měly být srozumitelné i bez dalších komentářů a poznámek. DFD je tvořen systémovým analytikem na základě interview s uživateli systému. Je určen vývojářům systému na jedné straně a na druhé straně zadavateli projektu, proto by měly být názvy entit přizpůsobeny jak odborníkům na modelovanou doménu, tak i laikům. Měly by být obecné (nezávislé např. na konkrétních osobách vykonávajících danou činnost) a přesto by měly jasně specifikovat danou entitu. Procesy by měly být očíslované pro jednodušší orientaci v diagramu a odkazování na konkrétní procesy. Číslování je náhodné, nutné je však zachovat konzistenci napříč všemi úrovněmi DFD (viz Hierarchie DFD). DFD by měl být přehledný, jako maximální počet procesů v jednom DFD je doporučován 6 až 9, minimum jsou 3 procesy v jednom DFD.[1][2] Výjimkou je tzv. kontextový diagram, kde je jediný proces symbolizující modelovaný systém a všechny terminátory, s kterými systém komunikuje.

Konzistence DFD[editovat | editovat zdroj]

DFD musí být konzistentní s dalšími modely systému – ERD, STD, Data Dictionary a s Process Specification. Každý proces musí mít svůj název, vstupy a výstupy. Každý tok by měl mít svůj název (výjimka viz Tok). Každý sklad musí mít vstupní a výstupní tok. Vstupní a výstupní toky nemusejí být zobrazeny v jednom DFD – musí ale existovat v jiném DFD, popisujícím stejný systém. Výjimkou je sklad stojící mimo systém (externí sklad), s kterým systém komunikuje.[1]

Hierarchie DFD[editovat | editovat zdroj]

Aby byly DFD přehlednější (tzn. aby neobsahovaly příliš mnoho procesů), lze vytvářet víceúrovňové DFD. DFD, které jsou ve vyšší úrovni, jsou méně detailní (agregují detailnější DFD v nižších úrovních). Nejvýše je v hierarchii kontextový DFD (viz Pravidla vytváření DFD). Následuje tzv. nultá úroveň – DFD 0, kde se začíná s číslováním procesů (např. proces 1, proces 2). V další, tzv. první úrovní – DFD 1 – se pokračuje v číslování. Např. proces 1 je v první úrovni DFD rozdělen do dalších třech procesů, které jsou očíslovány 1.1, 1.2 a 1.3. Analogicky jsou procesy v druhé úrovni (DFD 2) číslovány např. 1.1.1, 1.1.2, 1.1.3 a 1.1.4. Počet úrovní závisí na velikosti modelovaného systému. Procesy DFD 0 nemusejí mít stejný počet úrovní rozkladu. DFD 0 obsahuje nejdůležitější (agregované) funkce systému. Nejnižší úroveň by měla obsahovat takové procesy, že pro ně lze vytvořit minispecifikaci procesu (Process Specification) zhruba na jednu stránku formátu A4. Pokud by měla být minispecifikace delší, je vhodné pro daný proces vytvořit další úroveň, kde bude rozložen do více procesů. Pro přehlednou prezentaci celé hierarchie DFD lze vytvořit vertikální (průřezový) diagram. Sklad je zobrazen v nejvyšší úrovni, kde je poprvé využíván a v každé nižší úrovni také.[1]

Odkazy[editovat | editovat zdroj]

Literatura[editovat | editovat zdroj]

GANE, Chris; SARSON, Trish. Structured Systems Analysis: Tools and Techniques. New York : Improved Systems Technologies, 1977. ISBN 978-0930196004. S. 373. (anglicky) 

DEMARCO, Tom. Structured Analysis and System Specification. New York : Yourdon Press, 1979. ISBN 978-0138543808. S. 352. (anglicky) 

YOURDON, Edward. Structured Design: Fundamentals of a Discipline of Computer Program and Systems Design. New York : Yourdon Press, 1979. ISBN 978-0138544713. S. 473. (anglicky) 

PAGE-JONES, Meilir. Practical Guide to Structured Systems Design. New York : Yourdon Press, 1988. ISBN 978-8120314825. S. 384. (anglicky) 

YOURDON, Edward. Modern Structured Analysis. New York : Yourdon Press, 1988. ISBN 978-0135986240. S. 688. (anglicky) 

Reference[editovat | editovat zdroj]

  1. a b c d e f g h YOURDON, Edward. Just Enough Structured Analysis [online]. REV. 2006, [cit. 2008-12-30]. Dostupné online. (anglicky) 
  2. a b ŘEPA, Václav. Analýza a návrh informačních systémů. Praha : Ekopress, 1999. ISBN 80-86119-13-0. S. 403. (česky) 

Související články[editovat | editovat zdroj]

Externí odkazy[editovat | editovat zdroj]