Was hat der Austausch von Anforderungen mit ReqIF mit Systems Engineering zu tun?

Ich hatte schon mehrfach ReqIF erwähnt, das Requirements Modeling Framework. Aber ich habe noch gar nicht erklärt, was das eigentlich ist. Den Lesern des englischsprachigen Formal Mind-Blogs sollte ReqIF zwar ein Begriff sein, aber hier ist noch mal eine kurze Einführung in deutscher Sprache. Außerdem möchte ich noch die Frage beantworten, was ReqIF eigentlich mit Systems Engineering zu tun hat.

Eine ausführliche Beschreibung zur Systems Engineering mit ReqIF ist in meinem Artikel „Entwickeln mit System“ zu finden, der im Eclipse Magazin veröffentlicht wurde (kostenlos anfordern >>).

Was ist das Problem, das ReqIF löst?

ReqIF ist ein Austauschformat für Anforderungen. Das Problem ist schnell beschrieben: Wenn ein Hersteller einem Zulieferer Anforderungen übergibt, in welchem Format soll das gemacht werden? Die „klassischen“ Formate sind Word, Excel oder PDF. Alle drei haben das Problem, dass die Anforderungen relativ unstrukturiert und nur bedingt maschinenlesbar sind. Wenn es nur um den Text gehen würde, wäre das eine Sache; aber normalerweise sind Anforderungen ja attributiert, bspw. mit einem Status oder einer Priorität. Noch problematischer wird es, wenn der Zulieferer antworten soll, entweder mit Kommentaren oder vielleicht sogar einem Pflichtenheft.

Und nun schauen wir uns die Automobilbranche an, wo zehntausende von Anforderungen in einer Spezifikation nicht ungewöhnlich sind. Dann ist es kein Wunder, dass ReqIF aus dieser Branche kommt. ReqIF ermöglicht den verlustfreien, maschinenlesbaren Austausch von Anforderungen: Hierarchisch, mit allen Attributen und Verlinkungen.

ReqIF ist weit verbreitet

Inzwischen unterstützt jedes Werkzeug im Anforderungsmanagement, das ernst genommen werden möchte den Standard. Mit dem Werkzeug ReqIF Studio gibt es auch eine kostenlosen Editor, mit dem schnell „mal eben“ ReqIF-Dateien inspiziert und validiert werden können. ReqIF Studio basiert übrigens auf dem Eclipse RMF-Projekt, welches die quelloffene Referenzimplementierung von ReqIF darstellt. Auch leichtgewichtiges Anforderungsmanagement ist damit möglich.

Inzwischen haben alle „großen“ Werkzeuge wie DOORS®, Polarion® und Integrity® Unterstützung eingebaut, und es gibt zahlreiche neue Werkzeuge, die ReqIF-basierte Daten weiterverarbeiten.

ReqIF und Systems Engineering

Zur Frage zurück, was das ganze mit Systems Engineering zu tun hat. Zunächst ist Anforderungsmanagement eine wichtige Disziplin des Systems Engineering. Eine Nachverfolgbarkeit zu den Anforderungen wird in vielen Bereichen benötigt, von Verifizierung und Validierung (V&V) bis zum Projektmanagement.

Nicht zuletzt in Richtung Industrie 4.0 hängt viel davon ab, wie gut die Industrie das Anforderungsmanagement für die neuen Systeme beherrscht. (ReqIF – Standard für die Fertigungsindustrie)

Wenige Firmen haben eine Werkzeug, die alle Aspekte des Systems Engineering abdeckt, sondern benutzen eine heterogene Werkzeugkette. ReqIF ist ein zukunftssicherer Standard, der einen stabilen Austausch von Anforderungen zwischen den Werkzeugen ermöglicht. Dazu müssen natürlich für die entsprechenden Werkzeuge Adapter vorhanden sein oder gekauft werden. Aber durch den Einsatz eines offenen und gut dokumentierten Standards ist hier das Risiko gering, dass es Probleme gibt.

OSLC als Alternative

Es gibt natürlich alternativen für die Integration von Werkzeugen zum Teilen von Anforderungen. Bemerkenswert ist hier OSLC (Open Services for Lifecycle Collaboration). Dabei handelt es sich um einen ebenfalls offenen Standard, und zwar für Web Services (also maschinenlesbare Webdienste). Die Idee ist, dass Daten (wie bspw. Anforderungen) über einen entsprechenden OSLC-Server abgerufen werden können.

OSLC und ReqIF schließen sich eigentlich gegenseitig aus, und stellen damit zwei unterschiedliche Ansätze zur Integration von Anforderungen dar. Beide haben ihre Existenzberechtigung. OSLC ist tendenziell eher für große Organisationen geeignet, die eine sauber verwaltete IT-Landschaft haben. Denn OSLC benötigt Server mit entsprechenden Rechten und allem, was dazugehört.

ReqIF ermöglicht dateibasiertes Arbeiten, und eignet sich daher extrem gut für den Austausch von Anforderungen über Firmengrenzen hinweg, wofür es ja auch ursprünglich konzipiert wurde. Es kann aber auch für leichtgewichtiges, dateibasiertes Anforderungsmanagement benutzt werden. Die ReqIF-Dateien lassen sich problemlos in einem Datei-Repository wie Subversion oder git verwalten.

Fazit

Auch wenn es ursprünglich „nur“ fürs Anforderungsmanagement konzipiert wurde, so eignet sich ReqIF ebenfalls hervorragend als Brücke zum Systems Engineering. Es gibt zahlreiche Lösungen, von Open Source, bis hoch-integriert proprietär. Der Anwender hat hier dank offener Standards eine große Auswahl von Lösungen.

Disclaimer: Michael Jastram ist Geschäftsführer der Formal Mind GmbH und hat ReqIF Studio mitentwickelt.