5. ESE-Kongress in Sindelfingen „Requirements Engineering ist total situationsabhängig"
Bei ihrem Keynote-Vortrag auf dem 5. ESE-Kongress in Sindelfingen wies Chris Rupp, Gründerin und Chefin des Beratungshauses Sophist, auf die vielen Fallen hin, die im Dialog zwischen Systementwicklern und ihren Auftraggebern immer wieder auftreten.
Anbieter zum Thema

Requirements Engineering – unter anderem das Erfassen und Gewichten von Systemanforderungen für ein Software- oder ein Embedded-Projekt – ist ein Prozess mit vielen potenziellen Fallen. Das machte Chris Rupp, die sich als Beraterin und Trainer in im Bereich des Anforderungsmanagments und der Systemmodellierung einen Namen gemacht hat, mit einem Gedankenexperiment deutlich: „Stellen Sie sich vor, Sie müssten ein Puzzle mit 500 Teilen richtig zusammensetzen. Wie lang und wieviele Teammitglieder brauchen Sie dafür?“
Das klingt zunächst wie eine überschaubare Routineaufgabe. Im Verlauf ihres Vortrages fügte Rupp jedoch peu à peu weitere Informationen hinzu, die die Dimensionen des Puzzle-Projekts zum Teil radikal veränderten, wie zum Beispiel: „Ach, vielleicht sollte ich Ihnen noch sagen, dass das Puzzle kein Bild enthält und die Vorderseite und die Rückseite der Teile jeweils komplett weiß sind.“ Die Erwartungen hinsichtlich der Dauer und der Anforderungen an das Puzzle-Projekt verändern sich dadurch natürlich grundlegend.
Was hat dies mit Requirements Engineering zu tun? Durchaus sehr viel. Denn bei der Ermittlung der Anforderungen an ein zu bauendes System kommt es nicht nur auf die Informationen an, die im Gespräch oder in Dokumenten übermittelt werden, sondern auch auf die Informationen, die fehlen – nicht aus böser Absicht heraus, sondern weil sie der Auftraggeber vielleicht für selbstverständlich erachtet, was der Systementwickler jedoch nicht ahnen kann.
Wenn es also darauf ankommt, ein System zu spezifizieren, dann ist die Sprache das wichtigste Werkzeug. Chris Rupp betonte jedoch, dass Sprache häufig branchenspezifisch ist. Zum Beispiel sei der Fachjargon in der Flugsicherung für Außenstehende schlichtweg unverständlich. Systementwickler können hier nur mit den Achseln zucken: „Mein indischer Programmierer versteht das nicht“ sei hier eine typische Reaktion.
Vor diesem Hintergrund sagte Rupp: „Für mich gibt es kein Standard-Requirements Engineering. Das ist total situationsabhängig.“ Dennoch gebe es zahlreiche Möglichkeiten der Anforderungsermittlung, so etwa das sogenannte Apprenticing, bei dem ein Requirements Engineer quasi wie ein Auszubildender den Alltag der Kunden begleitet, um seine Arbeitsprozesse und damit Anhaltspunkte für das zu bauende System kennenzulernen.
Rupp forderte das Auditorium in Sindelfingen auf, sich bewusst zu machen, dass die Wissensvermittlung eine Kernkompetenz der modernen Systementwicklung darstellt.
Häufig, so die Chef-Sophistin weiter, verschleierten Formulierungen in den Anforderungsdokumenten mehr als sie preisgäben. Wer zum Beispiel Substantive wie „Inbetriebnahme“ verwende, verberge damit, dass es sich hierbei um einen Prozess handle, der einen Anfang und ein Ende habe und an dem Menschen beteiligt seien.
Deshalb riet sie dazu, den insbesondere in Deutschland weit verbreiteten Nominalstil in Anforderungsdokumenten aufzulösen und stattdessen Prozesse auch als solche zu benennen. Sogenannte User Stories, bei denen Vorgänge aus Sicht der Benutzer geschildert werden, könnten ein Mittel sein, die Erwartungen an ein System oder eine Lösung klarer zu beschreiben.
Weiterhin forderte Rupp ihre Zuhörer dazu auf, auf vollständige und korrekte deutsche Sätze bei der Systembeschreibung zu achten. Denn besser verfasste Requirements könnten zu einem besseren System führen.
Das eingangs erwähnte Gedankenexperiment lief zudem darauf hinaus, dass es sich bei den Puzzleteilen um 3-D-Teile mit einer Kantenlänge von über einem Meter handelte, was das Puzzle zusehends unhandlicher machte, als zunächst erwartet. Immerhin sollten die Teile jedoch aus Styropor bestehen, so dass kein Übermensch für das Zusammensetzen der Teile benötigt werden würde.
(ID:37180160)