04 Übung: Qualitätsprüfung von Anforderungen
January 2026 (625 Words, 4 Minutes)
Einführung
Im Requirements Engineering führen schlecht formulierte Anforderungen zu Missverständnissen, Scope Creep und nicht testbarer Software. Die INVEST-Kriterien helfen uns, die Qualität von Anforderungen zu bewerten und zu verbessern.
Lernziele:
- Verstöße gegen die INVEST-Kriterien in Anforderungen identifizieren
- Vage Anforderungen als testbare Spezifikationen umformulieren
- Anforderungen als Funktionale (FR) oder Nicht-Funktionale (NFR) klassifizieren
Anweisungen:
- Studieren Sie die INVEST-Kriterien-Referenztabelle
- Analysieren Sie jede Anforderung auf Qualitätsprobleme
- Bearbeiten Sie beide Aufgaben schriftlich
- Überprüfen Sie Ihre Antworten anhand der Lösung
Gesamtpunkte: 25 Zeit: ~20 Minuten
Referenz: INVEST-Kriterien
| Kriterium | Bedeutung | Problem bei Verletzung |
|---|---|---|
| Independent (Unabhängig) | Kann ohne Abhängigkeit von anderen Anforderungen implementiert werden | Erzeugt Kopplung, erschwert Priorisierung |
| Negotiable (Verhandelbar) | Details können diskutiert und verfeinert werden | Zu starr, kein Raum für bessere Lösungen |
| Valuable (Wertvoll) | Liefert klaren Mehrwert für Stakeholder | Verschwendeter Aufwand für unnötige Features |
| Estimable (Schätzbar) | Team kann den Implementierungsaufwand schätzen | Planung und Terminierung nicht möglich |
| Small (Klein) | Kann in einer Iteration/Sprint abgeschlossen werden | Zu groß für effektives Management oder Testen |
| Testable (Testbar) | Hat klare, messbare Akzeptanzkriterien | Kann nicht verifizieren, ob Anforderung erfüllt ist |
Zu analysierende Anforderungen
Unten sind 5 Anforderungen, die von Stakeholdern gesammelt wurden. Jede hat Qualitätsprobleme.
Anforderung 1
„Das System sollte schnell sein.”
Anforderung 2
„Die Benutzeroberfläche sollte benutzerfreundlich und modern aussehen.”
Anforderung 3
„Das System muss alle Daten speichern, in mehrere Formate exportieren und sich automatisch von allen Fehlern erholen.”
Anforderung 4
„Die API-Antwortzeit muss für Benutzer akzeptabel sein.”
Anforderung 5
„Das System sollte sicher und vollständig DSGVO-konform sein.”
Aufgabe A: INVEST-Verletzungen identifizieren (10 Punkte)
Listen Sie für jede Anforderung auf, welche INVEST-Kriterien verletzt werden. Erklären Sie kurz warum.
Ihre Antwort:
| Anf. # | Verletzte Kriterien | Erklärung |
|---|---|---|
| 1 | ||
| 2 | ||
| 3 | ||
| 4 | ||
| 5 |
(2 Punkte pro Anforderung)
Aufgabe B: Anforderungen umformulieren und klassifizieren (15 Punkte)
Formulieren Sie jede Anforderung so um, dass sie testbar ist mit klaren Akzeptanzkriterien. Klassifizieren Sie außerdem jede als FR (Funktionale Anforderung) oder NFR (Nicht-Funktionale Anforderung).
Ihre Antwort:
| Anf. # | Umformulierte Anforderung | FR oder NFR? |
|---|---|---|
| 1 | ||
| 2 | ||
| 3 | ||
| 4 | ||
| 5 |
(3 Punkte pro Anforderung: 2 Pkt. für testbare Umformulierung, 1 Pkt. für korrekte Klassifizierung)
Lösung
Lösung anzeigen
Aufgabe A: INVEST-Verletzungen
| Anf. # | Verletzte Kriterien | Erklärung |
|---|---|---|
| 1 | Testable, Estimable | „Schnell" ist subjektiv ohne messbares Ziel. Kann ohne Metriken nicht getestet oder geschätzt werden. |
| 2 | Testable, Small | „Benutzerfreundlich" und „modern" sind subjektiv. Kombiniert zwei Anliegen (Usability + Ästhetik). |
| 3 | Small, Testable | Drei separate Features gebündelt. „Alle Fehler" ist zu breit zum Testen. |
| 4 | Testable | „Akzeptabel" ist subjektiv. Kein definierter Schwellenwert oder Messmethode. |
| 5 | Small, Testable, Estimable | „Sicher" ist vage. DSGVO-Konformität allein ist ein riesiger Umfang. Kann nicht geschätzt oder verifiziert werden. |
Aufgabe B: Umformulierte Anforderungen mit Klassifizierung
| Anf. # | Umformulierte Anforderung | FR/NFR | Begründung |
|---|---|---|---|
| 1 | „Das System soll das Dashboard innerhalb von 2 Sekunden für 95% der Anfragen unter normaler Last (100 gleichzeitige Benutzer) laden." | NFR | Performance/Antwortzeit |
| 2 | „Das System soll die WCAG 2.1 AA Barrierefreiheitsrichtlinien für alle benutzersichtbaren Seiten einhalten." | NFR | Usability/Barrierefreiheit |
| 3 | „Das System soll Benutzerdaten alle 30 Sekunden automatisch speichern, um Datenverlust zu verhindern." (Aufspaltung erforderlich) | FR | Datenpersistenz-Funktion |
| 4 | „Die API soll auf GET-Anfragen innerhalb von 200ms für das 95. Perzentil unter Standardlast antworten." | NFR | Performance |
| 5 | „Das System soll alle personenbezogenen Daten im Ruhezustand mit AES-256 verschlüsseln." | NFR | Sicherheit |
Alternative Umformulierungen für Anf. 3 (zusammengesetzt - Studenten dürfen aufteilen):
- „Das System soll Berichte in PDF- und CSV-Formaten exportieren.” → FR
- „Das System soll fehlgeschlagene Datenbankschreibvorgänge bis zu 3 Mal wiederholen, bevor ein Fehler angezeigt wird.” → NFR (Zuverlässigkeit)
Alternative Umformulierungen für Anf. 5 (zusammengesetzt - Studenten dürfen aufteilen):
- „Das System soll eine ‚Meine Daten löschen’-Funktion bereitstellen, die alle personenbezogenen Daten innerhalb von 72 Stunden entfernt.” → FR
Bewertungshinweise
- Aufgabe A: 2 Punkte vergeben, wenn Student mindestens eine korrekte Verletzung mit vernünftiger Erklärung identifiziert.
- Aufgabe B: 3 Punkte pro Anforderung:
- 2 Pkt. für messbare, testbare Umformulierung (1 Pkt. für teilweise Verbesserung)
- 1 Pkt. für korrekte FR/NFR-Klassifizierung
- Beide Antworten akzeptieren für Anforderungen, die vernünftigerweise beides sein könnten (wie „Meine Daten löschen”-Funktion)