22.11.2013 Aufrufe

Modellbasierte Anforderungsspezifikation sicherheitskritischer ...

Modellbasierte Anforderungsspezifikation sicherheitskritischer ...

Modellbasierte Anforderungsspezifikation sicherheitskritischer ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

die Szenariensicht ist: Letztere zeigt nur beispielhafte Ausschnitte des tatsächlich modellierten<br />

Verhaltens. Ziel B zielt zudem darauf ab, implizite Annahmen während der Verhaltensmodellierung<br />

explizit zu machen und auf Konsistenz mit dem vorgesehenen Verhalten des Systems zu<br />

prüfen. In der Praxis wurden bei der Erstellung des Beispielmodells Fehlerszenarien für einen<br />

„Fadenfehler Gelblicht” und einen „Fadenfehler Rotlicht” der Lichtzeichenanlage spezifiziert. In<br />

der Verhaltenssicht war implizit jedoch auch das (korrekte) Verhalten für einen kombinierten<br />

Fehlerfall „Fadenfehler Gelb- und Rotlicht” enthalten. Für diesen Fehlerfall wurde durch die<br />

Analyse der Verhaltenssicht ein entsprechendes Sequenzdiagramm ermittelt, wodurch die zuvor<br />

nur implizit vorliegende Spezifikation als Szenario explizit gemacht wurde.<br />

Anzumerken ist, dass das beschriebene Vorgehen dann problematisch sein kann, wenn die Szenariensicht<br />

(also die Testfälle) und die Verhaltenssicht (also der Testling) von der gleichen Person<br />

modelliert werden. Die Gefahr besteht, dass sich ein prinzipieller Denkfehler in beiden Sichten<br />

reproduziert und somit ein eigentlich falsches Verhalten als „korrekt” getestet wird. Auch<br />

wenn innerhalb dieser Arbeit prinzipiell keine Aussagen über Rollen und personelle Abhängigkeiten<br />

getroffen werden, ist es höchst sinnvoll, zumindest die Szenariensicht und die Verhaltenssicht<br />

von zwei unterschiedlichen Personen bearbeiten zu lassen. Es ergeben sich somit für den<br />

mikroskopischen Bereich der Anforderungserstellung zwei Rollen, die der des „Implementierers”<br />

und der des „Testers” bei Softwareentwicklungsprozessesn entsprechen.<br />

Um die genauen Anforderungen an diesen Prozessschritt genauer fassen zu können, werden<br />

im folgenden Unterabschnitt 6.4.5.2 die benötigten Eigenschaften für die Testfallgenerierung<br />

mittels einer Taxonomie genauer klassifiziert.<br />

6.4.5.2. Klassifizierung des Verfahrens zur Testfallgenerierung<br />

Um das benötigte Verfahren zur Testfallgenerierung genauer definieren zu können, sollen die<br />

Anforderungen aus dem vorherigen Abschnitt gegen eine Taxonomie möglicher Verfahren evaluiert<br />

werden. Diese Taxonomie wurde von Utting, Pretschner und Legeard in [UPL06] vorgestellt.<br />

Sie unterscheiden dabei sieben Merkmale mit verschiedenen Ausprägungen, mit denen modellbasierte<br />

Testsfallgenerierungsverfahren differenziert werden können. Im Folgenden werden die<br />

für diese Arbeit relevanten Merkmale kurz vorgestellt und dabei diejenige Merkmalsausprägung<br />

ausgewählt, die ein möglichst gut angepasstes Testfallgenerierungsverfahren beschreibt.<br />

(a) Gegenstand des Modells [UPL06, S. 4/5] - Dieses Merkmal beschreibt, ob das Modell eher<br />

das Verhalten des zu testenden Systems darstellt oder eher das Verhalten der Systemumgebung.<br />

Diese Differenzierung ist entscheidend für die Strategie der Testfallgenerierung.<br />

Für das hier angewendete und oben beschriebene Vorgehen zur Testfallerzeugung ist das<br />

Verhalten des Systems maßgeblich. Das gewählte Werkzeug muss also die Analyse des<br />

Systemmodells unterstützen.<br />

(b) Modellredundanz [UPL06, S. 5/6] - hierbei wird zwischen dem Fall separater Modelle für<br />

Implementierung und Testfallgenerierung und dem Fall eines gemeinsamen Modells für<br />

beide Aufgaben unterschieden. Im vorherigen Abschnitt wurde dargelegt, dass die Tests<br />

innerhalb eines Modells durchgeführt werden sollen. Demnach liegt hier der Fall eines<br />

gemeinsamen Modells vor, den das Werkzeug beherrschen können muss.<br />

(c) Modellcharakteristik [UPL06, S. 6] - das Merkmal dient der Unterscheidung der Charakteristiken<br />

eines Modells im Bezug auf Determinismus seiner Ausgaben, der Berücksichtigung<br />

von Echtzeitanforderungen sowie der Unterscheidung von diskreten und kontinuierlichen<br />

Systemen. Für Anforderungsmodelle gilt dabei, dass sie an der Systemgrenze üblicherweise<br />

ein deterministisches Verhalten aufweisen. Die Berücksichtigung harter Echtzeitan-<br />

135

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!