Beschränktheit und Sicherheit

Ein Ablaufdiagramm wird als beschränkt bezeichnet, wenn in keiner einzigen Stelle des Netzes jemals mehr als eine bestimmte maximale Anzahl von Marken zusammentreffen. Ist die maximale Anzahl von Marken pro Schritt gleich 1, so wird das Netz als sicher bezeichnet. Wird ein Ablaufdiagramm zur Model­lierung oder Programmierung von Steuerungen verwendet, so ist meistens nötig, dass das Netz sicher ist. (Die Schritte werden dann nur als ‚markiert‘ oder ‚nicht markiert‘ bezeichnet.)

Ueberlegen Sie sich mögliche Gründe!

Die Beschränktheit eines Ablaufdiagramms kann anhand der Eigenschaft ‚Ueberdeckbarkeit‘ unter­sucht werden.

Ueberdeckbarkeit einer Markierung:

Beim Kompilieren eines Ablaufprogrammes können Sie mit der Fehlermeldung konfrontiert werden, dass Ihr Ablaufdiagramm überdeckbar ist. Was bedeutet dies und wie können Sie das Problem lösen? Die Ueberdeckbarkeit ist eine Eigenschaft der möglichen Markierungen eines Ablaufdiagramms. Gibt es bei der Simulation eines Ablaufdiagramms zwei unterschiedliche Markierungen M1 und M2, so überdeckt die Markierung M1 die Markierung M2, wenn alle in M2 markierten Schritte auch in M1 markiert sind. Damit dies Sinn macht, muss M2 natürlich mindestens einen markierten Schritt enthalten.

Beispiel:

M1

M2

Abbildung 3: Ueberdeckende Markierungen

Im obigen Beispiel überdeckt die Markierung M1 die Markierung M2, weil

-         die Markierungen M1 und M2 unterschiedlich sind

-         alle markierten Schritte von M2, d.h. hier der Schritt ‚bereit‘ auch in M1 markiert ist

Die Markierung M1 entsteht aus der Markierung M2, wenn die Transistionen 'start & keine Störung' und 'Störung' schalten, d.h. wenn es nach dem Start des Einfüllens eine Störung gibt.

Sobald es bei der Simulation eines Ablaufdiagramms eine überdeckte Markierung gibt, so ist das Ab­laufdiagramm nicht sicher. Analysieren Sie dazu das obige Beispiel. Obwohl es aus Einfachheitsgrün­den prozessmässig nicht sehr sinnvoll ist, so zeigt es, wie überdeckte Markierungen zustande kommen. Ist dies erkannt, so lassen sich auch sehr einfach nötige Korrekturen des Ablaufdiagramms ableiten. Im folgenden Ablaufdiagramm ist eine Verbesserung vorgeschlagen.

Abbildung 4: Ablauf ohne Ueberdeckung

Will man nun die Sicherheit eines Ablaufdiagramms überprüfen, so simuliert man das Ablaufdia­gramm systematisch und notiert sich alle erzeugten Markierungen. Wenn eine neue Markierung eine bereits vor­han­dene Markierung überdeckt, so kann die Simulation abgebrochen werden, denn ein Ablaufdia­gramm ist nur dann sicher, wenn es bei dessen Simulation keine sich überdeckenden Markierungen gibt. Die systematische Simulation des Ablaufdiagramms ist das Erzeugen eines Erreichbarkeitsgraphen und wird im folgenden Abschnitt erklärt.

Wie entstehen nicht sichere Ablaufdiagramme? Zwei Möglichkeiten drängen sich auf:

1. 'Rücksprung' aus parallelen Abläufen vor den Start der parallelen Abläufe. Dies ist in Abbildung 3 mit Verbesserung in Abbildung 4 gezeigt.

2. 'Entweder-Oder'-Zusammenführung von parallelen Prozessen. In Abbildung 5 ist ein solcher Ablauf dargestellt. Sind beide 'Warte'-Schritte markiert, so besteht klar ein Vorwärtskonflikt. Es entsteht eine Markierung wie in Abbildung 5. Diese überdeckt diejenige Markierung, in welcher nur der Schritt bereit markiert ist. Das Ablaufdiagramm ist in Abbildung 6 richtig gezeichnet.

Abbildung 5: Vorwärtskonflikt