3.3 min readPublished On: 16. Juli 2020By Categories: Bücher, Wissen

Weißt Du was Requirements Engineering ist?

Der Begriff Requirements Engineering ist mir zum allerersten Mal im Titel dieses Buches

Markus Unterauer: Workshops im Requirements Engineering. Methoden, Checklisten und Best Practices für die Ermittlung von Anforderungen

Das Buch brauche ich bitte.

begegnet. Irgendetwas an diesem Begriff fand ich so spannend, dass ich dem Verlag eine E-Mail schrieb und ein Rezensionsexemplar anforderte. Warum auch immer hatte ich das Gefühl, dass Requirements Engineering etwas Magisches sein müsste und heute werden wir gemeinsam in dieses Thema abtauchen und herausfinden, ob sich hinter unserem Begriff wirklich etwas Magisches verbirgt.

Requirements Engenieering – Übersetzung

Das ergibt noch immer keinen Sinn.

In vielen Fällen ist es hilfreich, englische Begriffe ins Deutsche zu übersetzen, um sich ihrer Bedeutung zu nähern. Doch beim den Wörtern Requirements und Engenieering und ihrer Zusammensetzung kann ich mir auf die Übersetzung einfach keinen Reim machen:

  • Requirements – Anforderungen
  • Engineering – Technik, Ingenieurwesen

Doch zum Glück gibt es neben Übersetzungen auch noch Definitionen.

Requirements Engenieering – Definition(en)

Zu meiner großen Freude spannt einen der Autor des Buches nicht lange auf die Folter und löst bereits im Vorwort auf, was es mit Requirements Engenieering auf sich hat:

„In jedem Softwareprojekt müssen wir Anforderungen systematisch ermitteln, dokumentieren, prüfen und abstimmen sowie verwalten. Diese Aufgaben werden unter dem Begriff >> Requirements Engineering<< zusammengefasst.“ [Pohl & Rupp, 2015] Markus Unterauer: Workshops im Requirements Engineering. Methoden, Checklisten und Best Practices für die Ermittlung von Anforderungen, S. vii.

Das ist gar nicht so schwer, wie gedacht.

Was ich an dieser Definition noch immer großartig finde, ist ihre Verständlichkeit. Der Begriff, der in meinen Augen auf den ersten Blick etwas Komplexes und Gewaltiges beschreibt, beschreibt in Wahrheit eine Selbstverständlichkeit. Wenn Du eine Software entwickelst solltest Du 

  • herausfinden, was ihre Nutzer mit ihr machen möchten,
  • dokumentieren, was die Nutzer von der Software fordern,
  • prüfen, ob sich die Anforderungen umsetzen lassen,
  • mit den Entwicklern abstimmen, wie die Anforderungen der Nutzer umgesetzt werden können,
  • die Anforderungen verwalten, indem Du dafür sorgst, dass Du immer weißt, welche Anforderungen bereits umgesetzt wurden und welche noch auf der To-Do-Liste stehen.

Doch ist es wirklich so einfach? Steckt hinter dem Begriff Requirements Engenieering nicht doch mehr? Zu meiner noch größeren Freude beantwortet unser Autor auch diese Frage in seinem Glossar und schenkt uns eine etwas ausführlichere Beschreibung des Requirements Engenieering:

„Das Requirements Engenieering ist ein systematischer und  disziplinierter Ansatz zur Spezifikation und zum Management von Anforderungen mit den folgenden Zielen: (1) Die relevanten Anforderungen kennen, Konsens unter den Stakeholdern […] herzustellen, die Anforderungen konform zu vorgegebenen Standards  zu dokumentieren und […] systematisch zu managen. (2) Die Wünsche und Bedürfnisse der Stakeholder zu verstehen, zu dokumentieren sowie die Anforderungen zu spezifizieren und zu managen, um das Risiko zu minimieren, dass das System nicht den Wünschen und Bedürfnissen der Stakeholder entspricht“ [Pohl & Rupp, 2015] Markus Unterauer: Workshops im Requirements Engineering. Methoden, Checklisten und Best Practices für die Ermittlung von Anforderungen, S. 199.

Mit einem Pudel habe ich maximal die Frisur gemeinsam.

Mit dieser etwas längeren Definition kommen wir endlich zum Pudels Kern. Requirements Engineering ist im Grunde genommen nichts anderes als ein auf Softwareentwicklung spezialisiertes und systematisiertes Projektmanagement. Auch im Projektmanagement geht es darum, Deine Stakeholder – also jene Personen, die am Projekt beteiligt oder von ihm betroffen sind – glücklich zu machen und ein Produkt zu entwickeln, das den Wünschen und Vorstellungen Deines Auftraggebers entspricht.

Requirements Engenieering – Was YouTube sagt

Trotz der Definitionen unseres Autors bin ich noch immer unsicher, ob sich hinter dem Thema nicht doch mehr verbirgt als standardisierte Checklisten und Regeln, die beim Softwareentwicklungsmanagement berücksichtigt werden wollen. Also habe ich mir zur Sicherheit dieses YouTube Video angeschaut und habe das gute Gefühl, dass ich in diesem Beitrag nichts übersehen habe.