Zum Hauptinhalt springen

Requirements Engineering

Requirements Engineering ist die systematische Disziplin, Anforderungen an ein System zu ermitteln, zu dokumentieren, zu prüfen und über den gesamten Lebenszyklus zu verwalten. Ziel ist ein gemeinsames, prüfbares Verständnis davon, was das System leisten soll — zwischen Auftraggebern, Entwicklern, Testern und allen weiteren Beteiligten. Fehler in den Anforderungen sind erfahrungsgemäß besonders teuer: Je später sie entdeckt werden, desto mehr nachgelagerte Arbeit — Design, Implementierung, Tests — muss korrigiert werden.

Die vier Haupttätigkeiten

Requirements Engineering umfasst vier eng verzahnte Tätigkeiten, die iterativ und über die gesamte Projektlaufzeit ausgeführt werden — nicht als einmalige Phase am Anfang:

TätigkeitInhalt
Ermittlung (Elicitation)Anforderungen aus Stakeholdern, Dokumenten, Altsystemen und Normen gewinnen — durch Interviews, Workshops, Beobachtung, Analyse
DokumentationAnforderungen festhalten: natürlichsprachlich, über Satzschablonen oder modellbasiert
Prüfung & AbstimmungAnforderungen auf Qualität prüfen und Konflikte zwischen Stakeholdern auflösen
Verwaltung (Management)Anforderungen versionieren, priorisieren, Änderungen steuern und Traceability herstellen

Für die Disziplin existiert mit dem IREB (International Requirements Engineering Board) und dem CPRE-Zertifizierungsschema ein etabliertes, herstellerneutrales Ausbildungsfundament.

Was macht eine gute Anforderung aus?

Verbreitete Qualitätskriterien: Eine Anforderung soll eindeutig (nur eine Interpretation), prüfbar (Erfüllung objektiv feststellbar), atomar (ein Sachverhalt pro Anforderung), konsistent (widerspruchsfrei zu anderen Anforderungen) und notwendig sein. Der Unterschied zeigt sich am Beispiel:

  • Schwach: „Das System muss schnell auf Bremsanforderungen reagieren."
  • Prüfbar: „Das System muss nach Empfang einer Bremsanforderung innerhalb von 50 ms den Bremsdruckaufbau einleiten."

Die erste Formulierung lässt sich weder implementieren noch testen, ohne dass jemand die eigentliche Entscheidung stillschweigend nachholt — oft eine andere Person mit einer anderen Interpretation. Gerade bei höherer Kritikalität empfehlen Normen wie die ISO 26262 deshalb semi-formale Spezifikationsmethoden, die Mehrdeutigkeit von vornherein reduzieren.

Requirements Engineering und Traceability

Die vierte Tätigkeit — die Verwaltung — verbindet Requirements Engineering mit der Nachweisführung: Anforderungen sind kein statischer Bestand, sondern ändern sich über die gesamte Entwicklung. Jede Änderung wirft dieselben Fragen auf: Welche Architekturelemente, welche Implementierung, welche Testfälle sind betroffen? Beantwortbar sind diese Fragen nur mit gepflegter Traceability — den nachvollziehbaren Verknüpfungen von der Stakeholder-Anforderung über die Systemanforderung bis zu Umsetzung und Test. Prozessmodelle wie Automotive SPICE verlangen genau diese bidirektionale Nachverfolgbarkeit als Basispraktik.

Requirements Engineering in der Praxis: die Verwaltung entscheidet

In realen Projekten scheitert Requirements Engineering seltener an der Ermittlung als an der Verwaltung über Werkzeuggrenzen hinweg: Stakeholder-Anforderungen liegen im Requirements-Management-Werkzeug, abgeleitete Softwareanforderungen in einem zweiten System, Tests in einem dritten. Zwischen diesen Silos verlieren Anforderungen ihre Herkunft und ihre Wirkung — und bei jeder Änderung beginnt die manuelle Suche, was alles betroffen ist. Wer Requirements Engineering ernst nimmt, muss deshalb neben der Qualität einzelner Anforderungen auch die Durchgängigkeit der Kette organisieren: von der Quelle bis zum Testfall, über alle beteiligten Werkzeuge hinweg.

Häufige Fragen

Was ist der Unterschied zwischen Requirements Engineering und Requirements Management?
Requirements Engineering ist der Oberbegriff für alle vier Haupttätigkeiten: Ermittlung, Dokumentation, Prüfung und Verwaltung von Anforderungen. Requirements Management bezeichnet die vierte Tätigkeit — die Verwaltung über den Lebenszyklus, also Versionierung, Änderungsmanagement, Priorisierung und Traceability. Management ohne saubere Ermittlung und Dokumentation verwaltet nur schlechte Anforderungen effizienter.
Was unterscheidet funktionale von nicht-funktionalen Anforderungen?
Funktionale Anforderungen beschreiben, was das System tun soll — etwa eine Berechnung, eine Reaktion auf ein Ereignis. Nicht-funktionale Anforderungen (Qualitätsanforderungen) beschreiben, wie gut es das tun soll — etwa Antwortzeiten, Zuverlässigkeit, Sicherheit oder Wartbarkeit. Nicht-funktionale Anforderungen werden häufig vergessen oder unprüfbar formuliert, obwohl sie Architekturentscheidungen am stärksten treiben.
Warum ist Requirements Engineering in Safety-Projekten so wichtig?
Weil Sicherheitsnormen wie die ISO 26262 die Spezifikation von Sicherheitsanforderungen und deren Nachverfolgbarkeit bis in Verifikation und Test explizit fordern — mit steigender Strenge je ASIL. Eine mehrdeutige oder unprüfbare Anforderung ist dort nicht nur ein Qualitätsproblem, sondern eine Lücke im Sicherheitsnachweis.

Verwandte Begriffe

Fachlich geprüft von Florian Antony, Principal Software Engineer & IT Consultant am 20. Juli 2026