Anforderungsmanagement

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Requirements Engineering)
Wechseln zu: Navigation, Suche

Anforderungsmanagement (AM; englisch requirements management, RM) ist ein Teilgebiet des Requirements Engineerings (RE) sowie ein Teilgebiet der Business-Analyse und eine Managementaufgabe für die effiziente und fehlerarme Entwicklung komplexer Systeme.

Weitere Disziplinen des RE sind z. B. die Anforderungsdefinition und beinhaltet dabei die Teilgebiete Anforderungsanalyse (engl. requirements elicitation), Anforderungsdokumentation (engl. requirements documentation) und Anforderungsvalidierung (engl. requirements validation), während Anforderungsverwaltung Maßnahmen zur Steuerung, Kontrolle und Verwaltung von Anforderungen, also Risikomanagement, Änderungsmanagement und Umsetzungsmanagement umfasst.

Diese Definition trägt den Erkenntnissen aus der Vergangenheit Rechnung, dass Probleme mit Anforderungen zumeist aus mangelndem Management ebendieser resultieren. Es ist inzwischen die Erkenntnis gereift, dass alleine das Aufstellen von Anforderungen nicht ausreicht, sondern für die Realisierung eines Produktes oder Systems der weitergehende Prozess des Anforderungsmanagements notwendig ist.

Ziele[Bearbeiten]

Anforderungsmanagement ist vor allem dort von Bedeutung, wo komplexe Produkte bzw. Systeme konzipiert werden und sehr arbeitsteilig an deren Entwicklung gearbeitet wird.

Das Ziel des Anforderungsmanagement ist es, ein gemeinsames Verständnis über ein zu entwickelndes System zwischen Auftragnehmer und Auftraggeber zu erreichen. Zugleich dienen die resultierenden Dokumente häufig als vertragliche Basis für eine weitere Umsetzung.

Ein gemeinsames Verständnis kann durch die Einführung und Umsetzung von Anforderungsmanagementmethoden (u. a. Scoping, Anforderungsanalyse, Anforderungsspezifikation, Anforderungsmodellierung, Anforderungsreviews) erreicht werden. Durch den Einsatz dieser Methoden kann die Qualität der Anforderungsdokumentation gesteigert werden. Qualitätskriterien einer Anforderungsdokumentation sind u. a. Verständlichkeit, Eindeutigkeit, Nachweisbarkeit, Widerspruchsfreiheit, Vollständigkeit, Testbarkeit.

Das Management von Anforderungen bedeutet, dass Prozesse definiert und implementiert werden, indem die Anforderungsdokumentation während des gesamten Projektverlaufs aktualisiert wird und diese am Ende als Grundlage für die Erstellung von Testfällen verwendet werden kann.

Normen und Sprache[Bearbeiten]

Anforderungsmanagement gehört zu den elementaren Prozessen in den Software- und System-Reifegrad-Modellen CMMI und ISO/IEC 15504 (SPICE) sowie im Standard ISO/IEC 12207.

Es verwendet zur Darstellung die natürliche Sprache, oder bei Bedarf eine formalisierte natürliche Sprache mit eingeschränktem Vokabular und festen Satzkonstruktionen, den sogenannten Requirements Templates. Die ebenfalls verstärkt verwendeten künstlichen Sprachen zur Modellierung wie z. B. UML oder Message Sequence Charts (MSC) erleichtern in vielen Situationen eine Formulierung der Anforderungen.

Ziel einer Anforderungsspezifikation (u. a. Lastenheft, Pflichtenheft, Fachkonzept, …) ist es, die Anforderungen so zu formulieren, dass zwischen dem Auftraggeber und Auftragnehmer ein gemeinsames Verständnis über das zu entwickelnde System geschaffen wird. Um das bei natürlicher Sprache zu erreichen, sollten Regeln eingehalten werden. Dabei wird beispielsweise empfohlen, kurze Sätze zu gebrauchen und ungenaue Adjektive und Adverbien nicht zu verwenden (sogenannte „schwache Wörter“, engl. weak words, wie z. B. schneller, schöner, automatisch, circa, …). Ein Autor einer Spezifikation sollte sich an diese Regeln halten, um die Qualität der Anforderungen zu verbessern. Damit der Autor diese Regeln einhält, gibt es auch Software-Werkzeuge, die ihn dabei unterstützen können.

In Deutschland hat sich ein Standard zum einheitlichen Austausch von Anforderungen etabliert, das so genannte Requirements Interchange Format (ReqIF, ehemals RIF). ReqIF wird durch ein XML Schema definiert und ist ein Format und Datenmodell, das Strukturen für Anforderungen, deren Attribute, Typen, Zugriffsrechte, Relationen (Links) usw. enthält. Die RIF-Projektgruppe wurde 2004 im Rahmen der Herstellerinitiative Software (HIS) von deutschen Automobilherstellern wie Audi, BMW, Daimler, Porsche und Volkswagen gestartet. Grund war die Notwendigkeit, Anforderungen zwischen verschiedenen Partnern auszutauschen, welche unterschiedliche RM-Tools einsetzen.

Anwendung[Bearbeiten]

Anforderungen dürfen bei Anforderungsmanagement nicht nur Aussagen über gewünschte Eigenschaften machen, sondern müssen parallel dazu Kriterien beschreiben, wie diese Eigenschaften überprüft werden können (Akzeptanzkriterien).

Diese oft auch als Testfälle bezeichneten Kriterien dienen nicht nur der Qualitätssicherung des Produktes, sondern ganz wesentlich der Qualität der Anforderungen selbst, da das Beistellen eines Akzeptanzkriteriums zu einer sofortigen inhaltlichen Überprüfung der Anforderung zwingt.

Anforderungsmanagement-Software[Bearbeiten]

Um das Anforderungsmanagement besser zu strukturieren, Redundanzen zu reduzieren sowie Versions-/Konfigurationsmanagement und Rückverfolgbarkeit zu ermöglichen, wird für das Anforderungsmanagement Software eingesetzt. Diese Software sollte dann auch mehrbenutzerfähig sein. Vielfach werden anstelle dieser speziellen Software Standard-Textverarbeitungsprogramme eingesetzt, was dann aber zu den oben genannten Problemen führen kann.

Die Software basiert in aller Regel auf einer Datenbank, in der die Einzel-Requirements gespeichert und in der Folge ihre Abarbeitung verfolgt und überwacht werden. Zu jedem Requirement wird der Start der Bearbeitung, die Erreichung von Meilensteinen und der (erfolgreiche) Abschluss der Arbeit vermerkt.

Diese Anforderungsmanagementsoftware ermöglicht es meist über diese Datenbanken, Anforderungen in Beziehung zu setzen. So können dann zum Beispiel Systemanforderungen auf Kundenanforderungen zurückgeführt werden und damit unter anderem Systemanforderungen registriert werden, die auf keine Kundenanforderungen zurückzuführen sind, um damit ein Overengineering zu vermeiden. Genauso können Tests mit den Anforderungen in Beziehung gesetzt werden, um eine Vollständigkeit dieser Tests zu gewährleisten.

Siehe auch[Bearbeiten]

Literatur[Bearbeiten]

  • A. Herrmann, E. Knauss, R. Weißbach: Requirements Engineering und Projektmanagement. Springer, Berlin 2013, ISBN 978-3-642-29431-0.
  • Klaus Pohl, Chris Rupp: Basiswissen Requirements Engineering. dpunkt.verlag, 2009, ISBN 978-3-89864-613-0.
  • Christof Ebert: Systematisches Requirements Management. dpunkt.verlag, 2005, ISBN 3-89864-336-0.
  • Bruno Schienmann: Kontinuierliches Anforderungsmanagement : Prozesse – Techniken – Werkzeuge. Addison-Wesley, München 2001, ISBN 3-8273-1787-8.
  • Colin Hood, Simon Wiedemann, Stefan Fichtinger, Urte Pautz: Requirements Management: Interface Between Requirements Development and All Other Systems Engineering Processes. Springer, Berlin 2007, ISBN 978-3-540-47689-4.
  • Andreas Kress, Robert Stevenson, Rupert Wiebel, Colin Hood, Gerhard Versteegen: Requirements Engineering Methoden und Techniken, Einführungsszenarien und Werkzeuge im Vergleich, iX Studie Anforderungsmanagement. 2. Auflage. Heise, 2007, ISBN 978-3-936931-19-8.
  • Chris Rupp & Die SOPHISTen: Requirements-Engineering und -Management: Professionelle, iterative Anforderungsanalyse für die Praxis. 5. Auflage. Hanser, 2009, ISBN 978-3-446-41841-7.

Weblinks[Bearbeiten]

  • volere.co.uk – Liste mit den wichtigsten Anforderungsmanagementwerkzeugen (englisch)