SA-RT: Real Time Erweiterungen der SA

Mit Structured Analysis / Real Time (SA/RT) wird eine Methode bezeichnet, die auf der strukturierten Analyse nach DeMarco aufbaut. Für SA/RT existieren zwei verschiedene Ansätze :

Das gemeinsame Ziel beider Ansätze besteht darin, Systeme mit komplexem zeitabhängigen Verhalten zu modellieren.

Ward/Mellor-Ansatz

1985 wurde SA von Paul Ward und Stephen J. Mellor für die Spezifikation von Echtzeitsystemen erweitert. Beim Ward/Mellor-Ansatz werden die Datenflußdiagramme um folgende 3 Steuerkomponenten ergänzt:

Im DFD werden diese Steuerkomponenten mit gestrichelten Linien dargestellt.

Eine Stehlampe hat eine 50W- und 100W-Birne. Zieht man an der Schnur, werden nacheinander die Helligkeitszustände

durchlaufen (Beispiel nach /Ward/Mellor/).

Das Zustandsübergangsdiagramm (STD State Transition Diagram) stellt die Zustände dieser Lampe dar. Zu jedem Zustandsübergang wird an der Beschriftung des Pfeils das Ereignis (= Eingabesignal) angegeben, welches den Zustandsübergang auslöst und darunter die Aktion (= Ausgabesignal) die vom System ergriffen wird (Ereignis-Aktions-Marken"). Welche Ausgangssignale gesetzt werden, hängt von den Eingangssignalen und vom aktuellen Zustand ab.

Zustandsdiagramm der Stehlampe

Zustandsdiagramm der Stehlampe

Im vorliegenden Fall wird die Lampe mit einem einzigen Eingabesignal gesteuert. Die Wirkung der Ausgabesignale ist vom jeweiligen Ausgangs-Zustand abhängig. Der zugehörige Steuerprozeß ( mit 1 Eingabesignal und 4 Ausgabesignalen ) ist in Steuerprozeßdarstellung dargestellt.

Steuerprozeßdarstellung

Steuerprozeßdarstellung

Nach der Ward/Mellor-Notation wird ein bestehendes DFD um Steuerflüsse, Steuerprozesse und gegebenenfalls Steuerspeicher ergänzt (Beispiel nach /Yourdan/).

DFD mit Steuerprozessen und Steuerflüssen

DFD mit Steuerprozessen und Steuerflüssen

Hatley/Pirbhai-Ansatz

Hatley und Pirbhai entwickelten 1987 ihr eigenes Verfahren zur Modellierung von Echtzeitsystemen. Auch diese Methode baut auf der strukturierten Analyse nach DeMarco auf. Hatley und Pirbhai sehen zur Spezifikation eines Systems zwei Modelle vor:

Im Folgenden wird nur das Anforderungsmodell skizziert.

Das Anforderungsmodell betrachtet das System vor allem unter 2 Gesichtspunkten:

Ein dritter Gesichtspunkt ist die Informations- und Datenmodellierung; hierfür schlagen Hatley und Pirbhai die Verwendung der Entity-Relationship-Modellierung vor.

Keine Modellierung von Steuerprozessen

Ein wichtiger Unterschied zum Ward/Mellor-Ansatz besteht darin, dass Hatley/Pirbhai keine Steuerprozesse modellieren. Dies schlägt sich auch in der grafischen Darstellung nieder. Beim Hatley/Pirbhai-Ansatz erfolgt das Aktivieren und Deaktivieren der Prozesse eines Datenflußdiagramms durch die zugeordnete Steuerspezifikation (CSPEC). Während eine Prozeßspezifikation (PSPEC) lediglich mit einem Primitivenprozess korrespondiert (diese sind per Definition auf der niedrigsten Zerlegungsebene angesiedelt) kann eine Steuerspezifikation (CSPEC) hingegen auf jeder Strukturebene angesiedelt sein.

Steuerflußdiagramme (Control Flow Diagram CFD)

Steuerflußdiagramme ordnen die Steuerflüsse den gleichen Pfaden zu, auf denen auch Daten fließen können. Die Steuerflußdiagramme (CFD) treten paarweise mit DFDs auf und beschreiben die gleichen Prozesse wie die zugehörigen DFDs.

Die Steuersignale werden im CFD gestrichelt dargestellt.

Die Prozesse in einem CFD repräsentieren nicht die Verarbeitung der in das System eintretenden Steuerflüsse (das ist Aufgabe der Steuerspezifikationen (CSPEC)).

Die Steuerflüsse die in die Prozesse eintreten, aktivieren bzw. deaktivieren diese Prozesse nicht (das ist Aufgabe der Prozeßaktivatoren, welche sich ebenfalls in den CSPECS befinden)!

Für die Steuerflüsse in CFDs gelten grundsätzlich die gleichen Regeln wie für Datenflüsse. Das bedeutet, dass sie zwischen korrespondierenden Mutter- und Tochterdiagrammen übergeben werden können. Ein grundlegender Unterschied besteht darin, dass die internen Quellen und Ziele der Datenflüsse Primitivenprozesse sind, während die internen Quellen und Ziele der Kontrollflüsse in der Regel CSPECs sind.

Die in den Steuerflußdiagrammen (CFDs) enthaltenen CSPEC-Balken sollen die Steuerflüsse zu und von den zugehörigen Steuerspezifikationen (CSPECs) darstellen.

Steuerspezifikationen (Control Specification CSPEC)

Eine Steuerspezifikation ist stets einem CFD/DFD-Paar zugeordnet. Die Steuerspezifikationen enthalten in der Regel

Die Hatley/Pirbhai-Notation soll im folgenden beispielhaft an einem Verkaufsautomatenbeispiel (nach Hatley/Pirbhai /93/) verdeutlicht werden. Dieses Beispiel enthä:

Datenkontextdiagramm

Datenkontextdiagramm

Steuerkontextdiagramm

Steuerkontextdiagramm

Eingabe Ereignis Ausgabe Ereignis Antwortzeit
Objekt Einwurf Falschmünzen Auswurf max. 2 sec
Kundenauswahl Eingabe Produkt verfügbar Anzeigen max. 0,5 sec
    Produkt Ausgeben max. 5 sec
Münzrückgabe-
anforderung
Eingabe zurückgegebene
Münzen
Rückgabe max. 2 sec

Timing-Spezifikation

DFD 0

DFD 0

CFD 0

CFD 0

CSPEC Teil 1 - STD

CSPEC Teil 1 - STD

Steueraktion aktivierter Prozeß
  Wechselgeld ausgeben Produkt auswerfen Gültige
Auswahl holen
Kundenanforderung
akzeptieren
0 0 1
Zahlung zurückgeben 1 0 0
Neue Münze akzeptieren 0 0 0
Produkt auswerfen 1 1 0

CSPEC - Teil 2 PAT