
Ein Datenflussdiagramm, oft abgekürzt als DFD, dient als entscheidendes visuelles Werkzeug in der Systemanalyse und -gestaltung. Es zeigt den Fluss von Informationen durch ein System und veranschaulicht, wie Daten von der Eingabe zur Ausgabe fließen. Im Gegensatz zu Flussdiagrammen, die sich auf die Steuerlogik konzentrieren, legt ein DFD den Fokus auf die Bewegung der Daten selbst. Diese Unterscheidung ist für Architekten und Analysten von entscheidender Bedeutung, die das Wesentliche eines Systems verstehen müssen, ohne sich in zeitliche Abläufe oder Ausführungsbedingungen zu verstricken.
Die Erstellung eines DFD erfordert einen strukturierten Ansatz. Es geht nicht nur darum, Formen zu zeichnen, sondern die Logik und Datenintegrität eines Prozesses zu modellieren. Egal, ob Sie eine neue Softwareanwendung entwerfen, einen bestehenden Arbeitsablauf überprüfen oder Geschäftsprozesse abbilden – ein gut gestaltetes Diagramm schafft Klarheit. Es hilft den Beteiligten, die Systemgrenzen zu visualisieren und zu erkennen, wo die Daten entstehen und wo sie gespeichert werden.
Verständnis der Kernkomponenten 🧩
Bevor Linien und Felder gezeichnet werden, muss man die grundlegenden Bausteine verstehen. Jedes DFD besteht aus vier Hauptelementen. Die Erkennung dieser Komponenten sorgt dafür, dass das Diagramm konsistent und lesbar bleibt.
- Externe Entitäten: Dies sind die Quellen oder Ziele von Daten. Sie existieren außerhalb der Systemgrenze. Eine Entität kann ein Benutzer, ein anderes System oder eine Organisation sein. In Diagrammen werden sie typischerweise als Quadrate oder Kreise dargestellt.
- Prozesse: Hier findet die Aktion statt. Prozesse transformieren Eingabedaten in Ausgabedaten. Sie stellen die Arbeit an den Daten dar. Ein Prozess muss mindestens eine Eingabe und eine Ausgabe haben. Sie werden gewöhnlich als abgerundete Rechtecke oder Kreise gezeichnet.
- Datenbanken: Diese stellen dar, wo Daten für eine spätere Verwendung gespeichert werden. Sie können physische Datenbanken, Aktenordner oder sogar E-Mail-Postfächer sein. Sie initiieren keine Aktion, sondern halten Informationen bereit. Datenbanken werden oft als offene Rechtecke oder parallele Linien dargestellt.
- Datenflüsse: Dies sind die Pfeile, die die Komponenten verbinden. Sie zeigen die Richtung der Datenbewegung an. Jeder Pfeil muss mit dem Namen der übertragenen Daten beschriftet sein.
Es ist wichtig zu beachten, dass Daten nicht direkt von einer Entität zur anderen gelangen können, ohne dass dazwischen ein Prozess steht, und ebenso nicht von einer Datenbank zu einer Entität ohne dazwischenliegenden Prozess. Diese Regeln gewährleisten die logische Integrität des Modells.
Auswahl des Notationsstils 🖊️
Es gibt zwei Hauptmethoden zur Erstellung von DFDs. Obwohl sie die gleiche zugrundeliegende Logik teilen, unterscheiden sich ihre visuellen Darstellungen. Die Wahl der richtigen Methode hängt von der Vorliebe des Teams oder dem spezifischen Branchenstandard ab.
| Funktion | Yourdon und DeMarco | Gane und Sarson |
|---|---|---|
| Prozesse | Abgerundete Kreise | Abgerundete Rechtecke |
| Datenbanken | Offene Rechtecke | Offene Rechtecke mit dickem Rand |
| Datenflüsse | Gekrümmte Pfeile | Gekrümmte Pfeile |
| Externe Entitäten | Rechtecke | Rechtecke |
Der Yourdon- und DeMarco-Stil wird oft älteren Methodologien zugeordnet, während Gane und Sarson in der modernen strukturierten Analyse weit verbreitet ist. Unabhängig von der gewählten Form ist Konsistenz entscheidend. Das Mischen von Stilen innerhalb eines Dokuments kann Leser verwirren.
Definition der Systemgrenze 🚧
Der erste Schritt beim Erstellen eines Diagramms besteht darin, den Umfang zu definieren. Sie müssen festlegen, was innerhalb des Systems und was außerhalb liegt. Dies geschieht oft durch die Erstellung eines Kontextdiagramms, auch als Level-0-DFD bekannt.
Ein Kontextdiagramm stellt das gesamte System als einen einzigen Prozess dar. Es zeigt die interaktion auf hoher Ebene zwischen dem System und externen Entitäten. Dies bietet einen Überblick über die Daten, die in das System eingehen und aus ihm hinausgehen. Beim Zeichnen konzentrieren Sie sich nur auf Eingaben und Ausgaben. Internen Prozessen wird noch keine Detailierung gegeben.
Betrachten Sie beispielsweise ein Bibliothekssystem. Das System ist der einzelne Kreis. Externe Entitäten könnten „Bibliothekar“ und „Mitglied“ sein. Datenflüsse könnten beispielsweise „Buchausleiheanfrage“ sein, die in das System eingehen, und „Ausleihebestätigung“, die es verlassen. Diese einfache Sicht legt die Grundlage für detailliertere Aufteilungen.
Aufteilung des Prozesses 🔄
Sobald der Kontext festgelegt ist, muss das System zerlegt werden. Dieser Vorgang wird Zerlegung genannt. Dabei wird der einzelne Prozess aus dem Kontextdiagramm in mehrere Teilprozesse aufgeteilt. Dadurch entsteht ein Level-1-DFD.
Die Zerlegung erfordert Sorgfalt. Sie können keine beliebigen Prozesse hinzufügen. Jeder Teilprozess muss spezifische Datenveränderungen durchführen. Wenn ein Datenfluss in einen Teilprozess eintritt, muss er zu einer spezifischen Ausgabe führen. Wenn Daten gespeichert werden, muss dieser mit einem Datenbestand verbunden sein.
Wichtige Schritte zur Zerlegung
- Teilprozesse identifizieren:Schauen Sie sich den Hauptprozess an. Welche unterschiedlichen Aufgaben führt er aus? Teilen Sie diese Aufgaben in separate Kreise oder Rechtecke auf.
- Datenbestände verbinden:Bestimmen Sie, wo Informationen gespeichert werden. Wenn eine Aufgabe eine Aufzeichnung aktualisiert, zeichnen Sie einen Fluss zum Datenbestand.
- Datenflüsse verfeinern:Stellen Sie sicher, dass jeder Pfeil beschriftet ist. Die Beschriftung sollte die Daten beschreiben, nicht die Aktion. Verwenden Sie beispielsweise „Kundenbestellung“ statt „Bestellung senden“.
- Konsistenz prüfen:Stellen Sie sicher, dass die Datenflüsse im Level-1-Diagramm mit den Eingaben und Ausgaben des übergeordneten Prozesses im Level-0-Diagramm übereinstimmen.
Dieser Prozess kann fortgesetzt werden. Wenn ein Level-1-Prozess zu komplex ist, kann er weiter in ein Level-2-DFD aufgeteilt werden. Diese rekursive Aufteilung ermöglicht es Analysten, sich auf bestimmte Bereiche des Interesses zu konzentrieren, ohne den Gesamtzusammenhang zu verlieren.
Regeln für Zeichnen und Ausbalancieren ⚖️
Es gibt strenge Regeln, die die Erstellung von DFDs regeln. Die Verletzung dieser Regeln kann das Diagramm ungültig machen. Der wichtigste Begriff ist „Ausbalancieren“.
Ausbalancieren bedeutet, dass die Eingaben und Ausgaben eines übergeordneten Prozesses mit den Eingaben und Ausgaben seiner untergeordneten Prozesse übereinstimmen müssen. Wenn ein Level-0-Prozess eine Eingabe von „Bestellung“ hat, muss das Level-1-Diagramm zeigen, dass dasselbe „Bestellungs“-Daten in einen der untergeordneten Prozesse eingeht. Sie können auf der unteren Ebene keine neuen Daten einführen, die auf der höheren Ebene nicht vorhanden waren, es sei denn, es handelt sich um eine logische Detailinformation.
Zusätzliche Zeichnungsregeln
- Kein Datenfluss zwischen Entitäten:Daten müssen durch einen Prozess gehen. Sie können nicht direkt von einer externen Entität zur anderen gehen.
- Kein Datenfluss zwischen Datenbeständen:Datenbestände speichern statische Daten. Die Bewegung zwischen ihnen erfordert einen Prozess, der die Daten transformiert oder verschiebt.
- Kein Datenfluss in oder aus einem Datenbestand ohne einen Prozess:Ein Bestand kann Daten nicht selbst erzeugen oder empfangen. Ein Prozess muss die Interaktion steuern.
- Prozessbenennung:Benennen Sie Prozesse mit einem Verb und einem Substantiv. Dies klärt die Aktion, beispielsweise „Steuer berechnen“ oder „Lagerbestand aktualisieren“.
- Benennung von Datenflüssen:Benennen Sie Flüsse mit einem Substantivausdruck. Dies klärt den Inhalt, beispielsweise „Rechnungsdetails“ oder „Zahlungsbestätigung“.
Überprüfen und Verfeinern 🧐
Sobald das Diagramm entworfen ist, ist eine Überprüfungsphase unerlässlich. Dabei geht es um die Prüfung auf Fehler, Auslassungen und Klarheitsprobleme. Stakeholder sollten das Diagramm überprüfen, um sicherzustellen, dass es ihrem mentalen Modell des Systems entspricht.
In dieser Phase suchen Sie nach loseenden Flüssen. Das sind Pfeile, die nirgendwo hinführen. Jeder Fluss muss mit einem Prozess, Speicher oder einer Entität verbunden sein. Prüfen Sie auch auf sich kreuzende Linien. Obwohl dies nicht strikt verboten ist, können sich kreuzende Linien schwer lesbar machen. Versuchen Sie, die Linien so zu führen, dass sich keine Kreuzungen ergeben.
Ein weiterer Aspekt der Überprüfung ist die Benennungskonvention. Stellen Sie sicher, dass dieselbe Datenart im gesamten Diagramm immer mit demselben Namen bezeichnet wird. Wenn Sie sie in einem Abschnitt „Kunden-ID“ nennen, dürfen Sie sie in einem anderen nicht „Kundennummer“ nennen. Konsistenz fördert das Verständnis.
Wartung im Laufe der Zeit 🛠️
Ein DFD ist kein einmaliger Erzeugnis. Systeme entwickeln sich weiter. Anforderungen ändern sich. Wenn sich das System verändert, muss die Darstellung aktualisiert werden, um die neue Realität widerzuspiegeln. Eine veraltete Darstellung ist schlimmer als keine Darstellung, da sie Entwickler und Analysten in die Irre führt.
Richten Sie ein Versionsverwaltungssystem für Ihre Diagramme ein. Wenn eine wesentliche Änderung erfolgt, aktualisieren Sie die Versionsnummer. Dadurch können Sie die Entwicklungsgeschichte des Systementwurfs verfolgen. Es ermöglicht auch neuen Teammitgliedern, nachzuvollziehen, wie sich das System entwickelt hat.
Integration mit der Systemanalyse 📋
DFDs werden selten isoliert verwendet. Sie sind Teil eines umfassenderen Dokumentationspakets. Sie werden oft von Datensammlungen und Prozessspezifikationen begleitet. Eine Datensammlung definiert die Attribute der Datenobjekte, die im Diagramm enthalten sind. Eine Prozessspezifikation beschreibt die Logik innerhalb eines bestimmten Prozessbubbles.
Durch die Kombination dieser Dokumente erstellen Sie eine umfassende Spezifikation. Diese Dokumentation unterstützt das Entwicklungsteam bei der Erstellung des Systems. Sie stellt sicher, dass das Endprodukt mit der ursprünglichen Analyse übereinstimmt.
Schlussfolgerung zu Diagrammierungspraktiken
Die Erstellung eines Datenflussdiagramms ist eine disziplinierte Übung der Kommunikation. Es übersetzt abstrakte Anforderungen in eine visuelle Form, die leichter verständlich ist. Indem Sie die Standardkomponenten, Notationsstile und Ausgleichsregeln befolgen, stellen Sie sicher, dass das Diagramm seine Aufgabe effektiv erfüllt.
Denken Sie daran, dass das Ziel Klarheit ist. Wenn ein Stakeholder das Diagramm betrachtet und das System versteht, hat das Diagramm seine Aufgabe erfüllt. Wenn es Erklärungen erfordert, die mit der visuellen Darstellung im Widerspruch stehen, muss das Diagramm überarbeitet werden. Konzentrieren Sie sich auf den Informationsfluss, achten Sie auf Konsistenz in der Notation und halten Sie den Umfang klar. Mit Übung wird die Erstellung genauer und nützlicher Datenflussdiagramme zu einer natürlichen Komponente des Systementwurfs.











