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.
schriebene Vorgehen an:<br />
• Zunächst werden die Entscheidungsregeln für das logische Problem in Form von Entscheidungstabellen<br />
erfasst. Diese Tabellen können anschließend automatisiert auf Vollständigkeit<br />
und Konsistenz geprüft werden.<br />
• Der in der Entscheidungstabelle hinterlegte Informationsgehalt kann dann in aussagenlogische<br />
Formeln übersetzt werden. Diese Formeln stellen eine Funktion dar, die basierend<br />
auf den logischen Abhängigkeiten der Entscheidungstabellen und dem aktuellen Wert von<br />
Variablen entweder „wahr” oder „falsch” zurückliefert. Die einzelnen Variablen werden<br />
dabei durch die Bedingungen im allgemeinen Bedingungsteil [MEY75, S. 19] der Entscheidungstabelle<br />
repräsentiert.<br />
• Da die aussagenlogischen Formeln boolesche Werte zurückliefern, können sie im Verhaltensmodell<br />
beispielsweise als guard-Ausdrücke [OMG07-2, S. 325] für Kontrollflusskanten<br />
verwendet werden. Als Variablen in der aussagenlogischen Formel lassen sich die Attribute<br />
eines Objekts verwenden, wodurch das Ergebnis der Auswertung des guards vom momentanen<br />
Wert der Attribute des Objektes abhängig wird. Durch dieses Konstrukt lässt sich<br />
der Kontrollfluss innerhalb von Aktivitätsdiagrammen durch den Informationsgehalt der<br />
Entscheidungstabellen steuern.<br />
Das beschriebene Vorgehen wurde bislang noch nicht in der Praxis erprobt und seine Anwendbarkeit<br />
sollte zunächst an Fallstudien verifiziert werden. Es handelt sich dabei jedoch um einen<br />
vielversprechenden Ansatz, um komplexe, logische Entscheidungsregeln möglichst einfach in<br />
ein objektorientiertes Anforderungsmodell zu integrieren.<br />
6.4.5. S5 - Systemverhalten testen<br />
Generell kommt dem Testen insbesondere bei sicherheitskritischen Systemen während des gesamten<br />
Entwicklungsprozesses eine besondere Bedeutung zu, da durch systematisches Testen<br />
eine hohe Erkennungsrate von Fehlern erzielt werden kann. Es ist daher sinnvoll, mit dem<br />
Testen möglichst früh im Lebenszyklus des Systems zu beginnen. Erklärtes Ziel des in dieser<br />
Arbeit beschriebenen Konzeptes ist aus diesem Grund, Testmethodiken bereits auf die <strong>Anforderungsspezifikation</strong><br />
anzuwenden. Dieses Konzept wird im Subprozess S5 umgesetzt und in den<br />
folgenden Unterkapiteln beschrieben.<br />
Der Subprozess S5 nimmt im gesamten Prozessablauf somit eine herausgehobene Stellung ein,<br />
da der Test des funktionalen Modells eine der wesentlichen neuen Möglichkeiten ist, die sich<br />
aus der Modellierung von Anforderungen gegenüber rein textlicher Beschreibung ergeben. Weiterhin<br />
wird durch diesen Subprozess sichergestellt, dass die Szenariensicht und das modellierte<br />
Systemverhalten zueinander konsistent sind. Durch die Integration automatisch generierter Testfälle<br />
werden darüber hinaus die händisch erstellten Szenarien ergänzt. Somit erfolgt innerhalb<br />
dieses Subprozesses nicht nur die Durchführung der Tests, sondern auch eine Optimierung und<br />
Ergänzung der Testbasis.<br />
Weil diese Testbasis die Systemebene abdeckt, kann sie zudem als Grundlage für einen späteren<br />
Systemintegrationstest bzw. Abnahmetest des realen Systems dienen. So werden beispielsweise<br />
im Lokbau bei der Fahrzeugabnahme momentan Validierungs- und Testpläne verwendet, die<br />
aus den natürlich-sprachlichen <strong>Anforderungsspezifikation</strong>en händisch abgeleitet werden. Würde<br />
jedoch ein funktionales Modell im Sinne dieser Arbeit existieren, könnten die erforderlichen<br />
Testfälle direkt aus diesem Modell abgeleitet werden. Dies würde den Aufwand zur Testfallerstellung<br />
reduzieren und die Qualität der Testfallabdeckung transparenter machen. Daher dient<br />
133