Anforderungen verlustfrei austauschen

Gastbeitrag von | 30.11.2017

Stellen Sie sich vor, Sie wollen ein System entwickeln und benötigen dafür eine neue Komponente. Sie spezifizieren Ihre Anforderungen, sprechen mit verschiedenen Herstellern, die Ihnen diese Komponente anbieten, entscheiden sich für einen der Hersteller, beauftragen ihn und erhalten zum vereinbarten Zeitpunkt die gewünschte Lieferung. Ein schönes Szenario. Leider klappt die Praxis zwischen Auftraggeber und Auftragnehmer nicht immer so reibungslos. Im Wesentlichen gibt es hierfür zwei Gründe:

  1. Der Auftragnehmer versteht nicht genau das, was Sie sich vorgestellt haben. Für Sie waren die Anforderungen klar und eindeutig beschrieben, für ihn auch, doch die Lieferung entspricht nicht dem, was Sie sich vor Ihrem geistigen Auge ausgemalt hatten.
  2. Im Laufe der Zeit haben Sie weitere Ideen entwickelt, Verbesserungen wurden von Ihnen erkannt und neue Anforderungen formuliert.

Die offensichtliche Lösung dieser beiden Herausforderungen liegt in der Kommunikation zwischen den Partnern. Sofern es der Vertrag zulässt, lassen sich neue Anforderungen zusätzlich oder anstelle der ursprünglich definierten Anforderungen realisieren. Dennoch gestaltet sich die Zusammenarbeit nicht immer so leicht, denn es gilt technische und prozessuale Aspekte zu berücksichtigen.

Das Format zum Austausch von Anforderungen

Wenn ein Auftraggeber einem Auftragnehmer Anforderungen übergibt, in welchem Format erfolgt der Austausch? Die „klassischen“ Werkzeuge sind Word, Excel oder PDF, die jedoch alle das sogenannte Requirements Interchange Format (ReqIF)¹ nicht unterstützen. ReqIF ist ein internationaler Standard zum Austausch von Anforderungen, der durch die Object Management Group (OMG) definiert wurde. Damit dieser Standard richtig umgesetzt wird, treffen sich bereits seit vielen Jahren Hersteller und Anwender von ReqIF-Werkzeugen im ProSTEP ReqIF Implementor Forum.² Zur Orientierung für Werkzeughersteller gibt es eine quelloffene Referenzimplementierung.³ Welche Gründe sprechen nun für ReqIF und gegen Word, Excel oder PDF, wenn es um den Austausch von Anforderungen geht, also der Übertragung von Anforderungen des Auftraggebers in das Anforderungsverwaltungssystem des Auftragnehmers?

  • Die Abgrenzung der Anforderungen
    Für den maschinellen Austausch von Anforderungen ist es wichtig zu erkennen, wo eine neue Anforderung beginnt und wo sie endet. Anforderungen müssen klar abgegrenzt sein – natürlich inhaltlich von anderen Anforderungen, aber auch schlicht und einfach optisch. Das ist bei Excel noch gegeben, denn eine Zeile könnte einer Anforderung mit diversen Attributen entsprechen. Bei Word gelingt eine solche explizite Abgrenzung nur schwer und bei PDF nur mit ungenauen Heuristiken.
  • Die Identifikation von Anforderungen
    Eine Anforderung muss identifizierbar sein, sprich jede Anforderung benötigt eine ID. In Excel lässt sich das noch realisieren, indem die ID in einer eigenen Spalte der Anforderungszeile gespeichert wird. Bei den anderen Formaten gibt es leider keine saubere Lösung.
  • Die Attribute von Anforderungen
    Anforderungen besitzen verschiedene Attribute wie Name, Beschreibung, Priorität, Kommentar, Status etc. In Excel lässt sich dies mit weiteren Spalten realisieren, allerdings wird dies sehr schwierig, sobald Skizzen oder Grafiken zur Anforderungsbeschreibung hinzukommen. In Word und PDFs gibt es keine zufriedenstellende Lösung.
  • Die Verknüpfung von Anforderungen
    Aus einer Anforderung in einem Lastenheft werden mehrere Anforderungen in einem Pflichtenheft. Wie können Sie dies nachvollziehen? Wichtig ist also die Verknüpfung von Anforderungen, hier bieten weder Excel, noch Word oder PDF vernünftige Lösungen an.

Im Vergleich der klassischen Werkzeuge schneidet Excel noch am besten ab, allerdings ist die Einschränkung beim Umgang mit Skizzen und Grafiken sehr groß. Und auch die Nachvollziehbarkeit von Änderungen lässt sich nur schwerlich realisieren; das Überschreibung der ursprünglichen Texte wäre fahrlässig, das Hinzufügen von Zeilen oder Spalten reduziert – gerade bei vielen Änderungen – die Übersichtlichkeit. Im Gegensatz dazu hat ReqIF keine der genannten Schwächen, denn es wurde explizit für den Austausch von Anforderungen und nicht als Tabellenkalkulation oder als Texteditor konzipiert.

Der Umgang mit Änderungen

Anforderungen ändern sich. Stellen Sie sich vor, Sie schicken als Auftraggeber Ihrem Auftragnehmer eine Anforderung, der diese mit dem Status „Akzeptiert“ zurückschickt. Nun haben Sie eine neue Idee und erweitern die bestehende Anforderung. Natürlich ist diese Änderung nicht akzeptiert, denn der Status “Akzeptiert” bezieht sich auf die ursprüngliche Anforderung. Ähnlich verhält es sich bei den Verknüpfungen zwischen Lastenheft und Pflichtenheft. Ändert sich eine Anforderung im Lastenheft, müssen die entsprechenden Anforderungen im Pflichtenheft neu geprüft werden. Wichtig sind also die Pflege und die Versionierung von Anforderungen. Glücklicherweise gibt es eine nützliche Vorlage zu Austauschprozessen: Die Herstellerinitiative Software (HIS), eine Arbeitsgruppe der Automobilindustrie, hat den sogenannten HIS-Prozess zum Austausch von Anforderungen definiert. Der Prozess ist in sechs Anwendungsfälle zur Orientierung unterteilt:

  • Initialisierung
    Bei der Initialisierung stimmen sich Auftraggeber und Auftragnehmer bezüglich der technischen und logistischen Details ab.
  • Export und Verpackung
    Für jeden Austausch gilt es die „richtigen“ Anforderungen für die Übermittlung aufzubereiten und zu exportieren.
  • Übertragung
    Die Übertragung von Anforderungen ist sehr unterschiedlich. Manche Organisationen haben keine Probleme, wenn Anforderungen einfach und schnell per E-Mail übertragen werden, bei anderen hingegen muss die Datenübertragung verschlüsselt und mit einer digitalen Signatur versehen sein. Auch hier ist die Abstimmung zwischen den beteiligten Parteien wesentlich.
  • Import
    Neben einem reinen Anforderungsimport ist es wichtig, unter anderem auch eine Plausibilitätsprüfung durchzuführen.
  • Evaluierung der Anforderungen
    Natürlich müssen Anforderungen im Sinne von Widerspruchsfreiheit, Vollständigkeit, Verständlichkeit etc. evaluiert werden.
  • Prüfung der Evaluierung
    Die Ergebnisse der Evaluierung werden anschließend wieder dem Partner übermittelt, der diese dann wiederum selbst zu überprüfen hat.

Der HIS-Prozess deckt alle wichtigen Aspekte für einen erfolgreichen Anforderungsaustausch ab. Dabei geht es vor allem um das „was“ und weniger um das „wie“. So fordert er bspw., dass Sie sich als Auftraggeber mit Ihrem Auftragnehmer auf ein Austauschformat einigen, gibt aber keines vor. Da ReqIF explizit zum Austausch von Anforderungen entwickelt wurde, ist es sicherlich eine gute Wahl für die Umsetzung.

Fazit

Der verlustfreie Austausch von Anforderungen zwischen Unternehmen ist sehr wichtig für den gemeinsamen Erfolg einer Entwicklung. Dabei ist ein strukturierter Austausch von Anforderungen nicht immer einfach, denn im Laufe eines Projekts ergeben sich häufig Änderungen, neue Wünsche und Anforderungen. Hier bietet ReqIF eine robuste, technische Grundlage für sicheres Arbeiten. Dieses Arbeiten können Sie durch den Einsatz von professionellen Werkzeugen optimieren, mit denen Sie Anforderungen austauschen, aber natürlich auch erheben und verwalten können. Der HIS-Prozess bietet zudem eine Beschreibung, was Sie beim Austauschen von Anforderungen beachten sollten. Verstehen Sie ihn als Basis für einen Prozess, den Sie gemeinsam mit Ihrem Entwicklungspartner definieren und leben können.

 

Hinweise:

Interessieren Sie sich für weitere Tipps aus der Praxis? Testen Sie unseren wöchentlichen Newsletter mit interessanten Beiträgen, Downloads, Empfehlungen und aktuellem Wissen.

Alles Wichtige über Requirements Engineering auf 37 Seiten jetzt als Download zum Mitnehmen.

[1] Requirements Interchange Format
[2] ProSTEP ReqIF Implementor Forum
[3] ReqIF-Studio, ein RE-Werkzeug basierend auf dem quelloffenen Eclipse Requirements Modeling Framework

Dr. Michael Jastram hat einen weiteren Beitrag im t2informatik Blog veröffentlicht:

t2informatik Blog: Das Problem mit Problembeschreibungen

Das Problem mit Problembeschreibungen

Dr. Michael Jastram
Dr. Michael Jastram

Dr. Michael Jastram ist Systems Engineer mit Schwerpunkt Anforderungsmodellierung. Er ist Gründer und Projekt Lead des Eclipse Requirements Modeling Frameworks, einem Open Source-Projekt zur Anforderungsmodellierung, das als Referenzimplementierung den offenen ReqIF-Standard umsetzt. Als Advokat für Offenheit teilt er sein Wissen über Bücher, Fachartikel, Vorträge und als Veranstalter. Herr Jastram hat zwanzig Jahre Berufserfahrung, davon zehn in den USA, wo er einen Abschluss am M.I.T. erwarb und als Software-Ingenieur und -Architekt in mehreren Start-Ups arbeitete. Er ist Gründer der Düsseldorfer Java User Group rheinjug e.V. (http://rheinjug.de) und Geschäftsführer der Formal Mind GmbH.