Hält die SysML was sie verspricht? - JAXenter

Hält die SysML was sie verspricht?

Anforderungen modellieren mit der SysML

Anforderungen werden in der SysML mit der bekannten Klassennotation dargestellt und werden mit dem Stereotyp «requirement» gekennzeichnet. Zusätzlich zu dem Namen der Anforderung können Sie auch die Eigenschaften der Anforderung notieren. In der SysML sind bereits ein paar Eigenschaften vordefiniert, wobei die wichtigsten wohl der Anforderungstext und die eindeutige Identifikationsnummer sind.

Abb. 3: Die Anforderung in der SysML

Die SysML ermöglicht eine feine Unterscheidung zwischen verschiedenen Arten von Anforderungen. So kann man zum Beispiel zwischen funktionalen und nichtfunktionalen Anforderungen unterscheiden. Hierfür können Sie einfach den Stereotyp entsprechend anpassen. In unserem Beispiel wäre das functionalRequirement und nonfunctionalRequirement.

Damit die Anforderungen untereinander und mit anderen Elementen verknüpft werden können, bietet die SysML eine Reihe von Beziehungen an. Mit einer Kopiebeziehung können Sie Anforderungen an verschiedenen Orten verwenden. Hierbei wird eine Kopie einer Anforderung erstellt. Bei dieser Kopie gilt, dass der Anforderungstext nicht editiert werden kann. Die Kopiebeziehung wird durch den Stereotyp copy ausgezeichnet. Warum es sinnvoll sein soll, Anforderungen zu kopieren, der Kopie dann eine neue ID zu geben und diese dann nicht verändern zu lassen, hat sich uns leider noch nicht erschlossen. Sinnvoll ist es, dass eine Anforderung an unterschiedlichen Stellen in der Modellierung verwendet (also referenziert) werden kann, es sich dabei aber definitiv um dieselbe Anforderung handelt.
Ein anderer Zusammenhang zwischen Anforderungen ist die Verfeinerung. Sicherlich werden Sie in Ihrem Projekt Anforderungen in unterschiedlichen Detailtiefen haben. Dabei werden die einen Anforderungen die Verfeinerung anderer Anforderungen sein. Im Anforderungsdiagramm ist für diesen Fall die Verfeinerungsbeziehung (Stereotyp refine) vorgesehen. Diese Beziehung können Sie aber auch einsetzen, um die Verfeinerung einer Anforderung mittels eines anderen Diagramms (z.B. Aktivitätsdiagramm) darzustellen.

Neben der Verfeinerung können Sie auch Ableitungen zwischen Anforderungen modellieren. Also eine Anforderung ergibt sich aus einer anderen, allerdings ist es keine Verfeinerung (z.B. eine Systemanforderung wird von einer Geschäftsprozessanforderung abgeleitet). Hierfür wartet die SysML mit der deriveReqt-Beziehung auf. Weiterhin können Sie in einem Anforderungsdiagramm auch die Testfälle modellieren. Auch Testfälle werden mit der Klassennotation modelliert und erhalten den Stereotyp testcase. Für die genaue Beschreibung der Testfälle selbst können Sie wiederum Verhaltensdiagramme heranziehen. So stellt dann der Name des jeweiligen Verhaltensdiagramms, das den Testablauf beschreibt, den Namen des Testfalls im Anforderungsdiagramm dar.Um zu zeigen, welcher Testfall welche Anforderung prüft, können Sie zwischen den beiden Elementen Beziehungen mit dem Stereotyp verify modellieren.

Abb. 4: Beziehungen in einem Anforderungsdiagramm
Nachvollziehbarkeit

Das Interessante bei der Modellierung von Anforderungen ist, dass die Nachvollziehbarkeit (traceability) von Anforderungen bezüglich der Analyse, der Architektur oder des Designs leicht dargestellt werden kann. Denn die Möglichkeit, alles in ein Modell zu packen, erlaubt es, alles in einem Tool zu halten. Dadurch werden die typischen Traceability-Probleme umgangen. Mit der SysML können Sie Anforderungen nicht nur im Anforderungsdiagramm, sondern auch in anderen Diagrammen der SysML modellieren. So können Sie zum Beispiel in einem Blockdefinitionsdiagramm Anforderungen darstellen und mit anderen Elementen in Beziehung setzen. Inwiefern das wirklich sinnvoll ist, versuchen wir in unserem Resümee zu diskutieren. Um eine Beziehung zwischen den Anforderungen und anderen Elementen dieser Diagramme herzustellen, bedient man sich einer Abhängigkeitsbeziehung mit dem Stereotyp satisfy. Falls die Beziehung allerdings nicht ausdrücken soll, dass eine Anforderung durch ein anderes Element realisiert wird, sondern lediglich ein nicht weiter definierter Zusammenhang zwischen der Anforderung und dem Element besteht, dann wird der Stereotyp trace verwendet.

Abb. 5: Die satisfy-Beziehung zu einer Anforderung
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.