Oliver Wagner
Anforderungsanalyse verbessern - aber wie?DruckenE-Mail
Donnerstag, den 03. November 2011 um 15:22 Uhr
Geschrieben von: Oliver Wagner
Die Analyse als erster Schritt der Systementwicklung entscheidet maßgeblich über Erfolg oder Misserfolg eines Projektes. Erfahrungen zeigen, dass die Mehrzahl aller gravierenden Fehler und Defizite mit z.T. erheblichen Auswirkungen auf den weiteren Projektverlauf in der Analysephase entstehen.

Schafft man es, die Ursachen von Analysefehlern und –defiziten zu verringern oder sogar zu beseitigen, so wirkt sich dies unmittelbar positiv auf die Faktoren Kosten und Zeit eines Projektes aus. Die Verbesserung der Anforderungsanalyse liegt also im Interesse eines jeden Unternehmens, welches Entwicklungen auf Basis von Anforderungsspezifikationen betreibt.

Wie aber geht man zweckmäßig vor, um die Qualität der Anforderungsanalyse im Unternehmen gezielt zu verbessern? Ein Erfahrungsbericht...

Die GiS hat sich entschieden, auch um den Stellenwert des Vorhabens zu verdeutlichen, die Verbesserung der Qualität in der Anforderungsanalyse (oder auch Requirements Engineering, RE) im Rahmen eines internen Projektes zu betreiben. Folgende Projektziele/-schritte wurden definiert:

  1. Vereinheitlichung und Aktualisierung des Wissensstandes aller betroffenen Mitarbeiter bzgl. der im Requirements Engineering einsetzbaren Techniken und Methoden
  2. Erarbeiten eines Requirements-Engineering-Konzeptes optimiert auf die spezifischen Belange, welches alle im Rahmen des Requirements Engineering zu verwendenden Techniken, Prozesse, Methoden, und Tools dokumentiert
  3. Etablieren einer projektübergreifenden, einheitlichen Vorgehensweise im Unternehmen auf Basis des Requirements-Engineering-Konzeptes

Das Projektteam

Um eine nachhaltige Verbesserung im gesamten Entwicklungsprozess zu erreichen, ist es unerlässlich, das Projektteam für ein solches internes Projekt interdisziplinär zu besetzen. Während die eigentliche Anforderungsanalyse naturgemäß eine Domäne des Bereichs Consulting ist, so beschäftigen sich mit dem Ergebnis dieser Analyse, gewissermaßen als "Weiterverarbeiter" der resultierenden Anforderungen, eine ganze Reihe von weiteren Fakultäten eines Unternehmens:
  • Architekten, welche Lösungsentwürfe für Anforderungen erarbeiten
  • Entwickler, welche die Entwürfe implementieren
  • Tester, welche die Ergebnisse verifizieren
  • Redakteure, welche sich mit Beschreibungen/Hilfen/Dokumentationen befassen
Alle diese Fakultäten haben unmittelbaren Einfluss auf die Anforderungsanalyse bzw. konkrete Anforderungen an diese und sind somit als "Stakeholder" in ein Projekt zur Verbesserung der Anforderungsanalyse mit einzubinden. Das Projektteam sollte also, neben allen Mitarbeitern des Bereichs Consulting, zumindest jeweils einen Vertreter sämtlicher vorgenannter Fakultäten umfassen.
In der Praxis setzte sich das GiS-Projektteam zusammen aus einer Kerngruppe mit Steuerungsfunktion, dem sog. "Projektarbeitskreis", sämtlichen Analysten sowie je einem Vertreter der Architekten/Entwickler, Tester und Redakteure.

Das Projektvorgehen

Vereinheitlichung und Aktualisierung des Wissensstandes aller betroffenen Mitarbeiter bzgl. der im Requirements Engineering einsetzbaren Techniken und Methoden

Sicherlich sind in jedem Unternehmen, welches sich mit dem Erheben von Anforderungen und dem Erstellen von Anforderungsspezifikationen beschäftigt, die grundlegenden Techniken und Methoden im Bereich der Anforderungsanalyse bekannt und werden von den Analysten auch mehr oder weniger angewendet.

Will man messbare Qualitätsstandards in der Anforderungsanalyse einführen, muss man jedoch eine fakultätsübergreifende, systematische Vorgehensweise aller Beteiligten erreichen. Der erste Schritt hierzu ist, alle betroffenen Mitarbeiter (und dies sind, wie vorab bereits beschrieben, eben nicht nur die Analysten, sondern gerade auch Architekten, Entwickler, Tester und Redakteure) auf einen einheitlichen und aktuellen Kenntnisstand über die in der Anforderungsanalyse einsetzbaren Techniken und Methoden sowie über Inhalte und Struktur der Analyseergebnisse zu bringen.

Ein zweckmäßiges Vorgehen zur Erreichung dieses Ziels ist das Angebot themenbezogener Workshops für die entsprechende Zielgruppe, begleitet durch die Bereitstellung entsprechender Fachliteratur zum ergänzenden Selbststudium. Setzt man zur Durchführung der Workshops qualifizierte externe Referenten ein, kann man den "Unternehmenshorizont" durch das Einfließen von Erfahrungen anderer Unternehmen im positiven Sinne erweitern. Die GiS hat, nicht zuletzt als motivationsfördernde Maßnahme, ihre Workshop-Serie mit der (erfolgreichen) Zertifizierung aller betroffenen Mitarbeiter zum CPRE "Certified Professional for Requirements Engineering" (FL) abgeschlossen.

Erarbeiten eines Requirements-Engineering-Konzeptes optimiert auf die spezifischen Belange, welches alle im Rahmen des Requirements Engineering zu verwendenden Techniken, Prozesse, Methoden, und Tools dokumentiert

Als Basis für die Erarbeitung eines Requirements-Engineering -Konzeptes wurde im Hause eine klassische Anforderungsanalyse für das Requirements-Engineering durchgeführt, d.h. die "Anforderungen an die Anforderungsanalyse und -dokumentation" sämtlicher beteiligten Fakultäten, insbesondere der Analysten, Architekten, Entwickler, Tester und Redakteure wurden erhoben und in einer "Anforderungsspezifikation Requirements-Engineering " dokumentiert.
 
Bei der Durchführung dieser Anforderungsanalyse hat es sich bewährt, dass sämtliche involvierten Stakeholder an den vorlaufenden Workshops teilgenommen hatten und mit dem entsprechenden Hintergrundwissen die Anforderungen auf den Punkt bringen konnten. Zudem war dies eine gute Gelegenheit, die neu erlernten Techniken und Methoden praktisch anzuwenden.

Nach Abschluss der Analyse hat der Projektarbeitskreis die Aufgabe übernommen, entsprechende Lösungen für die erhobenen Anforderungen zu erarbeiten und hieraus ein RE-Konzept zu entwickeln. Wichtig hierbei: Die neu erarbeiteten Techniken und Methoden wurden voreilend zum Etablieren des RE-Konzeptes bereits im Rahmen kleinerer Kundenprojekte angewendet und erprobt. Die gewonnenen Erkenntnisse flossen in die weiteren Arbeitsschritte ein.

Etablieren einer projektübergreifenden, einheitlichen Vorgehensweise im Unternehmen auf Basis des Requirements-Engineering-Konzeptes

Nachdem das Requirements-Engineering Konzept einen gewissen Reifegrad erreicht hat ("fertig" wird ein solches Konzept naturgemäß niemals sein, da es einen hochdynamischen Themenkomplex abbildet, der eine stete Weiterentwicklung erfordert), ist es an der Zeit das Konzept und damit die dort beschriebenen Techniken, Prozessen, und Methoden unternehmensweit formal in Kraft zu setzen. Ab diesem Zeitpunkt hat der Projektarbeitskreis die Aufgabe, den Prozess der Etablierung im Unternehmen zu begleiten/zu controllen.

Als wichtiges Instrument zur Unterstützung des Etablierungsprozesses hat sich das individuelle Coachen insbesondere der Analysten durch den Projektarbeitskreis erwiesen. In solchen Coaching-Sessions werden konkrete Arbeitsergebnisse einzelner Analysten besprochen/diskutiert und evtl. Verbesserungspotenziale aufgezeigt. Diese Coaching-Sessions liefern zum einen dem "Gecoachten" eine willkommene Reflexion seiner Arbeitsergebnisse, zum andern erhält der Projektarbeitskreis ein direktes Feedback bzgl. in der Praxis auftretender Probleme, für die ggf. noch Lösungen und Lösungswege in den Prozess eingearbeitet werden müssen.

Eine weitere Möglichkeit, den Etablierungsprozess zu unterstützen und eine kontinuierliche Erfolgskontrolle der getroffenen Massnahmen durchzuführen, ist die Einführung geeigneter Metriken zur Abbildung qualitativer Aspekte der Anforderungsanalyse in aussagekräftige Zahlenwerte. Spätestens in dieser Phase des Projektes ist es zudem zielführend, die Kunden mit einzubeziehen und diese über die Hintergründe und Motivation des Vorhabens sowie zu erwartende Änderungen und Benefits zu informieren.

Fazit

Eine nachhaltige Verbesserung der Anforderungsanalyse ist nicht „nebenbei“ zu erreichen, sondern erfordert eine klare Zielsetzung, ein planvolles Vorgehen zur Erreichung dieser Ziele und nicht zuletzt die Bereitstellung der für diesen Zweck notwendigen Ressourcen. Das Projekt zur Verbesserung der Anforderungsanalyse bei der GiS nahm etwas mehr als 1 Jahr in Anspruch; die ersten Erfolge (positive Rückflüsse bzgl. der Verbesserung von Kommunikation und Qualität vom Projektteam, aber auch von Kunden) stellten sich nach ca. 5 Monaten Projektlaufzeit ein. Das hier vorgestellte Projektvorgehen hat sich bewährt.

Wichtig ist, die Verbesserung der Anforderungsanalyse als kontinuierlichen Prozess zu sehen, der auch nach Erreichen der vorgenannten Projektziele/nach Beendigung des eigentlichen Projektes fortgeführt werden muss. Die GiS hat zu diesem Zweck eine Stabsstelle geschaffen, zu deren Aufgaben es gehört, zum einen das Erreichte ständig zu reflektieren, zum anderen auch die sich ständig ergebenden neuen Anforderungen an den Prozess aufzunehmen und zu integrieren. Aktuell muss bspw. die Fragestellung beantwortet werden, wie die Methoden und Techniken des Requirements engineering am effektivsten mit dem Vorgehensmodell SCRUM zusammenwirken.