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.
und Testmodell und erweitert somit die Anwendung semi-formaler Ansätze auch auf den Bereich<br />
des Systemtests. Eine Sonderstellung unter diesen integrierten Verfahren nimmt dabei SCADE<br />
ein, da hier direkt aus dem Systemmodell Produktivcode erzeugt wird, der direkt auf der Zielplattform<br />
ausgeführt werden kann. SCADE ist zusammen mit entsprechenden Prozessvorschriften<br />
in der Luftfahrt- und Automobilindustrie verbreitet und erreicht ein bisher ungekanntes Maß<br />
an Durchgängigkeit der Entwicklung von ersten Modellen bis hin zum Code.<br />
Im Bereich des Eisenbahnwesens ist die Situation prinzipiell ähnlich wie in anderen Industriezweigen.<br />
Allerdings ergab sich gegenüber der früheren Praxis mit der Einführung der CENELEC-<br />
Normen ein deutlicher Umbruch, da diese durch den risikoorientierten Ansatz zwar mehr Freiheiten<br />
bei der Produktentwicklung erlauben, andererseits aber auch den Einsatz formaler oder<br />
semi-formaler Beschreibungsmittel und eines geeigneten Prozesses zur Systementwicklung fordern.<br />
Zur Umsetzung der eher vagen Vorgaben aus den entsprechenden Normen wurden -<br />
teilweise Hersteller-intern, teilweise in Forschungsvorhaben - verschiedene Prozessmodelle entwickelt.<br />
Ein konkretes Beispiel für einen solchen weitgehend nach dem BMW-Prinzip aufgebauten, aktuellen<br />
Entwicklungsprozess für softwarelastige bahntechnische Systeme ist der OPRAIL-Prozess,<br />
der zwischen 2004 und 2006 im Rahmen des gleichnamigen Forschungsvorhabens entwickelt<br />
wurde. Dieses Vorhaben war Teil der Forschungsoffensive „Software Engineering 2006” des Bundesministeriums<br />
für Bildung und Forschung (BMBF) und hatte zum Ziel, CENELEC-konforme<br />
Entwicklungsprozesse für bahntechnische Anwendungen zu optimieren. Wesentliche Elemente<br />
des OPRAIL-Vorgehens sind dabei nach [OPR06, S. 14]:<br />
„As defined [. . . ] the main goal of the OPRAIL project is the optimization of CE-<br />
NELEC conformant development processes of safety critical applications for railway<br />
systems by means of:<br />
- Usage of formal and semi formal methodology as basis of a MDD-Process<br />
- Usage of formal verification during specification of railway systems<br />
- Usage of tools for automated test case generation and test case execution<br />
[. . . ]<br />
- Definition of an UML-subset (Safe-UML)”<br />
Im Vorhaben OPRAIL wurde somit eine Arbeitsumgebung definiert, bei der der Fokus auf der<br />
Erstellung eines normenkonformen Entwicklungsprozesses (siehe Abbildung 3.3), der Nutzung<br />
semi-formaler Beschreibungsmittel (UML) und der Integration formaler Test- und Verifikationstechniken<br />
liegt.<br />
Kernelement von OPRAIL ist eine ausführliche Prozessdefinition, die auf einem iterativ-inkrementellen<br />
Vorgehensmodell basiert und den Nutzer bei der Anwendung der verschiedenen<br />
UML-Sprachelemente methodisch unterstützt. Die Prozessdefinition und die einzelnen Schritte<br />
des Prozessablaufs sind dabei an die einzelnen Lebenszyklusphasen der CENELEC-Normen<br />
angepasst, so dass aus dem Prozess heraus konforme Artefakte und Dokumente nach DIN EN<br />
50128 erstellt werden.<br />
Mit dem OPRAIL-Prozess ist es möglich, software-lastige Systeme komplett modellbasiert zu<br />
spezifizieren, die entsprechende Software zu entwickeln und zu implementieren und die Korrektheit<br />
des Systems durch Test- und Verifikationstechniken sicherzustellen. Allerdings schließt<br />
der OPRAIL-Prozess die Erstellung der Systemanforderungsspezifikation explizit aus. Auch hier<br />
wird - wie bei vielen System- und Softwareentwicklungsprozessen - angenommen, dass eine<br />
vollständige und korrekte <strong>Anforderungsspezifikation</strong> vorliegt, ohne näher auf deren Erstellung<br />
einzugehen. Auch werden anhand der Prozessdefinition keine Anforderungen an die Systemanforderungsspezifikation<br />
selbst formuliert, um diese möglichst effizient als Ausgangsdokument<br />
für den Systementwicklungsprozess nutzen zu können.<br />
13