Agile Entwicklung ist eine Methodologie, die sich auf die iterative und inkrementelle Entwicklung von Softwareprodukten konzentriert. Sie legt Wert auf die Zusammenarbeit zwischen fachübergreifenden Teams, kontinuierliches Feedback und Flexibilität bei der Änderung von Anforderungen während des gesamten Entwicklungsprozesses. Zwei beliebte Techniken, die in der agilen Entwicklung eingesetzt werden, sind Benutzerstories und Benutzerfälle. In diesem umfassenden Leitfaden werden wir beide Techniken untersuchen und argumentieren, dass sie beide für die agile Entwicklung geeignet sind, wenn sie angemessen eingesetzt werden.

Benutzerstories
Benutzerstories sind kurze, einfache Beschreibungen einer Funktion aus der Perspektive des Endnutzers.
Sie folgen typischerweise einem bestimmten Template:
„Als [Art des Nutzers], möchte ich [ein bestimmtes Ziel] damit [ein bestimmter Grund].”
Benutzerstories sind ein wirksames Werkzeug in der agilen Entwicklung, da sie Teams helfen, sich auf die Bedürfnisse des Endnutzers zu konzentrieren, und die Kommunikation sowie die Zusammenarbeit zwischen den Stakeholdern fördern.
Beispiel: Angenommen, unser Team entwickelt eine neue E-Commerce-Plattform.
Ein Benutzerstory könnte folgendermaßen aussehen:
„Als Käufer, möchte ich in der Lage sein, Suchergebnisse nach Preisbereich zu filterndamit ich Produkte innerhalb meines Budgets finden kann.”
Warum ist dies eine gute Wahl für die agile Entwicklung?
Benutzerstories sind eine hervorragende Wahl für die agile Entwicklung, da sie leichtgewichtig, einfach zu schreiben sind und ein gemeinsames Verständnis darüber vermitteln, was gebaut werden muss. Sie sind außerdem flexibel und können während des gesamten Entwicklungsprozesses leicht angepasst werden. Dies macht sie zu einer idealen Wahl für agile Teams, die Wert auf Zusammenarbeit, kontinuierliches Feedback und Anpassungsfähigkeit legen.
Benutzerfälle
Benutzerfälle sind detaillierte Beschreibungen des Verhaltens eines Systems aus der Perspektive eines Akteurs (gewöhnlich eines Benutzers oder eines anderen Systems). Sie bestehen typischerweise aus einer Reihe von Schritten, die ein Benutzer unternimmt, um ein bestimmtes Ziel zu erreichen, und beschreiben die Interaktionen zwischen Benutzer und System. Benutzerfälle sind ein wesentliches Werkzeug in der agilen Entwicklung, da sie Teams helfen, das Verhalten des Systems zu verstehen und potenzielle Probleme bereits in frühen Phasen des Entwicklungsprozesses zu erkennen.
Beispiel: Lassen Sie uns das Beispiel einer E-Commerce-Plattform weiterführen.
Ein Benutzerfall könnte folgendermaßen aussehen:
„Ein Käufer sucht ein Produkt auf der Plattform. Er wendet einen Preisfilter an und sortiert die Ergebnisse nach Kundenbewertungen. Er fügt das Produkt in seinen Warenkorb ein und geht zur Kasse. Nach der Überprüfung der Bestelldetails gibt er seine Zahlungsinformationen ein und schließt den Kauf ab.“
Warum ist dies eine gute Wahl für die agile Entwicklung?
Benutzerfälle sind ebenfalls eine hervorragende Wahl für agiles Entwicklung, da sie ein detailliertes Verständnis darüber vermitteln, wie ein System funktionieren sollte. Sie helfen Teams, potenzielle Probleme bereits in einem frühen Stadium des Entwicklungsprozesses zu erkennen und sicherzustellen, dass das System die Bedürfnisse des Endbenutzers erfüllt. Sie sind auch nützlich für Testen und Validierung, was ein wesentlicher Aspekt agiler Entwicklung ist.
Vergleich von Benutzerstories und Benutzerfällen
Obwohl sowohl Benutzerstories als auch Benutzerfälle für agiles Entwicklung geeignet sind, unterscheiden sie sich in mehreren Punkten. Benutzerstories sind leichtgewichtig und konzentrieren sich auf die Bedürfnisse des Endbenutzers, während Benutzerfälle detaillierter sind und das Verhalten des Systems beschreiben. Benutzerstories werden typischerweise verwendet, um hochrangige Anforderungen zu erfassen, während Benutzerfälle spezifische Interaktionen zwischen Benutzer und System beschreiben.
Letztendlich hängt die Wahl zwischen Benutzerstories und Benutzerfällen von den spezifischen Anforderungen des Projekts ab. Benutzerstories sind für Projekte besser geeignet, bei denen die Anforderungen unklar oder wahrscheinlich veränderlich sind, während Benutzerfälle für Projekte besser geeignet sind, bei denen die Anforderungen gut definiert und spezifisch sind. In der Praxis verwenden viele Teams beide Techniken, um sicherzustellen, dass sie ein vollständiges Verständnis für das Verhalten des Systems und die Bedürfnisse des Endbenutzers haben.
Beispiel – Online-Supermarkt
Beispiel für eine Benutzerstory: „Als beschäftigte Mutter möchte ich in der App eine Einkaufsliste erstellen können, damit ich leicht verfolgen kann, welche Artikel ich kaufen muss. Außerdem möchte ich in der Liste Artikel hinzufügen und entfernen können und Artikel als gekauft markieren, wenn ich mit dem Einkaufen fertig bin.”
In dieser Benutzerstory haben wir ein bestimmtes Feature beschrieben, das die Bedürfnisse des Endbenutzers (beschäftigte Mütter) erfüllt und ihnen Wert bietet (einfache Verfolgung ihrer Einkaufsliste). Die Benutzerstory ist aus der Perspektive des Endbenutzers verfasst und verwendet ein spezifisches Template, um Klarheit und Konsistenz zu gewährleisten.
Beispiel für einen Benutzerfall: Der Benutzer möchte eine neue Einkaufsliste in der App erstellen. Er öffnet die App und navigiert zur Funktion Einkaufsliste. Er klickt auf die Schaltfläche „Neue Liste erstellen“ und gibt einen Namen für die Liste ein. Anschließend beginnt er, Artikel zur Liste hinzuzufügen, indem er auf die Schaltfläche „Artikel hinzufügen“ klickt und den Namen des Artikels eintippt. Er kann außerdem eine Menge oder zusätzliche Notizen angeben. Sobald der Benutzer alle benötigten Artikel hinzugefügt hat, kann er die Liste speichern und später darauf zurückkehren. Er kann auch Artikel als gekauft markieren, wenn sie bereits gekauft wurden.
In diesem Benutzerfall haben wir ein konkretes Szenario beschrieben, in dem der Benutzer mit der Funktion Einkaufsliste der App interagiert. Wir haben die Schritte beschrieben, die der Benutzer unternimmt, um sein Ziel zu erreichen, sowie die Interaktionen zwischen Benutzer und System. Der Benutzerfall ist detaillierter als die Benutzerstory und bietet ein vollständiges Verständnis dafür, wie das Feature funktionieren sollte.
Beide Ansätze, Benutzerstory und Benutzerfall, sind für agiles Entwicklung nützlich. Die Benutzerstory bietet eine Übersicht auf hohem Niveau des Features und konzentriert sich auf die Bedürfnisse des Endbenutzers, während der Benutzerfall eine detailliertere Beschreibung des Verhaltens des Features liefert. Die Verwendung beider Ansätze stellt sicher, dass das Entwicklungsteam ein vollständiges Verständnis für das Feature und die Bedürfnisse des Endbenutzers hat, was für einen erfolgreichen agilen Entwicklungsprozess unerlässlich ist.
Detaillierung einer Benutzerstory mit den 3C’s
Hier ist eine mögliche Aufteilung der 3C’s für das Beispiel einer Benutzerstory:
- Karte: „Als beschäftigte Mutter möchte ich in der App eine Einkaufsliste erstellen können, damit ich leicht verfolgen kann, welche Artikel ich kaufen muss. Außerdem möchte ich in der Liste Artikel hinzufügen und entfernen können und Artikel als gekauft markieren, wenn ich mit dem Einkaufen fertig bin.“
- Gespräch:
- Product Owner: „Können Sie mir mehr darüber erzählen, warum Sie Ihre Einkaufsliste verfolgen müssen?“
- Beschäftigte Mutter: „Natürlich, als Mutter mit einem beschäftigten Zeitplan muss ich sicherstellen, dass ich nichts vergesse, wenn ich zum Supermarkt gehe. Es wäre wirklich hilfreich, wenn ich auf meinem Handy einfach eine Einkaufsliste erstellen und Artikel nach Bedarf hinzufügen oder entfernen könnte.“
- Product Owner: „Verstanden. Und wie wichtig ist es für Sie, Artikel als gekauft zu markieren?“
- Beschäftigte Mutter: „Es ist wichtig, weil ich dann schnell sehen kann, was ich bereits gekauft habe und was ich noch besorgen muss.“
- Bestätigung: „Als beschäftigte Mutter kann ich in der App eine Einkaufsliste erstellen, Artikel zur Liste hinzufügen und entfernen und Artikel als gekauft markieren, wenn ich mit dem Einkaufen fertig bin.“
Detaillierung eines Benutzerfalls mit Benutzerfallbeschreibung
Hier ist ein Beispiel für eine Benutzerfallbeschreibung basierend auf der Problemstellung und der Benutzerstory:
Name des Benutzerfalls: Einkaufsliste erstellen und verwalten
Akteure:
- Benutzer: die Person, die eine Einkaufsliste in der App erstellen und verwalten möchte.
Voraussetzungen:
- Der Benutzer hat die App auf seinem mobilen Gerät heruntergeladen und installiert.
- Der Benutzer verfügt über eine stabile Internetverbindung.
Nachbedingungen:
- Der Benutzer hat erfolgreich eine Einkaufsliste in der App erstellt und verwaltet.
Ablauf der Ereignisse:
- Der Benutzer öffnet die App und navigiert zur Funktion Einkaufsliste.
- Die App zeigt eine Liste vorhandener Einkaufslisten an oder fordert den Benutzer auf, eine neue Liste zu erstellen.
- Der Benutzer klickt auf die Schaltfläche „Neue Liste erstellen“.
- Die App fordert den Benutzer auf, einen Namen für die neue Liste einzugeben.
- Der Benutzer gibt einen Namen für die neue Liste ein und klickt auf „Speichern“.
- Die App zeigt die leere Einkaufsliste mit dem vom Benutzer eingegebenen Namen an.
- Der Benutzer klickt auf die Schaltfläche „Artikel hinzufügen“.
- Die App fordert den Benutzer auf, den Namen des Artikels einzugeben, den er der Liste hinzufügen möchte.
- Der Benutzer gibt den Namen des Artikels ein und klickt auf „Hinzufügen“.
- Die App zeigt den neuen Artikel in der Einkaufsliste an.
- Der Benutzer wiederholt die Schritte 7 bis 10, bis alle benötigten Artikel der Liste hinzugefügt wurden.
- Der Benutzer kann einen Artikel aus der Liste entfernen, indem er auf die Schaltfläche „Artikel entfernen“ neben dem Artikel klickt.
- Der Benutzer kann einen Artikel als gekauft markieren, indem er auf die Schaltfläche „Als gekauft markieren“ neben dem Artikel klickt.
- Die App aktualisiert die Einkaufsliste, um alle Änderungen des Benutzers widerzuspiegeln.
- Der Benutzer kann die Einkaufsliste jederzeit einsehen, indem er zur Funktion Einkaufsliste in der App zurückkehrt.
Alternativpfade:
- Wenn der Benutzer die Erstellung einer neuen Liste in Schritt 5 abbricht, kehrt die App den Benutzer zur Liste vorhandener Einkaufslisten zurück oder fordert erneut zur Erstellung einer neuen Liste auf.
- Wenn der Benutzer die Hinzufügung eines neuen Artikels in Schritt 9 abbricht, kehrt die App den Benutzer zur Einkaufsliste zurück, ohne den Artikel hinzuzufügen.
Unterschiede zwischen User Stories und Use Cases
Die Tabelle bietet eine Zusammenfassung der Unterschiede zwischen User Stories und Use Cases. User Stories sind kurze, einfache Beschreibungen, die sich auf die Ziele und Bedürfnisse des Benutzers konzentrieren, während Use Cases detaillierte schrittweise Beschreibungen des Systemverhaltens und der Funktionalität liefern.
| User Stories | Use Cases |
|---|---|
| Kurze, einfache Beschreibung einer Funktion aus der Sicht des Benutzers. | Detaillierte schrittweise Beschreibungen, wie ein Benutzer mit einem System interagiert. |
| Fokussiert auf die Ziele und Bedürfnisse des Benutzers. | Fokussiert auf das Systemverhalten und die Funktionalität. |
| Legen Wert auf Gespräche und Zusammenarbeit zwischen den Beteiligten. | Betonen Sie einen formaleren, strukturierten Ansatz. |
| Oft in einem informelleren, dialogischen Stil verfasst. | Oft in einem formaleren, technischen Stil verfasst. |
| Typischerweise verwendet, um hochrangige Anforderungen und Funktionen zu erfassen. | Typischerweise verwendet, um detaillierte funktionale Anforderungen zu erfassen. |
| Typischerweise einfacher und schneller zu schreiben und zu überprüfen. | Typischerweise zeitaufwändiger zu schreiben und zu überprüfen. |
Zusammenfassung
Der Artikel untersucht die Verwendung von Benutzerstories und Use Cases im agilen Entwicklungsprozess und argumentiert, dass beide Ansätze angemessen sind, wenn sie richtig eingesetzt werden. Benutzerstories sind kurze, einfache Beschreibungen einer Funktion aus der Perspektive des Benutzers, während Use Cases eine detaillierte schrittweise Beschreibung der Interaktion eines Benutzers mit einem System bieten.
Ein Beispielproblem zur Erstellung und Verwaltung einer Einkaufsliste wird verwendet, um zu zeigen, wie beide Ansätze eingesetzt werden können. Der Artikel betont die Bedeutung der 3Cs (Karte, Gespräch, Bestätigung) bei der Erstellung wirksamer Benutzerstories und die Bedeutung von Akteuren, Voraussetzungen und Nachbedingungen bei der Erstellung wirksamer Use Cases. Insgesamt bietet der Artikel eine umfassende Anleitung für Softwareentwickler, wie Benutzerstories und Use Cases im agilen Entwicklungsprozess effektiv eingesetzt werden können.
Zusammenfassend sind Benutzerstories und Use Cases beide wertvolle Werkzeuge im agilen Entwicklungsprozess, wenn sie angemessen eingesetzt werden. Benutzerstories sind leichtgewichtig, einfach zu schreiben und flexibel, was sie ideal für Projekte mit sich verändernden Anforderungen macht. Use Cases sind detailliert und bieten ein vollständiges Verständnis des Verhaltens des Systems, was sie ideal für Projekte mit klar definierten Anforderungen macht. Durch die Kombination beider Techniken können agile Teams sicherstellen, dass sie ein vollständiges Verständnis des Verhaltens und der Ziele des Systems haben.











