Die Arbeit mit Anforderungen ist vor allem in Projekten nicht mehr wegzudenken. Zur Anforderungsermittlung zählen verschiedene Aufgaben. So werden Anforderungen dokumentiert, verwaltet und auch mit Stakeholdern abgestimmt. Bevor es jedoch dazu kommen kann, müssen Anforderungen zunächst ermittelt werden – in der IT das Requirements Engineering. Dies ist ein kreativer Prozess, für den es in dem Sinne kein „richtig“ oder „falsch“ gibt. Je nach Art der Anforderung oder Projektsituation eignen sich jedoch bestimmte Techniken, um Anforderungen zu erheben. In diesem Blogeintrag gehe ich kurz auf die verschiedenen Einflussfaktoren für die Wahl der Techniken und auf verschiedene Kategorien für Ermittlungstechniken ein. Zu guter Letzt wird es ein kurzes Beispiel geben, in dem eine Kombination an Techniken dargestellt wird.
Update Juli 204: Seit kurzem bietet CampusLab einen eLearning Kurs zur Theorie und Praxis rund um Anforderungsermittlung:
Ein von Experten entwickelter Lernpfad führt Sie durch die Arbeit mit Anforderungen an IT-Systeme. Dabei erlernen Sie in diesem neuartigen E-Learning Kurs alle Inhalte des IREB Certified Professional Requirements Engineer – Foundation Level (CPRE-FL).
Einflussfaktoren für die Wahl der Techniken
Es gibt verschiedene Einflussfaktoren, um die richtige Technik zu wählen. Hierzu zählen menschliche Einflüsse, organisatorische Verfügbarkeit, die inhaltliche Ebene der Anforderung und der Detaillierungsgrad.
Bei den menschlichen Einflussfaktoren stellt sich die Frage, ob Stakeholder in der Lage sind, Anforderungen explizit zu nennen. Oft werden Anforderungen nämlich als selbstverständlich vorausgesetzt und liegen dementsprechend nur unbewusst vor. Am Beispiel einer Armbanduhr könnte ein Anforderer sicher noch sagen, ob diese digital, smart oder analog sein soll. Grundlegende Funktionen wie das Anzeigen von Stunden, Minuten und Sekunden werden dabei jedoch als so selbstverständlich vorausgesetzt, dass diese meistens nicht mehr explizit genannt werden.
In Hinblick auf organisatorische Verfügbarkeit ist die Frage, wie viel Zeit Stakeholder haben und ob diese vor Ort sind. So kann es beispielsweise sein, dass einige Stakeholder täglich vor Ort sind und für längere Workshops zur Verfügung stehen. Andere wiederum sind regelmäßig bei der Kundschaft unterwegs und können nur an kurzen telefonischen Interviews teilnehmen.
Weiterhin sollte berücksichtigt werden, auf welcher fachlichen oder inhaltlichen Ebene Anforderungen ermittelt werden. Beim Ermitteln von Workflows eignen sich andere Techniken als beim Ermitteln von technischen Schnittstellen. Geht es darum, herauszufinden, wie Stakeholder den Prozess zur Buchhaltung durchführen? Oder eher darum, mit welchen anderen Systemen ein Buchhaltungssystem verbunden wird und welche Daten über diese Schnittstellen übertragen werden?
Letztendlich stellt sich noch die Frage nach dem Detaillierungsgrad. Grundlegende Anforderungen werden auf hoher Flughöhe erhoben. Auch detaillierte fachliche Anforderungen oder sogar bereits detaillierte technische Anforderungen sind denkbar.
Wie bereits erwähnt gibt es bei der Wahl der Techniken zum Ermitteln von Anforderungen kein „richtig“ oder „falsch“. Je nach Ausprägung der verschiedenen Einflussfaktoren eignen sich bestimmte Ermittlungstechniken mehr als andere. Deswegen sollte ein Requirements Engineer die Einflussfaktoren im Hinterkopf behalten, wenn die Entscheidung für eine passende Ermittlungstechnik getroffen wird.
Kategorien für Techniken zur Anforderungsermittlung
Die Kategorien, in welche die Ermittlungstechniken untergliedert werden können, sind folgende: Befragungstechniken, Kreativitätstechniken, dokumentenzentrierte Techniken, Beobachtungstechniken und Prototyping.
Befragungstechniken setzen zwei Gegebenheiten voraus. Zum einen müssen Stakeholder Anforderungen explizit nennen können und zum anderen sollten sie genug Zeit für eine Befragung haben. Befragungstechniken eignen sich, wenn explizit geforderte oder sogar innovative Anforderungen ermittelt werden sollen. Der Detaillierungsgrad kann dabei sehr hoch sein. Beispiele für Befragungstechniken sind Interviews und Fragebögen.
Kreativitätstechniken haben einen vergleichsweise geringen Aufwand. Sie sind insbesondere für innovative Anforderungen geeignet. Techniken aus dieser Kategorie sind Brainstorming oder ein Perspektivwechsel. Je nach Technik können dabei allgemeine oder detaillierte Anforderungen erhoben werden.
Außerdem gibt es dokumentenzentrierte Techniken. Mit ihnen werden grundlegende Anforderungen aus Dokumentation von bereits existierenden Systemen ermittelt. Es werden Anforderungen wiederverwendet, die bereits in anderen Systemen umgesetzt wurden. Entsprechend eignen sich diese Techniken für detaillierte und sehr technische Anforderungen. Stakeholder werden hierbei weniger einbezogen. Beispiele für dokumentenzentrierte Techniken sind Systemarchäologie oder perspektivenbasiertes Lesen.
Mit Beobachtungstechniken werden grundlegende Funktionalitäten durch Beobachten und Dokumentieren von Arbeitsabläufen ermittelt. Dabei führen Stakeholder ihre tägliche Arbeit ganz normal durch. Um verschiedene Abläufe und Funktionen besser zu verstehen, schaut ihnen der Requirements Engineer jedoch dabei zu. Beobachtungstechniken eignen sich für detaillierte fachliche Anforderungsermittlung. Beispiele hierfür sind Feldbeobachtung und Apprenticing.
Mit der letzten Ermittlungstechnik, dem Prototyping, werden initiale Systemversionen erstellt. Hier wird durch schnelles Feedback ein besseres Verständnis über die Lösung erlangt. Mit Prototypen auf Papier können innovative Anforderungen ermittelt werden, da Papierprototypen schnell erstellt und wieder verworfen werden können. Digitale Prototypen eignen sich dagegen auch für konkrete und relativ detaillierte Anforderungen. Auch weitere Arten von Prototypen wie GUI Sketches sind denkbar.
Beispiel zur Anforderungsermittlung
In einem Projekt werden in der Regel mehrere Techniken aus verschiedenen Kategorien kombiniert. Zum einen ergänzen sie sich mit ihren Stärken und Schwächen sehr gut, zum anderen sind sie jedoch auch für verschiedene Projektsituationen oder inhaltliche Ebenen gut geeignet. Durch den kombinierten Einsatz werden Anforderungen möglichst umfassend ermittelt. Das folgende Beispiel soll das veranschaulichen.
Das Buchen von Zugtickets soll intuitiver und nutzerfreundlicher gestaltet werden. Dafür wird das alte Buchungssystem durch ein Neues ersetzt. Um neue und innovative Anforderungen zu ermitteln, organisiert der Requirements Engineer einen Workshop mit Experten, um mit der Kreativtechnik Brainstorming neue Ideen zu sammeln (Anforderungsermittlung). Zusätzlich soll das Feedback künftiger Kunden mit Befragungstechniken berücksichtigt werden. Die Kunden werden eingeladen, Online-Fragebögen auszufüllen, in denen die neuen, innovativen Ideen bewertet und gegebenenfalls weitere Wünsche geäußert werden können. Um grundlegende und detaillierte Anforderungen zu ermitteln, wird die dokumentenzentrierte Technik Systemarchäologie auf die Dokumentation des alten Buchungssystems angewandt. Dabei werden keine weiteren Stakeholder einbezogen.
Wie das Beispiel zeigt, werden Ermittlungstechniken aus verschiedenen Kategorien kombiniert. Es werden verschiedene Stakeholder wie Experten und Kunden, aber auch verschiedene Detaillierungsgrade von Ideen bis zu detaillierten Anforderungen berücksichtigt. Anforderungen zu ermitteln ist demzufolge ein kreativer Prozess. Es gibt nicht die eine richtige Technik. Verschiedene Einflussfaktoren wirken sich hier auf die Wahl aus. Außerdem sind die Ermittlungstechniken für unterschiedliche Projektsituationen geeignet, weswegen Techniken aus verschiedenen Kategorien in der Regel kombiniert werden.
Wer einige Techniken ausprobiert, bekommt am besten ein Gefühl dafür, was sich in welcher Situation eignet. Oft hilft auch schon ein Gedankenspiel. Welche Ermittlungstechnik hätte in einem vergangenen Projekt zur Anforderungsermittlung gut geholfen und warum? Dabei hilft es, sich klar zu machen, welche Anforderungen ermittelt und welche Stakeholder miteinbezogen werden sollen. Wie sieht das in einem heutigen Projekt aus und welche Technik eignet sich dementsprechend? Den Antworten sind keine Grenzen gesetzt.