Am Ende des ersten Teils dieser Blogserie zur Datenflussmodellierung habe ich einen Vorschlag zur Verfeinerung des Prozesses 3. Temperatur überwachen unterbreitet. Diesen Vorschlag gilt es allerdings noch zu diskutieren
Hier nochmals zur Erinnerung das verfeinernde Datenflussdiagramm:
Verfeinerung des Prozesses 3. Temperatur überwachen
Zwei Auffälligkeiten stechen einem dabei förmlich ins Auge:
- Es gibt Datenflüsse, die ins Nichts laufen bzw. aus dem Nichts kommen. Ist das so korrekt bzw. in der Datenflussmodellierung erlaubt?
Ja. Dies sind Datenflüsse, die im Datenflussdiagramm der gröberen Ebene (siehe Teil I) zu Terminatoren laufen bzw. von Terminatoren kommen.
Diese Terminatoren stellen in unserer Modellierung externe Partner des zu spezifizierenden Systems dar und sollten auf der gröbsten Ebene (im Datenflussdiagramm, das als Kontextdiagramm/Wurzelknoten des Modellbaums fungiert) modelliert werden. Denn hier wird noch die Umwelt des Systems mit betrachtet. Schon in der nächsten Verfeinerungsebene können diese Terminatoren weggelassen werden, womit begründet ist, dass exakt zwei Datenflüsse ins Nichts laufen und exakt zwei Datenflüsse aus dem Nichts kommen. Vergleichen Sie diese! Es sind exakt die gleichen, die im groben Diagramm mit den Terminatoren verbunden sind. Auf diese Konsistenz ist natürlich zu achten. - Durch eben erfolgte Erklärung werden Sie sich nun hoffentlich fragen, warum der Terminator Benutzer trotzdem hier im verfeinernden Diagramm modelliert ist. Die Frage ist berechtigt. Zwar lässt die Datenflussmodellierung dies zu. Die Empfehlung lautet jedoch: Modellieren Sie Terminatoren, die externe Partner darstellen nur auf oberster Ebene. In den Verfeinerungen lassen sie die Terminatoren weg und achten auf die konsistenten Datenflüsse in den beschriebenen Prozess hinein und aus dem beschriebenen Prozess heraus.
Die korrigierte Version des oben gezeigten Diagramms sieht demnach so aus:
Korrigierte Verfeinerung des Prozesses 3. Temperatur überwachen
Somit muss jedoch auch das Gesamtdiagramm der Temperatursteuerung angepasst werden.
- Der hier weggefallene Terminator Benutzer ist im Gesamtdiagramm bereits vorhanden. Hier müssen wir also nicht aktiv werden.
- Der hier weggefallene Datenspeicher Grenzwertspeicher muss im Gesamtdiagramm hinzugefügt werden.
- Der hier weggefallene Datenfluss Grenzwert zwischen dem Terminator Benutzer und dem Datenspeicher Grenzwert muss im Gesamtdiagramm hinzugefügt werden.
- Ebenso muss der hier noch gezeigte Datenfluss Grenzwert, der hier als eingehender Datenfluss in den Prozess 3.1 Differenzwert bilden modelliert ist, in das Gesamtdiagramm eingefügt werden.
Somit haben wir eine erste konsistente Modellierung über eine Verfeinerungshierarchie erreicht. Die in diesem Beitrag erklärten Regeln zur Modellierung werden übrigens als Balancing Regeln bezeichnet.
Es gibt aber noch weitere Regeln und Empfehlungen in der Datenflussmodellierung. Diese werde ich Ihnen im dritten und letzten Teil dieser Blogserie zeigen.