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.
der Subsystemarchitektur (siehe 5.1.4.5.2). Eine Zuteilung weist dabei einem Verhaltenselement<br />
(beispielsweise einer Aktion) ein Strukturelement (beispielsweise einen Port oder eine Subsystemkomponente)<br />
zu und drückt darüber aus, welcher Teil des Systems für die Realisierung des<br />
Verhaltens verantwortlich ist. Im Modell erfolgt die Zuteilung durch eine allocate-Beziehung<br />
vom Verhaltens-Element auf das Struktur-Artefakt. Die allocate-Beziehung kann laut SysML-<br />
Spezifikation eben genau für den beschriebenen Zweck verwendet werden:<br />
„Behavior allocation relates to the systems engineering concept segregating form<br />
from function. This concept requires independent models of “function” (behavior)<br />
and “form” (structure), and a separate, deliberate mapping between elements in<br />
each of these models.” [OMG07-1, S. 133]<br />
Einige der in 5.1.4.4.5 beschriebenen Verhaltenskonstrukte benötigen diese Zuteilung zwingend,<br />
für andere Elemente ist sie optional. Zwingend erforderlich ist eine Zuteilung bei der Modellierung<br />
des kontinuierlichen Versendens von Informations- oder Stoffströmen. Erst durch die Verknüpfung<br />
eines Objektknotens mit einem Strukturartefakt kann ausgedrückt werden, dass ein<br />
kontinuierlicher Strom dieses Objektes über die entsprechende Komponente verschickt wird.<br />
Weiterhin muss unterschieden werden zwischen Zuteilungen auf Portdefinitionen des SuB und<br />
der Zuteilung auf Subsysteme:<br />
• Eine Zuteilung auf Portdefinitionen des SuB ist dann erforderlich, wenn im betrachteten<br />
Teilmodell keine weitere Unterteilung in Subsysteme vorgenommen wird, aber Verhaltenskonstrukte<br />
zum Versenden von Signalen oder Objekten vorhanden sind. Jedes betroffene<br />
Verhaltenskonstrukt muss dann auf denjenigen Port oder FlowPort zugewiesen werden,<br />
über den das Signal oder der Objektstrom versendet werden soll.<br />
• Existiert im aktuellen Teilmodell eine Subsystemarchitektur, dann müssen alle Aktivitäten<br />
auf die entsprechenden Subsysteme alloziiert werden. Sollte dabei festgestellt werden,<br />
dass eine Aktivität mehr als einer Subsystemkomponente zugewiesen werden müsste, ist<br />
dies ein Indiz dafür, dass die Aktivität in weitere Subaktivitäten aufgeteilt werden sollte,<br />
bis eine eindeutige Zuteilung möglich ist. Dadurch, dass alle Portdefinitionen des SuB in<br />
der Subsystemarchitektur auf Subsysteme delegiert werden (siehe 5.1.4.5.2), ist mit der<br />
Alloziierung einer Aktivität auf eine entsprechende Subsystemkomponente auch implizit<br />
eine Alloziierung auf den per delegate-Beziehung verbundenen Port enthalten.<br />
Eine sehr intuitiv zu verwendende Methode zur Zuordnung von Verhaltensartefakten auf Strukturelemente<br />
besteht in der Verwendung von AllocateActivityPartitions, auch Swimlanes genannt.<br />
Dabei handelt es sich um rechteckige Bereiche innerhalb eines Verhaltensdiagramms, die jeweils<br />
ein Strukturelement repräsentieren. Befindet sich ein Verhaltenselement innerhalb eines dieser<br />
Bereiche, wird automatisch eine allocate-Beziehung zur zugehörigen Komponente erzeugt. In<br />
der SysML-Spezifikation wird die Funktion der AllocateAcitvityPartitions folgendermaßen definiert:<br />
„AllocateActivityPartition is used to depict an «allocate» relationship on an Activity<br />
diagram. The AllocateActivityPartition is a standard UML2::ActivityPartition, with<br />
modified constraints [. . . ].” [OMG07-1, S. 134]<br />
Im Anforderungsmodell ist die Verwendung von Swimlanes zwar empfohlen, aber optional. Eine<br />
Allocate-Beziehung kann auch manuell über die entsprechenden Funktionen des verwendeten<br />
Modellierungswerkzeugs erstellt werden. Bild 5.19 zeigt die Nutzung von AllocateAcitvityPartitions<br />
zur Zuteilung von Aktivitäten.<br />
67