Informatik

Anforderungsanalyse: Anforderungen richtig formulieren

Anforderungsanalyse: Anforderungen richtig formulieren
Anforderungsanalyse: Anforderungen richtig formulieren
Für Quiz, Lückentext, Lernkarten und Fortschritt ist JavaScript nötig. Alle Inhalte und Lösungen bleiben direkt lesbar.

Eine Anforderungsanalyse klärt, was ein System leisten soll und unter welchen Bedingungen es akzeptiert wird. Dazu werden Wünsche ermittelt, geordnet, präzise dokumentiert, geprüft, abgestimmt und bei Änderungen weiterverwaltet.

Auf dieser Seite lernst du, verschiedene Anforderungsarten zu unterscheiden und aus einer unklaren Beschreibung überprüfbare Anforderungen mit Akzeptanzkriterien abzuleiten.

Deine Lernziele

Hake ab, was du schon kannst — und komm am Ende hierher zurück!

Warum Anforderungen vor der Entwicklung geklärt werden

Stell dir vor, ein Auftraggeber verlangt: „Das Programm soll Termine schnell und möglichst passend finden.“ Für die Entwicklung bleiben wichtige Fragen offen: Was bedeutet „schnell“? Wann ist ein Termin „passend“? Wer darf Termine eintragen? Was geschieht, wenn niemand gemeinsam Zeit hat?

Solche Unklarheiten können dazu führen, dass ein technisch funktionierendes System trotzdem nicht den tatsächlichen Bedarf erfüllt. Die Anforderungsanalyse soll deshalb ein gemeinsames Verständnis zwischen Fachseite, Auftraggebern, Nutzenden und Entwicklung herstellen.

Definition

Stakeholder

Ein Stakeholder ist eine Person oder Gruppe, die das System nutzt, Anforderungen stellt, Entscheidungen trifft oder von dem System betroffen ist. Stakeholder können unterschiedliche und sogar widersprüchliche Interessen haben.

Anforderungen bleiben während eines Projekts nicht unverändert. Neue Erkenntnisse, zusätzliche Stakeholder oder geänderte Bedingungen können eine Überarbeitung nötig machen. Anforderungsanalyse ist daher kein einmaliger Startschritt.

Merke

Die Leitfrage lautet: Bauen wir das Richtige? Erst danach geht es darum, ob das System technisch richtig gebaut wurde.

Teste dich
Frage 1 von 1LeichtWarum werden Stakeholder früh einbezogen?
Lösung: Damit unterschiedliche Bedürfnisse und mögliche Konflikte sichtbar werden — Stakeholder liefern verschiedene Perspektiven auf Bedarf, Nutzung und Randbedingungen. Frühe Abstimmung verhindert Missverständnisse, ersetzt aber nicht die spätere Prüfung.
Wie der Prozess abläuft

Die Bezeichnungen unterscheiden sich je nach Vorgehensmodell. Im Kern gehören vier miteinander verbundene Tätigkeiten zum Requirements Engineering:

  1. Ermitteln: Bedürfnisse, Ziele und Einschränkungen bei Stakeholdern und aus weiteren Informationsquellen sammeln.
  2. Dokumentieren: Anforderungen verständlich und einheitlich beschreiben.
  3. Prüfen und abstimmen: Anforderungen auf Qualität, Machbarkeit und Widersprüche untersuchen und zwischen den Beteiligten klären.
  4. Verwalten: Anforderungen kennzeichnen, priorisieren, nachverfolgen und kontrolliert ändern.

Der Begriff Anforderungsanalyse wird unterschiedlich weit verwendet. Im engeren Sinn bezeichnet er vor allem das Strukturieren, Bewerten und Prüfen erhobener Anforderungen. Im weiteren Sinn steht er für nahezu den gesamten beschriebenen Prozess.

Die Tätigkeiten laufen nicht zwingend nacheinander ab. Beim Prüfen kann beispielsweise auffallen, dass Informationen fehlen. Dann beginnt eine neue Ermittlung und die Dokumentation wird angepasst.

Beispiel

Bei einer digitalen Terminfindung äußern Beteiligte zunächst mehrere Wünsche: Formulare sollen verteilt werden, ausgefüllte Angaben sollen gespeichert werden und das System soll mögliche Termine berechnen.

Bei der Analyse werden daraus getrennte Fragen und Anforderungen: Welche Daten werden eingegeben? Wer darf sie sehen? Nach welcher Regel gilt ein Termin als möglich? Wie wird angezeigt, wer noch nicht geantwortet hat? Die Antworten werden dokumentiert, geprüft und mit den Beteiligten abgestimmt.

Teste dich
Frage 1 von 1MittelBei der Prüfung fällt auf, dass „wichtige Personen berücksichtigen“ nicht eindeutig definiert ist. Was ist der nächste sinnvolle Schritt?
Lösung: Mit den Beteiligten klären, welche Personen nach welcher Regel berücksichtigt werden — Eine mehrdeutige Anforderung führt zurück zur Ermittlung und Abstimmung. Die geklärte Regel wird anschließend dokumentiert und erneut geprüft.
Welche Arten von Anforderungen es gibt

Funktionale Anforderungen

Eine funktionale Anforderung beschreibt, was das System tun soll. Sie nennt einen Dienst, eine Verarbeitung oder ein Verhalten bei bestimmten Eingaben und Situationen.

Beispiele:

  • Das System nimmt einen Ausleihgegenstand in den Bestand auf.
  • Ein Administrator kann dabei Autor, Titel und ISBN eingeben.
  • Bei einem belegten Raum legt das System keinen Vorlesungseintrag an und zeigt eine Fehlermeldung.

Qualitätsanforderungen

Eine Qualitätsanforderung beschreibt, wie gut oder unter welchen messbaren Qualitätsbedingungen eine Funktion erfüllt werden soll. Sie kann etwa Antwortzeit, Verfügbarkeit, Benutzbarkeit, Zuverlässigkeit oder Ressourcenbedarf betreffen.

„Das System reagiert zügig“ ist nicht ausreichend prüfbar. Eine präzisere Anforderung nennt einen Zielwert und die Testbedingungen, beispielsweise eine maximale Dauer auf festgelegter Testhardware.

Randbedingungen

Eine Randbedingung begrenzt den möglichen Lösungsraum. Sie kann technisch, rechtlich, organisatorisch, finanziell oder kulturell begründet sein.

Beispiele sind eine vorgeschriebene Ausführungsumgebung, ein festes Budget, eine notwendige Schnittstelle zu einem anderen System oder eine vorgegebene Sprache der Benutzerführung.

Merke

Frage zur Unterscheidung: Was tut das System? weist auf eine funktionale Anforderung. Wie gut tut es das? weist auf eine Qualitätsanforderung. Welche Grenze muss die Lösung einhalten? weist auf eine Randbedingung.

Lückentext

Wähle in jeder Lücke die passende Form und prüfe anschließend deine Antworten.

„Das System speichert einen Vorlesungseintrag“ ist eine . „Der Import dauert höchstens 15 Sekunden“ ist eine . „Das System muss Daten über eine vorgeschriebene Schnittstelle mit MS Excel austauschen“ beschreibt eine für die technische Lösung.

Lösungen: Lücke 1: funktionale Anforderung; Lücke 2: Qualitätsanforderung; Lücke 3: Randbedingung. Funktionale Anforderungen benennen ein Verhalten. Qualitätsanforderungen machen eine Eigenschaft messbar. Randbedingungen begrenzen den Lösungsraum, etwa durch eine verbindlich vorgeschriebene Schnittstelle.
Woran du eine gute Anforderung erkennst

Eine einzelne Anforderung sollte mehrere Qualitätsmerkmale erfüllen:

  • eindeutig: Wichtige Begriffe lassen nur eine beabsichtigte Bedeutung zu.
  • verständlich: Fachseite und Entwicklung können sie gleich verstehen.
  • atomar: Sie enthält nur eine Anforderung, über die getrennt entschieden werden kann.
  • identifizierbar: Eine eindeutige Kennung ermöglicht Verweise und Änderungen.
  • überprüfbar: Ein objektiver Test kann zeigen, ob sie erfüllt ist.
  • nachvollziehbar: Quelle, Begründung und Verbindung zur Umsetzung sind erkennbar.

Für die gesamte Anforderungsmenge gelten zusätzlich:

  • Sie deckt den benötigten Umfang vollständig ab.
  • Die Anforderungen widersprechen einander nicht.
  • Sie sind unter den gegebenen technischen, finanziellen und organisatorischen Bedingungen machbar.
  • Abhängigkeiten und Prioritäten sind sichtbar.

Atomar bedeutet nicht einfach „möglichst kurz“. Der entscheidende Test lautet: Kann über jeden enthaltenen Inhalt separat entschieden und seine Erfüllung separat geprüft werden?

Beispiel

Ungeeignet: „Das System speichert die Vorlesung, zeigt sie an und verschickt eine Nachricht.“

Diese Formulierung verbindet drei getrennt prüfbare Funktionen. Besser sind drei Anforderungen:

  1. Das System speichert einen gültigen Vorlesungseintrag.
  2. Das System zeigt den gespeicherten Vorlesungseintrag an.
  3. Das System versendet nach dem Speichern eine Nachricht an die festgelegten Empfänger.

Nun kann jede Funktion einzeln priorisiert, umgesetzt und getestet werden.

Teste dich
Frage 1 von 1MittelWelche Formulierung ist am besten überprüfbar und atomar?
Lösung: Das System zeigt nach der Verarbeitung eine Liste aller Personen an, von denen noch kein Formular vorliegt. — Die richtige Anforderung beschreibt eine einzelne sichtbare Systemleistung. Ein Test kann Formulare einreichen und anschließend die angezeigte Liste mit den noch ausstehenden Personen vergleichen.
Wie Akzeptanzkriterien eine Anforderung prüfbar machen

Ein Akzeptanzkriterium legt fest, woran die Erfüllung einer Anforderung erkannt wird. Daraus lässt sich ein Testfall ableiten. Besonders bei Qualitätsanforderungen gehören oft Zielwert, Belastung, Umgebung und Testdauer zur Prüfung.

Beispiel

Unklarer Wunsch: „Das System soll stabil und ausfallsicher sein.“

Prüfbare Teilkriterien aus dem Ausgangsmaterial sind beispielsweise:

  • Das System erreicht eine festgelegte prozentuale Verfügbarkeit.
  • Nach einem Ausfall erfolgt der Neustart innerhalb von 30 Sekunden.
  • Falsche Eingaben dürfen keinen Absturz auslösen.

Die Kriterien prüfen unterschiedliche Eigenschaften. Deshalb werden sie nicht als eine einzige Anforderung behandelt.

Bei einem funktionalen Ablauf können Vorbedingung, Eingabe, Verarbeitung und erwartete Ausgabe den Test strukturieren.

Beispiel

Anwendungsfall: Vorlesung eintragen

  • Aktor: Dozent
  • Eingaben: Raum, Zeit und Titel
  • Prüfung: Das System kontrolliert, ob der Raum zur gewünschten Zeit belegt ist.
  • Erfolgsfall: Bei freiem Raum speichert das System den Eintrag und zeigt die Vorlesungsdaten an.
  • Fehlerfall: Bei belegtem Raum speichert das System keinen Eintrag und zeigt eine Fehlermeldung.

Ein passender Test belegt den Raum zunächst mit einer anderen Vorlesung und versucht dann einen zweiten Eintrag zur selben Zeit. Erwartet werden kein neuer Eintrag und eine Fehlermeldung. Damit ist der Fehlerfall objektiv prüfbar.

Teste dich
Frage 1 von 1SchwerWarum reicht das Kriterium „Das System antwortet innerhalb von zwei Sekunden“ je nach Projekt möglicherweise nicht aus?
Lösung: Weil Belastung und Testumgebung fehlen können — Eine Zeitgrenze ist messbar. Für einen reproduzierbaren Test muss aber geklärt sein, unter welcher Last und in welcher technischen Umgebung sie gilt.
Anforderungen aus einem Szenario ableiten

Gehe bei einer informellen Beschreibung schrittweise vor:

  1. Markiere beteiligte Personen oder Systeme.
  2. Suche gewünschte Funktionen und erwartete Ergebnisse.
  3. Trenne Qualitätswünsche und Randbedingungen von den Funktionen.
  4. Zerlege verbundene Aussagen in atomare Anforderungen.
  5. Kläre mehrdeutige Begriffe mit den zuständigen Stakeholdern.
  6. Formuliere zu jeder ausgewählten Anforderung ein prüfbares Akzeptanzkriterium.
  7. Prüfe Widersprüche, Abhängigkeiten, Machbarkeit und Priorität.
Beispiel

Szenario: Ein Dozent gibt Raum, Zeit und Titel ein. Ist der Raum frei, wird die Vorlesung gespeichert und angezeigt. Ist er belegt, darf kein Eintrag entstehen; stattdessen erscheint eine Fehlermeldung.

Daraus lassen sich diese atomaren Anforderungen ableiten:

  • F1: Das System nimmt Raum, Zeit und Titel als Eingaben entgegen.
  • F2: Das System prüft die Raumbelegung für die eingegebene Zeit.
  • F3: Bei freiem Raum speichert das System den Vorlesungseintrag.
  • F4: Nach erfolgreicher Speicherung zeigt das System den Vorlesungseintrag an.
  • F5: Bei belegtem Raum speichert das System keinen Vorlesungseintrag.
  • F6: Bei belegtem Raum zeigt das System eine Fehlermeldung an.

Akzeptanzkriterium für F5: Existiert bereits ein Eintrag für denselben Raum zur selben Zeit, bleibt die Zahl der gespeicherten Einträge nach dem Versuch unverändert.

Akzeptanzkriterium für F6: Existiert bereits ein Eintrag für denselben Raum zur selben Zeit, erscheint nach dem Versuch eine Fehlermeldung.

Die Kennungen machen die Anforderungen identifizierbar. F3 bis F6 hängen vom Ergebnis der Prüfung F2 ab; F4 setzt zusätzlich die erfolgreiche Speicherung aus F3 voraus. Diese Beziehungen müssen bei Planung und Test berücksichtigt werden.

Gut zu wissen

Eine hohe Einzelpriorität garantiert noch kein nutzbares Teilsystem. Zusammengehörige und voneinander abhängige Anforderungen müssen gemeinsam betrachtet werden. Eine Eingabemaske ohne Speicherung oder eine Speicherung ohne verständliche Rückmeldung kann für die Nutzung wertlos sein.

Teste dich
Frage 1 von 1SchwerDas Team will zuerst nur F3 umsetzen, obwohl F2 noch fehlt. Welches Problem entsteht?
Lösung: Ob der Erfolgsfall gilt, kann ohne die Belegungsprüfung nicht zuverlässig entschieden werden. — F3 ist fachlich von F2 abhängig. Priorisierung muss daher neben der Wichtigkeit auch Abhängigkeiten und die Nutzbarkeit des entstehenden Teilsystems beachten.
Karteikasten
Karteikasten

Überlege zuerst selbst und drehe die Karte anschließend zum Prüfen um.

Alles auf einen Blick
Mindmap
  • Anforderungsanalyse
    • Ermitteln: Bedürfnisse und Konflikte erkennen
    • Dokumentieren: Anforderungen eindeutig festhalten
    • Prüfen: Qualität, Machbarkeit und Widersprüche untersuchen
    • Abstimmen: gemeinsames Verständnis herstellen
    • Verwalten: Kennungen, Prioritäten und Änderungen pflegen
  • Anforderungsarten
    • Funktional: Was tut das System?
    • Qualität: Wie gut tut es das?
    • Randbedingung: Welche Grenze gilt?
  • Gute Anforderungen
    • eindeutig, verständlich und atomar
    • überprüfbar, konsistent und nachvollziehbar
  • Vom Wunsch zum Test
    • Szenario zerlegen
    • Akzeptanzkriterium formulieren
    • Testfall mit erwartetem Ergebnis ableiten
Abschluss-Check
Teste dich
Frage 1 von 3LeichtWelche Tätigkeit gehört zum fortlaufenden Umgang mit geänderten Anforderungen?
Lösung: Verwalten — Beim Verwalten werden Anforderungen strukturiert, priorisiert, nachverfolgt und kontrolliert geändert.
Frage 2 von 3MittelWelche Aussage ist eine funktionale Anforderung?
Lösung: Bei belegtem Raum speichert das System keinen Vorlesungseintrag und zeigt eine Fehlermeldung. — Die richtige Aussage beschreibt ein konkretes Systemverhalten in einer bestimmten Situation.
Frage 3 von 3SchwerEine Anforderung ist eindeutig und messbar, widerspricht aber einer anderen Anforderung. Welches Qualitätsproblem bleibt bestehen?
Lösung: Die Anforderungsmenge ist nicht konsistent. — Eine einzelne Anforderung kann gut formuliert sein und trotzdem im Widerspruch zur gesamten Spezifikation stehen. Deshalb werden Einzelanforderungen und ihre Beziehungen geprüft.

Du kannst eine Anforderungsanalyse erfolgreich durchführen, wenn du unklare Wünsche in getrennte Anforderungsarten überführst, Mehrdeutigkeiten abstimmst und für jede zentrale Anforderung einen nachvollziehbaren Testweg formulierst.

Passend dazu