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.
dest |−> q,<br />
adr |−> msg.adr] :<br />
q \in IF \/ msg. type = " GetExclusive "<br />
\/ writer = InMemory<br />
THEN r e a d e r s \ {msg . cmdr}<br />
ELSE ( readers \cup { writer }) \ {msg . cmdr} }<br />
ELSE {}<br />
Eine solche Spezifikation ähnelt dabei stark dem Quellcode üblicher Programmiersprachen, was<br />
auf Grund des ähnlichen Grades an Formalismus auch zu erwarten ist. Diese recht sperrige Syntax<br />
ist gleichzeitig jedoch eine sehr hohe Einstiegshürde für Nutzer ohne formal-mathematische<br />
Vorbildung.<br />
3.1.1.3. Grafische Einzelbeschreibungsmittel und kombinierte Ansätze<br />
Ein anderer Ansatz für die Beschreibung von Systemen besteht in der Nutzung formaler, grafischer<br />
Beschreibungsmittel, wobei diese üblicherweise nur einzelne Aspekte eines Systems beschreiben,<br />
z.B. dessen Verhalten, die Struktur oder Kommunikationsbeziehungen. Zu diesen<br />
gehören beispielsweise Petrinetze und Message Sequence Charts. Petrinetze [PET62] eignen<br />
sich gut zur Beschreibung von Abläufen, die in diskreten Zeitschritten ablaufen und Nebenläufigkeiten<br />
enthalten. Sie lassen sich mathematisch analysieren und können somit einer formalen<br />
Prüfung unterworfen werden. Ein anderer Aspekt von Systemen, nämlich die Kommunikationsbeziehungen,<br />
lässt sich mit Message Sequence Charts (MSC) darstellen. Dabei handelt<br />
es sich um ein hybrides Beschreibungsmittel für das sowohl eine textuelle (MSC/PR),<br />
als auch eine grafische Repräsentation (MSC/GR) vorliegt. MSCs sind von der internationalen<br />
Telekommunikations-Union (ITU) entwickelt worden und werden von dieser auch weiterentwickelt<br />
und gepflegt [ITU04].<br />
Als eine weitere Untergruppe lassen sich grafische Beschreibungsmittel abgrenzen, die mehrere<br />
Einzelbeschreibungsmittel integrieren und zu einem durchgängigen Gesamtkonzept vereinen.<br />
Dieser Gruppe sind unter anderem die Strukturierte Analyse (SA) von Tom deMarco<br />
[MAR79] zuzuordnen, die verschiedene Beschreibungsmittel (Kontextdiagramm, Datenflussdiagramm,<br />
Datenwörterbuch, Entscheidungstabellen) methodisch zusammenfasst. Aus dem Zusammenwirken<br />
der einzelnen Beschreibungsmittel der strukturierten Analyse kann Code für<br />
Programmiersprachen erzeugt werden. Allerdings lässt sich das objektorientierte Paradigma mit<br />
der SA nicht umsetzen, weswegen ihre Verwendung in Praxisprojekten rückläufig ist.<br />
Weiterhin existiert mit SCADE ein integriertes Beschreibungsmittel, das auf der formalen Sprache<br />
LUSTRE [CPH87] basiert. Es handelt sich dabei um eine Arbeitsumgebung, in der nicht nur<br />
Modelle von Systemen entwickelt werden können, sondern auch um eine Test- und Verifikationsplattform<br />
und um einen zertifizierten Code-Generator, mit dem sicherheitskritische Software<br />
direkt aus dem Modell erstellt werden kann. Der Grad an Integration ist dabei sehr hoch.<br />
3.1.1.4. <strong>Modellbasierte</strong> Spezifikation mit der Unified Modeling Language (UML) und der<br />
Systems Modeling Language (SysML)<br />
Ausgehend von den grafischen Einzelbeschreibungsmitteln wurde unter Einfluss des objektorientierten<br />
Paradigmas Mitte der 1990er Jahre eine vereinheitlichte, grafische Beschreibungssprache<br />
für Software entwickelt, die Unified Modeling Language (UML). Prinzipiell vereint die UML<br />
9