Für den Erfolg eines Identity-Management-Projekts spielen mehrere kritische Faktoren eine Rolle und jeder einzelne davon kann über den Erfolg oder Misserfolg entscheiden.
Das Anforderungsmanagement ist einer dieser Faktoren. In Umsetzungsprojekten und auch im Anwendungsbetrieb wird es allerdings oft als Ballast empfunden. Diese Vernachlässigung wird leider erst spät erkannt und in der Regel wird anderen Faktoren die Schuld für den Misserfolg gegeben.
Das Missverständnis bezüglich des Anforderungsmanagements
Das Anforderungsmanagement ist eine eigene Disziplin. Das ist nichts Neues. Neue Projektumsetzungstechniken und Methoden haben nichts an der grundsätzlichen Bedeutung der Disziplin geändert. Die Behauptung, eine agile Projektmethodik widerspräche einem „klassischen“ Anforderungsmanagement oder mache dieses gar obsolet, ist ein Symptom dafür, dass die agile Vorgehensweise missverstanden wurde.
Die systematische Vorgehensweise für Anforderungen bei der Erhebung, Analyse, Verifikation, Validierung, Verfolgung, Verwaltung, Priorisierung und bei Freigaben steht nicht im Widerspruch, sondern muss auch in Verbindung mit einer iterativen Projektentwicklung erfolgreich angewendet werden. Ebenso wenig wie die Verwendung von JIRA ein Projekt nicht agil macht, so wenig macht die Formulierung von User Stories das Anforderungsmanagement obsolet.
Vorteile des Anforderungsmanagements
Richtig eingesetztes Anforderungsmanagement hat eine Reihe von Vorteilen, die sich im Projekt bei der Entstehung einer Anwendung sowie langfristig im Anwendungsbetrieb und schlussendlich bei der Stilllegung der Anwendung auswirken. Die wichtigsten dieser Vorteile sind:
- Kontinuierliche Weiterentwicklung sichert den Nutzen: Die Anforderungen der Organisation ändern sich im Laufe der Lebenszeit der Anwendung. Kontinuierliche Prüfung des Nutzens, Einschätzung von neuen Anforderungen und Ablöse nicht mehr benötigter Funktionalitäten aufgrund von nicht mehr benötigten Anforderungen ist Teil des Anforderungsmanagements.
- Akzeptanz durch die Stakeholder: Stakeholder haben Anforderungen, deren Umsetzung ihre Arbeit erleichtern oder ermöglichen soll. Deren Akzeptanz ist die Existenzberechtigung der Lösung.
- Kontinuierliche Erfüllung von Compliance-Anforderungen: Compliance-Anforderungen werden periodisch erweitert und präzisiert. Das Anforderungsmanagement sichert eine lückenlose Rückverfolgung und ermöglicht die Feststellung von notwendigen Anwendungsänderungen aufgrund neuer oder geänderter Compliance-Anforderungen.
- Minimierung des Kommunikationsaufwands zwischen den Stakeholdern: Das Anforderungsmanagement fordert klare Kommunikation mit dem Ziel, valide und verifizierte Anforderungen zu erheben und festzuhalten.
- Minimierung des Entwicklungsaufwands für Änderungen: Die Umsetzung von Anforderungen weicht immer mal wieder von der Vorstellung der Stakeholder ab. Das Anforderungsmanagement hat in Verbindung mit agilen Methoden einen beträchtlichen Anteil daran, dass die Abweichungen sowie der damit verbundene zusätzliche Entwicklungsaufwand minimiert werden. Der Einsatz passender Dokumentations-, Visualisierungs- und Kommunikationsmethoden gehört zum Standardrepertoire eines ausgereiften Anforderungsmanagements.
Wie erkennt man unzureichendes Anforderungsmanagement?
Unabhängig davon, welche Methoden und wie intensiv diese angewendet werden, lassen sich Mängel im Anforderungsmanagement leicht erkennen:
- Das Zielbild der geforderten Leistung der Anwendung ist unklar.
- Anforderungen sind missverständlich formuliert.
- Erfasste und formulierte Anforderungen werden durch Stakeholder nicht verifiziert.
- Anforderungen werden nicht priorisiert.
- Änderungen der Anforderungen werden nicht gemanagt (Scope-Creep).
- Die Nachvollziehbarkeit der Anforderungen wird nicht sichergestellt. Probleme, die man lösen will, Verbesserungen, die man erzielen möchte und externe Compliance-Anforderungen, die man erfüllen möchte, werden nicht erfasst oder mit den Anforderungen in Verbindung gebracht.
Worauf sollte man achten?
Die wichtigsten Aspekte für ein erfolgreiches Anforderungsmanagement ist das Know-how des Business Analysten/Requirements Engineers/Product Owners und seine Erfahrung in der Anwendung der Methoden in unterschiedlichen Projektsituationen. Beide Eigenschaften sind ausschlaggebend, dass die Anforderungen effektiv und effizient erfasst und gemanagt werden.
Theoretisch kann das Anforderungsmanagement ohne das Fachwissen der Stakeholder und ohne das Wissen über die technischen und organisatorischen Umsetzungsmöglichkeiten durchgeführt werden. Die Anforderungen sollten lösungsunabhängig definiert werden, um die Kernaussage, den „Need“, auszudrücken, und um Raum für verschiedene Lösungsvarianten zu lassen.
Diese Prinzipien sollten beim Custom-Development hochgehalten werden, um innovative und kompetitive Software-Lösungen zu entwerfen. Warum ist es im Identity Management jedoch sinnvoll, von dieser Theorie abzuweichen?
Spezifika von Identity Management Lösungen
In den meisten Fällen werden Identity Management Lösungen als COTS (Commercial-Off-The-Shelf Software) eingesetzt, mit dem expliziten Ziel, weitgehend auf das Customizing der Anwendung zu verzichten. Diese Konstellation erfordert vom Business Analysten nicht nur Know-how und Erfahrung im Bereich des Anforderungsmanagements, sondern auch Wissen aus folgenden Themenbereichen:
- Funktionsumfang und Einschränkungen der für die Lösung eingesetzten Identity Management Anwendungen
- Best Practices der Prozesse und Anwendungsfälle der Identity Management Anwendungen wie Identitätsmanagement, Rollenmanagement und SOD-Regelwerk, Freigabeworkflows, Reconciliation und automatische Provisionierung und Deprovisionierung, Passwortmanagement, zeitlimitierte Zugangssteuerung, aktive Zugriffsüberwachung und Kontrolle (speziell PAM), Rezertifizierungen
- Zweck, Funktionsweise und eingesetzte Berechtigungskonzepte der Zielsysteme oder von „Zwischensystemen“ wie Verzeichnissen
- Typische Anwendung und Funktionsweise der Quellsysteme und deren Einschränkungen
- Best Practices der Lösung von typischen Identity Management Problemstellungen, Lösungsvarianten, deren Vor- und Nachteile
- Wissen, welche Compliance-Anforderungen mit den Features der Identity Management Anwendungen gelöst werden können
- Wissen um Rollenkonzeptionierung
- Wissen, welche Umsetzung welcher Anforderungen zu Quick-Wins führen
- Wissen über die intrinsischen Abhängigkeiten zwischen den Anforderungen und deren sinnvolle Priorisierung, um Risiken zu minimieren
Das Know-how des Business Analysten über das Identity Management vereinfacht den Brückenbau zwischen den Stakeholdern und dem Entwicklerteam erheblich. Es schafft Vertrauen bei Stakeholdern, verkürzt die Anlernzeit sowie die Kommunikationswege, vermeidet Missverständnisse und sichert nachhaltige Lösungen.
Es darf jedoch nicht vergessen werden, dass der Business Analyst den Designer der technischen Lösung nicht ablöst. Dieser muss die Anforderungen verstehen, die Machbarkeit, der vom Business Analysten vorgeschlagener Lösungen verifizieren oder im Detail ausarbeiten beziehungsweise Alternativlösungen vorschlagen können.
Der versierte Business Analyst kann sehr viel an Projekt- und Kommunikationsaufwand abfangen, ein gegenseitiges Verständnis zwischen der Fach- und Technikwelt muss trotzdem sichergestellt werden.
Über den Autor
Michael Makarewicz, Dipl. Ing. der Elektrotechnik, Spezialisierung auf Computertechnik an der TU Wien, verfügt über 25 Jahre Erfahrung als Projektleiter, Anforderungs-Manager, Prozess-Analytiker und Lösungsdesigner, davon 16 Jahre speziell im Identity and Access Management Umfeld. Als Expert Business Consultant bei IPG unterstützt er Kunden bei der Umsetzung ihrer IAM-Vorhaben. Mit seinem technischen und Business-Know-How (PMI Level B, IREB-Advanced, CBAP-zertifiziert) fungiert er als Schnittstelle zwischen den Fachbereichen und der Technik.
Michael Makarewicz
Expert Business Consultant
IPG Information Process Group Austria GmbH