Entwicklung von komplexen Systemen
Andere Disziplinen innerhalb des Requirement Engineerings sind beispielsweise die Anforderungsdefinition und hier die Teilgebiete Anforderungsanalyse sowie Anforderungsdokumentation und Anforderungsvalidierung enthalten. Die Anforderungsverwaltung dagegen umfasst Maßnahmen, die der Steuerung sowie der Kontrolle und auch der Verwaltung von Anforderungen dient, damit das Risikomanagement wie auch das Änderungsmanagement und das Umsetzungsmanagement beinhaltet.
Die Definition basiert auf den Erkenntnissen der Vergangenheit, dass erhebliche Probleme mit Anforderungen üblicherweise auf ein mangelndes Management dieser Anforderungen zurückzuführen sind. Zwischenzeitlich sind Erkenntnisse herangereift, dass allein die Aufstellung von Anforderungen nicht ausreichend ist. Für die Realisierung eines Systems oder auch eines Produktes ist ein weitreichender Prozess des Anforderungsmanagements unbedingt erforderlich.
Die Ziele des Anforderungsmanagements liegen vor allem darin, komplexe Systeme und Produkte zu konzipieren und die Entwicklung arbeitsteilig umzusetzen. Ziel ist es, ein gemeinschaftliches Verständnis für ein in der Entwicklung befindliches System zwischen dem Auftraggeber und Auftragnehmer zu erreichen. Gleichzeitig haben die daraus resultierenden Dokumente nicht selten den Charakter der vertraglichen Basis für weitere Umsetzungen.
Ein gemeinschaftliches Verständnis lässt sich durch eine Einführung sowie die Umsetzung verschiedener Anforderungsmanagementmethoden wie der Anforderungsanalyse, dem Scoping, den Anforderungsspezifikationen sowie den Anforderungsreviews und auch der Anforderungsmodellierung umsetzen. Durch die Nutzung solcher Methoden kann eine Steigerung der Qualität innerhalb der Anforderungsdokumentation erzielt werden. Wichtige Kriterien im Hinblick auf die Qualität der Anforderungsdokumentation liegen darin, dass diese verständlich und eindeutig sowie nachweisbar und rückverfolgbar, dazu widerspruchsfrei und vollständig gestaltet sind.
Das Anforderungsmanagement setzt voraus, dass bestimmte Prozesse definiert und auch implementiert werden. Das wird dadurch erreicht, dass die gesamte Anforderungsdokumentation innerhalb des kompletten Projektverlaufs immer aktuell gehalten wird und dass diese damit am Schluss als Basis für eine Erstellung von Testfällen zum Einsatz gelangen kann.
Richtlinien an Anforderungsanalysen
Eine erfolgreich umgesetzte Anforderungsanalyse bedingt, dass auch Richtlinien innerhalb dieser eingehalten werden. Erst dann ist es möglich, Analysetechniken sowie auch Kreativtechniken zum Einsatz gelangen zu lassen. Die Richtlinien, auch als allgemeine Techniken bezeichnet, können generell in grundlegende und fortgeschrittene Techniken unterschieden werden. Bei der Erstellung von technischen Dokumenten sind üblicherweise die grundlegenden Techniken einzuhalten, während innerhalb des Anforderungsmanagements die fortgeschrittenen Techniken zum Einsatz gelangen.
Die einfachen Methoden
Innerhalb der einfachen Methoden ist eine klare Strukturierung wichtig. Dabei ist es eine Basisaufgabe, explizit zu fixieren, welche Zielsetzung mit dem Anforderungsmanagement erzielt werden soll. Zur Erreichung der Ziele sollen die Abläufe und die eingesetzten Techniken bekannt werden, denn das fördert die Erstellung von Standards und die Errichtung von Richtlinien, die eine unternehmens- oder auch bereichsweite Vergleichbarkeit des Anforderungsmanangements ermöglichen.
Konflikte zwischen Anforderungen sollen erkannt und auch gelöst werden, denn Anforderungen können eine Neigung dazu haben, sich gegenseitig auszuschließen oder auch zu behindern.
Eine angemessene Planung von Anforderungen und deren Umsetzung ist zudem wichtige Bedingung. Sofern dies möglich ist, sollte zudem innerhalb der Anforderungsanalyse bereits ein vorauszusehender Aufwand berücksichtigt werden, um diese Information für weitere Planungen zu nutzen.
Die Dokumentation sollte einfach gestaltet sein. Das Ziel des Anforderungsmanagments ist eine Erstellung von Dokumenten. Die Anforderungen können teilweise auch eine tabellarische Form erhalten, damit sie besonders gut strukturierbar sind. Wichtig ist eine klare und einfache Sprache, die wiederum allen Beteiligten innerhalb des Prozesses geläufig ist. Handelt es sich bei den erstellten Dokumenten um Texte mit technischen Inhalten, sollten sie eine korrekte und klare Sprache aufweisen.
Auch nicht-funktionelle Anforderungen müssen beschrieben werden. Mit klar standardisierten Beschreibungstechniken wird umgesetzt, dass die Verständlichkeit von Dokumenten vereinfacht wird. Mit der standardisierten Prüfung wird erreicht, dass eventuelle Ausuferungen gestoppt werden und dass die Dokumente unternehmensweit einheitlich gehalten sind oder dass die Entwicklung zumindest einheitlich weiter angestrebt wird.
Die Identifizierbarkeit und Nachvollziehbarkeit wird mit einem den Dokumenten eindeutig zugeordneten Dokumentenschlüssel umgesetzt. So wird die Suche und die Referenzierung von Dokumenten erleichtert, wenn sie in verschiedenen Versionen gespeichert wurden.
Die fortgeschrittenen Methoden
Hier ist das Ziel, ein einfaches Risikomanagement umzusetzen. Es gilt, sich auf eine begrenzte Auswahl von nur wenigen Risiken zu beschränken. Da diese Überlegungen oftmals auch reinen Motivationsgründen eine nachrangige Behandlung erfahren, ist es nicht sinnvoll, wenn ein umfangreiches Risikomanagement betrieben wird. Wichtiger ist es, zentrale Risiken aufzudecken und diese auch zu behandeln.
Verschiedene Anforderungen werden unterschiedlich gewichtet, allerdings ist diese Betrachtung sehr betrachterabhängig. Ein Programmierer beispielsweise bewertet eine Anforderung anders als ein anderer in das Projekt eingebundene Mitarbeiter. Wichtig ist es daher, innerhalb einer Gruppe verschiedene Anforderungen zu priorisieren, damit für bestimmte Teilaspekte wichtige Anforderungen zu identifizieren und ihnen in diesen Bereichen allgemein akzeptierte Bedeutungen zuzuordnen.
Erfahrungen müssen gesammelt und strukturiert werden, wobei hier eine sehr anspruchsvolle und nützliche, gleichzeitig aber nur mit hohem technischen Aufwand umzusetzende und mit Konsequenz und Fleiß zu betreibende pflegende Methode die Nutzung einer Erfahrungsdatenbank ist. Klassische Problemsituationen und deren Lösungen sowie erfolgreich verlaufene Handlungsalternativen und nützliche erkannte Techniken können so gesammelt und im Unternehmen verfügbar gemacht werden. Diese Aufgaben werden üblicherweise an einen Mitarbeiter übertragen. Dieser wird in der Folge als Anforderungsmanager bezeichnet. In einigen Unternehmen wird auch die Bezeichnung des Compliance Manager für diese Tätigkeit genutzt. Ist keine andere Regelung vorgeschrieben, müssen dennoch keine neuen Stellen hierfür geschaffen werden. Die Aufgabe kann sowohl vom Sicherheitsmanagement wie auch der Revision, vom Controlling oder auch dem Justitiariat angenommen werden.
Einsatz von Anforderungsmanagement
Ein gutes und strukturiertes Anforderungsmanagement kommt immer dann zum Einsatz, wenn in einem Bereich komplexe Systeme entwickelt werden und entstehen. Die Kriterien wie die Eindeutigkeit, die Verständlichkeit sowie die Vollständigkeit und die Nachweisbarkeit können in diesem Zusammenhang die Beurteilung von erreichten Ergebnissen erleichtern und für alle Beteiligten transparenter machen. Klassische Erfahrungen belegen, dass über die Hälfte von Anwendungsentwicklungsprojekten ihre ursprünglich angestrebte Projektlaufzeit stark übersteigen und dass zudem auch ein großer Teil von Projekten einen ergebnislosen Abbruch erfährt. Die Hintergründe liegen hier überwiegend in Fehlern innerhalb des Anforderungsmanagements.
Das Anforderungsmanagement unterstützt die Verwaltung von Anforderungen innerhalb der Ausführung von Managementaufgaben. Deshalb findet sehr häufig eine Verschmelzung von Projektmanagement und Anforderungsmanagement statt. Innerhalb des Anforderungsmanagements müssen zum Beispiel Anforderungen priorisiert und verhandelt werden und auch die Änderung von Anforderungen wird hier verwaltet. Auch in die Auswahl von Technologien sowie die Evaluation von Risiken und die Schätzung von Kosten und Zeit für ein Projekt spielt das Anforderungsmanagement ein.
Softwarebasiertes Anforderungsmanagement
Eine Software für das Anforderungsmanagement verwaltet die Anforderungen. Hier erfolgt eine Erfassung und Verwaltung von Anforderungen, wobei jede Anforderung hier für sich steht und daher als eigenständiges Objekt behandelt werden kann. Damit sind mit der Software die Voraussetzungen dafür geschaffen, die Strukturen einer Anforderung innerhalb der Software abzubilden und auch gleich eine elektronische Auswertung vorzunehmen. Anders als bei der Ablage von Anforderungen innerhalb von Textdateien oder Tabellenkalkulationen ist die Auswertbarkeit innerhalb der Software deutlich günstiger gegeben.
Wesentliche Vorteile der Nutzung einer Software liegen darin, dass Anforderungen sofort verlinkt werden können, damit eine optimale Rückverfolgung gewährleistet ist. Dazu kann eine Versionierung der Anforderungen erfolgen. Auch kann der Status der jeweiligen Anforderung einfach dokumentiert werden und damit steht für jede Anforderung ein Lebenszyklus zur Verfügung.
Das Einsatzgebiet einer solchen Software liegen in der Praxis einerseits innerhalb der Erhebung und Dokumentation einzelner Anforderungen im Kontext mit der jeweiligen Anforderungserhebung und zum anderen in der Rückverfolgbarkeit, die gewährleistet sein muss. Die Software unterstützt Anwender, die Anforderungen jeweils im konsistenten Zustand zu erzielen, damit eine Aussage über das zu entwickelnde System jederzeit gegeben werden kann.
Quellen:
ips.tu-braunschweig.de (PDF)