Modellbasierte Anforderungsspezifikation sicherheitskritischer ...
Modellbasierte Anforderungsspezifikation sicherheitskritischer ...
Modellbasierte Anforderungsspezifikation sicherheitskritischer ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
innerhalb einer Aktivität. Realisiert wird die Zeitabhängigkeit über die AcceptTimeEventAction<br />
[OMG07-2, S. 238 ff.] (Zeitereignis-Aktion), die semantisch gesehen eine Spezialisierung der AcceptEventAction<br />
durch spezielle at()- und after()-Trigger ist. Die Art des Triggers legt dabei fest,<br />
ob eine bestimmte Zeitspanne (after()-Trigger) oder ein bestimmter Zeitpunkt (at()-Trigger) abgewartet<br />
werden soll. Erreicht ein Token die Zeitereignis-Aktion, wird dessen Weitergabe an die<br />
ausgehende Kante verzögert, bis der trigger aktiv wird. Syntaktisch existiert für die Zeitereignisse<br />
eine eigene Notation in Form einer Sanduhr.<br />
In Bild 5.16 wird die Verwendung einer Zeitereignis-Aktion gezeigt, bei der durch einen after()-<br />
Trigger der weitere Ablauf des Kontrollflusses um 12 Sekunden verzögert wird.<br />
act [Aktivitaett] Timing[ Timing]<br />
<br />
Start Grundstellungszeit<br />
after (12 Sek.)<br />
Schliessend<br />
<br />
Aktuelle Schrankenposition<br />
{allocatedTo = Schrankenanlage }<br />
target<br />
<br />
<br />
<br />
: Strassenverkehrsteilnehmer<br />
Abbildung 5.16.: Verwendung einer Zeitereignis-Aktion<br />
Dieses Modellierungskonstrukt kann für Anforderungsmodelle immer dann eingesetzt werden,<br />
wenn konkrete, zeitliche Vorgaben für Abläufe gemacht werden sollen, beispielsweise<br />
• bei der Modellierung der zeitlichen Randbedingungen der PZB (Dauer zwischen Beeinflussung<br />
und Bedienung der Wachsamkeitstaste, Dauer der Unterschreitung der Umschaltgeschwindigkeit)<br />
• in Verbindung mit schleifenförmigen Kontrollflüssen kann eine periodische Abarbeitung<br />
von bestimmten Aktionen modelliert werden, z.B. die in bestimmten Zeitabständen wiederkehrende<br />
Übertragung von Zugpositionen an das RBC im ETCS-Level 2<br />
Entscheidungskonstrukte<br />
Weiteres wichtiges Element bei der Verhaltens-Modellierung sind Entscheidungskonstrukte, also<br />
Verzweigungen im Kontrollfluss, bei denen anhand der Auswertung eines booleschen Ausdrucks<br />
über den weiteren Ablauf entschieden wird. Aktivitätsdiagramme bieten zwei verschiedene Möglichkeiten<br />
an, Verzweigungen zu modellieren:<br />
• Über guards an entsprechenden Kontrollflüssen und decision nodes (Entscheidungsknoten)<br />
• Über die Verwendung von conditional nodes (bedingten Knoten)<br />
Die erste Methode erzeugt kompaktere und einfacher lesbare Diagramme, wenn wenige Verzweigungen<br />
vorhanden sind, erkauft diesen Vorteil aber mit der Notwendigkeit von Ausdrücken<br />
64