Definition „Datenflussplan“

Was ist ein Datenflussdiagramm?

| Autor / Redakteur: zeroshope / Stephan Augsten

Ein einfaches Datenflussdiagramm.
Ein einfaches Datenflussdiagramm. (Bild: DataFlowDiagram Esempio1 / Ilario / CC BY-SA 3.0)

Datenflussdiagramme dienen dazu, um den Weg von Informationen in Prozessen oder Systemen zu veranschaulichen. Sie kommen dann zum Einsatz, wenn Beschreibungen durch Worte nicht ausreichen. Die Zukunft der Diagramme ist allerdings wacklig.

Ein Datenflussdiagramm (DFD, auch: Datenflussplan) ist ein Werkzeug, das zur Visualisierung entwickelt wurde. Es soll den Informationsfluss in IT-Systemen und -Komponenten, meist Datenbanken und Anwendungen, verdeutlichen. Die Idee ist, dass in bestimmten Fällen einfache Symbole wie Kreise, Rechtecke und Pfeile effizienter den Weg der Daten darstellen können als Worte.

Populär wurden die Diagramme in den 1970er Jahren durch den Aufstieg der Computer. In ihrem Buch „Strukturiertes Design“ stellten die beiden Experten Ed Yourdan und Larry Constantine das DFD als ideale Visualisierungsinstrument im Computing-Bereich vor. Yourdan entwickelte das Prinzip später gemeinsam mit Peter Coad zur „objektorientierten Analyse- und Designmethode für Systeme“ weiter.

Aufbau eines Datenflussdiagramms

Ein DFD besteht aus vier Elementen:

Externe Entität: Diese gibt Daten in das System bzw. den Prozess ein. Die Entität kommuniziert mit dem System. Das gängige Beispiel in der heutigen Zeit ist das Internet. Die externen Entitäten sind auch als Akteure, Quellen, Senken, Datenbasis sowie Terminatoren bekannt.

Prozess: An dieser Stelle wird es etwas kompliziert. Wie erwähnt sollen DFDs Prozesse verdeutlichen. Dieser Prozess als Bestandteil des Diagramms ist damit allerdings nicht gemeint. Vielmehr geht es hier um Subprozesse, durch die Daten geändert oder strukturiert werden. Im Großprozess Online-Banking wäre ein solcher Unterprozess beispielsweise der Befehl „Überweisung“. Der Kontostand (Datensatz) wird geändert.

Datenspeicher: Hier werden Informationen zur späteren Kontrolle oder Verwendung abgelegt. Eine Software erstellt hierfür beispielsweise einen Ordner, der auf der Festplatte oder in der Cloud gesichert werden. In Online-Shops sind die Menüpunkte, die bisherige Bestellungen anzeigen, ebenfalls entsprechende Datenspeicher.

Datenfluss: Der Weg, den die Informationen zwischen der Entität, dem Prozess/ den Prozessen sowie dem Datenspeicher/ den Datenspeichern nehmen.

Diese Symbole werden gängig verwendet

Es gibt zahlreiche Symbolsysteme für DFDs. Die bekanntesten Vorschläge stammen von Yourdon und Coad sowie von Gane und Sarson. Beide Modelle stellen den Datenfluss über Pfeile dar. Datenspeicher werden durch eine Route symbolisiert. Die externe Entität ist in beiden Fällen ein Rechteck. Ein unterschiedliches Modell wählen die Modelle für die Prozesse. Yourdan und Coad visualisieren diese durch einen Kreis. Gane und Sarson wählen erneut ein Rechteck, das in der Mitte einen Strich hat, der es zu halbieren scheint.

Grundsätzlich gibt es keine Vorgabe darüber, welches Symbolsystem zu wählen ist. Stattdessen sollen die Symbole nur konsequent angewendet werden - ihre Bedeutung darf sich auf einem DFD nicht ändern. Jedem Datenflussdiagramm ist deshalb eine Legende beizufügen.

Die Diagramme können unterschiedliche Ebenen oder Schichten haben. Diese werden nebeneinander gezeichnet und durchnummeriert. Eine Besonderheit ist dabei bei Ebene 0 zu berücksichtigen. Dabei handelt es sich um ein Kontextdiagramm, das einen grundlegenden Überblick bietet. Die detaillierte Aufschlüsselung folgt dann auf den weiteren Ebenen.

Hat das DFD für Software-Lösungen ausgedient?

Obwohl das Datenflussdiagramm grundsätzlich für die Visualisierung des Informationsflusses in Software geeignet ist, kommt es dafür immer weniger zum Einsatz. Die entsprechenden Anwendungen haben sich interaktiven, oftmals in Echtzeit stattfindenden oder auf große Datenbanken vertrauenden Lösungen weiterentwickelt. Hier stößt die Darstellungsfähigkeit der Diagramme an ihre Grenzen.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Was ist Performance Testing?

Definition „Software Performance Testing“

Was ist Performance Testing?

Qualität, Zuverlässigkeit, Skalierbarkeit und Leistung unter Belastung – all diese Aspekte muss gute Software erfüllen. Um zu gewährleisten, dass Software dies auch leisten kann, sind Performancetests unabdingbar. lesen

Metadaten-Index für einen Data Lake in AWS

Tools und Workflows zur Datenspeicherung in der Cloud, Teil 5

Metadaten-Index für einen Data Lake in AWS

Um Daten in einem S3-basierten Data Lake sinnvoll durchsuchen zu können, müssen diese im Moment des Hinzufügens indiziert werden. Mit serverlosen Lambda-Funktionen lässt sich so ein Vorgang automatisieren. Für den eigentlichen Index verwenden wir eine DynamoDB-Datenbank, weil diese hochverfügbar ist und Zugriffszeiten im unteren Millisekundenbereich ermöglicht. lesen

IAST – die Zukunft der Anwendungstests?

Interactive Application Security Testing

IAST – die Zukunft der Anwendungstests?

Interactive Application Security Testing, kurz IAST, bietet erhebliche Vorteile gegenüber einigen anderen Testmethoden. Warum das Softwaresicherheits-Toolkit ohne IAST nicht vollständig ist, soll dieser Beitrag beleuchten. lesen

Bietet Stream Processing für Entwickler Vorteile?

Näher am Geschehen mit Echtzeit-Analyse von Datenströmen

Bietet Stream Processing für Entwickler Vorteile?

Stream Processing erlaubt Echtzeit-Datenanalysen in hochskalierbaren Umgebungen. Doch sowohl auf Seiten der Entwickler als auch bei Bestandsdaten und -anwendungen erfordert die Adaption eine Neuausrichtung. lesen

Sichere DevOps mit Seeker 2018.07

Synopsys integriert Black Duck Binary Analysis

Sichere DevOps mit Seeker 2018.07

Synopsys hat Seeker aktualisiert: Version 2018.07 der Lösung für interaktives Application Security Testing integriert Black Duck Binary und erkennt so automatisiert bekannte Schwachstellen sowie potenzielle Lizenzkonflikte in Open-Source-Komponenten. lesen

Security Awareness für Programmierer

Security-Startups im Blickpunkt: Securai

Security Awareness für Programmierer

Hacker, Malware und Cyberspionen wirksam den Zugriff auf digitale Unternehmenswerte zu verwehren ist nicht einfach. Man investiert dafür in clevere Software, durchdachte Prozesse und letztendlich auch in Security Awareness beim Mitarbeiter, der als engagierter Wächter ebenfalls Bedrohungen erkennen und eliminieren soll. Gerade Gruppen wie Programmierer bleiben bei diesen Maßnahmen aber oft inhaltlich ausgeschlossen, da man nicht auf Ihre Bedürfnisse eingeht. lesen

Grafische Analyse beim Software Development

Strukturierte Anwendungsentwicklung, Teil 1

Grafische Analyse beim Software Development

Mithilfe der strukturierten Analyse lässt sich die Software-Entwicklung effizienter gestalten. Sie ermöglicht die grafische Darstellung der Anforderungen an die Software und sorgt für mehr Übersicht. Dadurch kann sie Zeit und Kosten sparen. lesen

Wie sicher ist Ihr Embedded-System?

Sichere Systementwicklung

Wie sicher ist Ihr Embedded-System?

Das Internet der Dinge dringt in Gebiete wie Medizin, Automotive und Industrie vor. Für diese Systeme wird nicht nur die funktionale Sicherheit, sondern auch der Schutz gegen Cyber-Attacken wesentlich. lesen

Von DevOps zu DevSecOps – diese Technologien helfen

Security-Testing, Analysen und Selbstschutz

Von DevOps zu DevSecOps – diese Technologien helfen

DevOps vereint agile Entwicklungszyklen mit verlässlichem IT-Betrieb. Doch was ist mit der Anwendungssicherheit? Dieser Beitrag erörtert, wie sich Security in DevOps-Strategien integrieren lässt. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 46211720 / Definitionen)