Der Requirements Manager als Vorarbeiter für den Requirements Engineer
Eine einheitliche Abgrenzung zwischen den Begriffen Requirements Engineering und Requirements Management findet sich in der fachlichen Literatur nicht. Häufig wird Requirements Management als Teil des Requirements Engineering dargestellt, aber auch mal Requirements Engineering als Teil des Requirements Management. Als dritte Option werden Requirements Engineering und Requirements Management als nebeneinanderstehende Tätigkeiten betrachtet. Das IREB® definiert Requirements Management folgendermaßen:
„Requirements Management (RM): Der Prozess des Verwaltens existierender Anforderungen und anforderungsbezogener Artefakte. Dies schließt insbesondere die Ablage, das Ändern und die Verfolgbarkeit von Anforderungen mit ein. Auch das Verwalten des RE-Prozesses gehört dazu.“
Dieser Einstieg soll zeigen, wie verbunden die Begriffe Requirements Engineering und Requirements Management sind, und wie uneinheitlich sie interpretiert werden können.
Viele Personen die sich mit Thema Anforderungen auseinandersetzen, machen ihre alltägliche Arbeit, wie bspw. Anforderungen schreiben oder Anforderungen prüfen. Die hinter diesen Tätigkeiten stehenden Prozesse und Methoden werden in den seltensten Fällen von solchen Personen hinterfragt. Meist sogar nur dann, wenn ein Prozess eine große Menge an Aufwand für eine Person bedeutet. Jedoch muss sich irgendwer um die initiale Entwicklung und Einführung, sowie die spätere „Pflege“ solcher Prozesse kümmern. Hier kommt der Requirements Manager ins Spiel.
Die folgende Abbildung zeigt einige der Tätigkeiten des Requirements Managers im Bereich Requirements Engineering:
Abbildung 1: Tätiglkeiten des Requirement Managers
Der Requirements Manager befasst sich, im Gegensatz zum Requirements Engineer, mehr mit der Erarbeitung von Konzepten der in Abbildung 1 aufgelisteten Themen, bspw. welche konkreten Attribute benötigt werden und wie deren Abhängigkeiten aussehen. Weiterhin fällt die vorherige Planung, Einführung und spätere Überwachung der Prozesse in seinen Aufgabenbereicht.
Der Requirements Manager ist für den Aufbau eines Informationsmodells und eines entsprechenden Prozesses/entsprechender Prozesse verantwortlich. So muss bspw. von vornherein geklärt sein, ob in einem Projekt Variantenmanagement nötig ist und wie bei Bedarf das Variantenmanagement umgesetzt werden soll. Im weiteren Verlauf sollen die Tätigkeiten des Requirements Managers genauer betrachtet werden.
Festlegung einer Attributierung
Attribute können Auswirkungen auf weitere Tätigkeiten des Requirements Engineers haben: die Bewertung und Priorisierung, das Versionsmanagement, das Änderungsmanagement und die Verfolgbarkeit von Anforderungen. All diese Tätigkeiten im Requirements Engineering können Attribute verwenden, bspw. für die Quelle einer Anforderung (Verfolgbarkeit von Anforderungen). Der Requirements Manager muss – allein oder gemeinsam mit seinen Stakeholdern – sowohl die benötigten Attribute für ein entsprechendes Projekt als auch die Zuordnung, durch wen diese Attribute befüllt werden, festlegen.
Bewertung und Priorisierung von Anforderungen
Die große Herausforderungen in Projekten sind die Ziele „in time“, „in budget“ und „in specification“ zu erreichen. Will die Projektleitung weder den Kostenrahmen noch die Zeitschiene erweitern, werden häufig für ein bestimmtes Produkt nicht alle Anforderungen umgesetzt. Damit unterschieden werden kann, welche Anforderungen auf jeden Fall berücksichtigt werden müssen, da sie bspw. sicherheitskritisch sind, muss eine Bewertung und Priorisierung aller Anforderungen eines Projektes vorgenommen werden. Im Rahmen dieser Tätigkeit ist der Requirements Manager dafür verantwortlich, das zu verwendende Prioritätenkonzept zu erarbeiten.
Versionsmanagement
Die beiden Tätigkeiten Versionsmanagement und Änderungsmanagement sind im hohen Maße miteinander verbunden. Versionsmanagement macht nur dann Sinn, wenn es häufig neue Anforderungen gibt oder Anforderungen immer wieder geändert werden müssen. In beiden Fällen bringt es Vorteile, aktuelle Arbeitsstände zu versionieren. Der Requirements Manager muss festlegen ob, und wenn ja, wie Versionsmanagement in einem konkreten Projekt genutzt wird.
Änderungsmanagement
Für den Requirements Manager ist es wichtig, sich Gedanken darüber zu machen, wie mit Änderungen umgegangen werden soll, damit Änderungen nachvollziehbar, verfolgbar und handhabbar sind. Eine Möglichkeit zum Umgang mit Änderungen stellt der Änderungsantrag dar, in welchem klar beschrieben sein muss, wie z.B. eine Änderungen die Faktoren Kosten und Zeit in einem Projekt beeinflusst.
Verfolgbarkeit von Anforderungen
Die Verfolgbarkeit von Anforderungen in Projekten hat mehrere Gründe. Zwei Beispiele sind die Herstellung von Abhängigkeiten zwischen Anforderungen und die Nachverfolgbarkeit als Nachweis der Umsetzung und Sicherung der Qualität einer Anforderung. Ohne eine Verfolgbarkeit von Anforderungen kann nicht belegt werden, wie und warum eine Anforderung umgesetzt wurde. Der Requirements Manager muss bei der Einführung seines Prozess berücksichtigen, in welcher Form er Verfolgbarkeit dokumentieren will (bspw. implizite oder explizite Dokumentation). Weiterhin muss der Requirements Manager klären, wer für die Sicherstellung der Verfolgbarkeit verantwortlich ist.
Variantenmanagement
Häufig wird nicht nur ein einzelnes Produkt, sondern eine Produktlinie, entwickelt. Der Requirements Manager muss diese Variabilität für den zu entwickelnden bzw. verwendeten Prozess berücksichtigen.
Wenn Sie sich für das Thema Requirements Management interessieren, könnte der neue Kurs des IREB® „CPRE Advanced Level – Requirements Management“ für Sie ebenfalls interessant sein. Einen Link zum aktuellen Angebot der HOOD GmbH für diesen Kurs finden Sie hier:
CPRE Advanced Level – Requirements Management
Kategorien
Tags
Sascha Schamberg
Kontaktieren Sie Sascha SchambergSascha Schamberg arbeitet bei der HOOD GmbH als Consultant im Bereich Requirements Engineering. Seine Tätigkeitsschwerpunkte liegen in der Unterstützung unserer Kunden beim Einsatz von Requirements Engineering und zugehöriger Werkzeuge (z.B. DOORS). Zu seinen Aufgaben zählen die Erhebung, Verbesserung und Dokumentation von funktionalen und nicht-funktionalen Anforderungen, sowie die Erstellung von objektorientierten Modellen. Seine Wissensschwerpunkte liegen im Bereich Software Engineering und Requirements Engineering. Er ist mit zahlreichen Vorgehensmodellen zur Softwareentwicklung und diversen Modellierungssprachen (z.B. UML) vertraut.