Modellbasierte Anforderungsspezifikation sicherheitskritischer ...
Modellbasierte Anforderungsspezifikation sicherheitskritischer ...
Modellbasierte Anforderungsspezifikation sicherheitskritischer ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
formal definierte Semantik für die UML bzw. SysML vorhanden ist. Die Übersetzung des Modells<br />
in ausführbaren Code erfolgt daher auf Grundlage semantischer Definitionen, die jeder<br />
Werkzeughersteller nach eigenem Ermessen erstellt. Gleiche Modelle können somit in unterschiedlichen<br />
Werkzeugen zu unterschiedlichem ausführbaren Code führen. Die Schaffung einer<br />
einheitlichen semantischen Definition der UML-Sprachelemente (die auch in der SysML weiterverwendet<br />
werden könnte) ist jedoch Gegenstand verschiedener Forschungsvorhaben, beispielsweise<br />
des UML Sematics Project. Eine Darstellung des aktuellen Arbeitsstandes findet sich<br />
beispielsweise in [BCD07].<br />
Eine stringentere Methode zur Überprüfung des Modellverhaltens ist das systematische Anwenden<br />
von Testfällen. Dabei wird das zu untersuchende System von seiner Umgebung frei geschnitten<br />
und die Umwelt durch die Testumgebung simuliert. Bei der Testausführung versorgt diese<br />
den Testling mit bestimmten Stimuli und zeichnet die Reaktionen des Systems beispielsweise in<br />
Form von Sequenzdiagrammen auf. Das Testprotokoll kann dann mit dem Soll-Verhalten verglichen<br />
werden, wodurch sich Abweichungen übersichtlich erkennen lassen. Auf die allgemeinen<br />
Möglichkeiten und Grenzen des Testens mit Testfällen und die konkrete Umsetzung im Rahmen<br />
dieser Arbeit wird in Abschnitt 6.4.5 eingegangen.<br />
Eine nochmals strengere Möglichkeit zur Überprüfung des Systemverhaltens stellt die Anwendung<br />
des Model Checkings (Modellprüfung) dar. Dabei handelt es sich um eine Technik zur<br />
Prüfung eines Systems aus einem endlichen Automaten [CGP00, S. 3] gegen eine formale Spezifikation.<br />
Ergebnis dieser Prüfung ist eine ja/nein-Aussage, ob das Verhalten des Systems die<br />
Spezifikation erfüllt oder verletzt. Auch diese Verifikationstechnik kann mit bestimmten Einschränkungen<br />
auf ausführbare UML/SysML-Modelle angewendet werden, was in Abschnitt 6.4.6<br />
beschrieben wird.<br />
Zu beachten ist, dass zwischen der Systemverhaltenssicht und der Szenariensicht eine inhaltliche<br />
Abhängigkeit besteht. Die einzelnen Szenarien stellen dabei exemplarische, kontextabhängige<br />
Protokolle des Systemverhaltens dar, das durch die Verhaltensmodellierung bestimmt<br />
wird. Da die Szenariensicht und die Verhaltenssicht jedoch zunächst unabhängig voneinander<br />
erstellt werden, müssen Mechanismen vorgesehen werden, die beide Sichten inhaltlich aneinander<br />
koppeln. Dies geschieht durch Integration von Testausführungs- und Testerzeugungstechniken,<br />
durch die ein bidirektionaler Abgleich zwischen Szenariensicht und Verhaltenssicht<br />
möglich wird. Dadurch kann sowohl überprüft werden, ob das Verhaltensmodell des SuB die<br />
als Soll-Vorgabe dienenden Szenarien erfüllt, als auch, ob tatsächlich alle zur Beschreibung<br />
des gewünschten Systemverhaltens erforderlichen Interaktionsszenarien ermittelt wurden. Diese<br />
wechselseitige Abhängigkeit ist Grundlage der im Prozess verfolgten internen Teststrategie.<br />
Details dazu finden sich in Abschnitt 6.4.5.<br />
5.1.4.4.2. Diskussion des Beschreibungsmittels<br />
Für die Verhaltensmodellierung bieten sich zwei Beschreibungsmittel an, die fast unverändert<br />
aus der UML 2 in die SysML übernommen wurden [OMG07-1, S. 85]: Die Modellierung durch<br />
State Machines (Zustandsmaschinen) oder die Modellierung mit Activity Diagrams (Aktivitätsdiagrammen).<br />
Im Bezug auf die Ausführbarkeit sind beide Beschreibungsmittel als gleichwertig<br />
anzusehen, da sowohl durch Zustandsmaschinen, als auch durch Aktivitätsdiagramme mit geeigneten<br />
Werkzeugen ausführbare Modelle im Sinne der Definition in 5.1.4.4.1 erstellt werden<br />
können.<br />
Unterschiedlich ist jedoch der Reifegrad der Formalität beider Beschreibungsmittel. Die Zustandsmaschinen<br />
der UML/SysML basieren auf den Zustandsdiagrammen von Harel [HAR87]<br />
[OMG07-2, S. 519], für die eine formale Ausführungssemantik abgeleitet werden kann. Dies<br />
54