Agile & Delivery
UX & Customer Experience
Erfahre, was User Stories in der Softwareentwicklung sind, wie sie aufgebaut sind und wie sie sich von Use Cases unterscheiden. Praktische Beispiele inklusive!
Wörtlich übersetzt bedeutet User Story „Benutzer-Geschichte“ oder „Anwendererzählung“. Hinter dem Begriff verstecken sich allerdings keine spannenden Abhandlungen, sondern sehr knappe Formulierungen zu einzelnen Softwareanforderungen. Trotzdem finden sich ein paar wichtige Storytelling-Elemente in User Stories wieder: Es gibt einen Protagonisten, eine Handlung und ein Ziel, das durch diese erreicht werden soll. Hier erfährst Du, wie User Stories aufgebaut sind, welche Rolle sie in agilen Frameworks spielen und wie Du sie für Deine Produktentwicklung nutzen kannst.
Wörtlich übersetzt bedeutet User Story „Benutzer-Geschichte“ oder „Anwendererzählung“. Hinter dem Begriff verstecken sich allerdings keine spannenden Abhandlungen, sondern sehr knappe Formulierungen zu einzelnen Softwareanforderungen. Trotzdem finden sich ein paar wichtige Storytelling-Elemente in User Stories wieder: Es gibt einen Protagonisten, eine Handlung und ein Ziel, das durch diese erreicht werden soll. Hier erfährst Du, wie User Stories aufgebaut sind, welche Rolle sie in agilen Frameworks spielen und wie Du sie für Deine Produktentwicklung nutzen kannst.
User Stories sind eine Methode zur Beschreibung von Anforderungen in der Softwareentwicklung, insbesondere in agilen Entwicklungsmethoden wie Scrum, Agile und Extreme Programming (XP). Sie stellen eine einfache, klare Beschreibung einer Softwarefunktion aus der Perspektive des Endbenutzers dar.
Das Ziel von User Stories besteht darin, die Diskussion zwischen Product Ownern oder Product Managern, Entwicklern und Stakeholdern (wie Business-Analysten und Endbenutzern) anzuregen. Sie sind bewusst kurz und offen formuliert, damit Raum für Fragen und Anpassungen besteht. Und es wird eine einfache, nicht technische Sprache verwendet, damit alle Beteiligten verstehen, worum es geht.
Eine User Story besteht in der Regel aus drei Elementen:
Ein Beispiel für eine User Story wäre also: „Als Buchhalter möchte ich einen Umsatzbericht erstellen können, um den Umsatz nach Produktkategorie zu sehen.“
Auch wenn die User Story aus der Perspektive eines Nutzers formuliert ist, wird sie in der Regel vom Product Owner oder Product Manager erstellt. Diese kennen die Anforderungen und Bedürfnisse sowohl von Stakeholdern als auch von Endnutzers am besten.
Im Scrum-Modell dienen Epics oft als Ausgangspunkt für User Stories – denn ein Epic kann aufgrund seiner Größe und Komplexität meist nicht innerhalb eines einzelnen Sprints abgeschlossen werden. User Stories bieten eine kleinere Einheit, die sich besser greifen und implementieren lässt.
Ausgehend vom ersten Entwurf einer User Story ist die Erstellung dann ein kollaborativer Prozess. Das Entwicklungsteam sollte früh in den Prozess einbezogen werden, um Fragen zu stellen, gemeinsam nach Lösungen zu suchen und technischen Input zu geben. Nur so können Teams sicher sein, dass User Stories realistisch, umsetzbar und im besten Interesse des Projekts sind.
Je nach Arbeitsweise und Kultur eines Unternehmens können bei Bedarf auch andere Mitglieder des Teams, QA-Teams oder sogar Endbenutzer an der Erstellung oder Überarbeitung von User Stories beteiligt sein.
User Stories und Use Cases sind beides Techniken zur Darstellung von Anforderungen in der Softwareentwicklung, aber sie werden in unterschiedlichen Kontexten und mit unterschiedlichen Zielen verwendet.
User Story:
Use Case:
Die beiden Techniken schließen sich nicht gegenseitig aus. In vielen Projekten kommen User Stories und Use Cases gemeinsam zum Einsatz. User Stories können zum Beispiel grobe Anforderungen und Prioritäten festlegen, während mit Use Cases spezifische Interaktionsdetails ausgearbeitet werden.
Eine gute User Story ist kurz, klar und in Alltagssprache geschrieben. Der Fokus liegt auf dem, was der Benutzer erreichen möchte und warum – nicht auf technischen Details. Sie erfüllt die im Folgenden erklärten INVEST-Kriterien und wird durch Akzeptanzkriterien ergänzt.
Welche Eigenschaften eine gute User Story erfüllen sollte, hat Bill Wake mit dem Akronym INVEST definiert.
Im Kontrast dazu hier eine User Story, die so in der Form keine gute Idee für ein Produktentwicklungsteam wäre:
Als registrierter Benutzer möchte ich mein Profilbild hochladen und bearbeiten, damit andere Benutzer mein aktuelles Bild sehen können.
In dieser Story finden sich folgende Abhängigkeiten:
Und aus diesen Gründen sollte diese User Story noch einmal überarbeitet werden:
Eine bessere Herangehensweise wäre es, mehrere kleinere, unabhängige User Stories zu erstellen, wie:
Jede dieser Stories könnte dann einzeln priorisiert, geschätzt und in einem Sprint umgesetzt werden, wodurch die Abhängigkeiten minimiert und die Flexibilität erhöht wird.
Auf den ersten Blick ist die Umsetzung einer User Story binär: Entweder der Buchhalter kann seinen Umsatzbericht erstellen, um den Umsatz nach Produktkategorie zu sehen – oder eben nicht. Doch wir alle haben nach Abschluss einer Aufgabe schon mal zu hören bekommen: „Nein, so hab ich das nicht gemeint!”
Damit das nicht passiert, werden User Stories durch Akzeptanzkriterien ergänzt: spezifische Bedingungen, die weiter definieren, wann eine User Story korrekt abgeschlossen wurde. Akzeptanzkriterien sind eine Art Checkliste und enthalten pro Story normalerweise zwischen drei und zehn Punkten.
Auch die Definition von Akzeptanzkriterien ist ein iterativer Prozess. Nicht selten kommt es vor, dass sie während der Umsetzung einer User Story weiter angepasst werden müssen – insbesondere, wenn neue Informationen oder Anforderungen auftauchen oder das Team merkt, dass es gewisse Gegebenheiten zuvor nicht bedacht hat.
User Story 1: Als Endbenutzer möchte ich mich auf der Website registrieren können, um Zugriff auf exklusive Inhalte zu erhalten.
Akzeptanzkriterien:
User Story 2: Als Administrator möchte ich alle registrierten Nutzer in einer übersichtlichen Liste sehen können, um nachzuvollziehen, wer welche Rechte hat.
Akzeptanzkriterien:
User Story 3: Als Nutzer möchte ich mein Passwort zurücksetzen können, damit ich auch dann noch auf meinen Account zugreifen kann, wenn ich es vergessen habe.
Akzeptanzkriterien:
Eine der wichtigsten Fragen in der (agilen) Produktentwicklung ist: Was können wir streichen? Je größer der Berg an Aufgaben ist, die erstmal nicht umgesetzt werden, desto besser können Du und Dein Team sich auf die Dinge konzentrieren, die einen direkten Nutzen für die Anwender haben.
Mit dem folgenden Prozess kannst Du entscheiden, welche User Stories vorerst nicht umgesetzt werden.
Der Umfang gibt an, was in der Story enthalten ist und was nicht. Die Abgrenzung des Umfangs hilft, den Aufwand besser zu schätzen.
Der Aufwand wird dann durch Schätztechniken wie „Planning Poker“ ermittelt, bei denen Teammitglieder Schätzungen für die Fertigstellung einer Story abgeben. Als Maßeinheit werden in der Regel Story Points oder Idealstunden verwendet.
Der Nutzen ergibt sich durch Gespräche mit Stakeholdern, Produktmanagern oder Kunden und beschreibt den Wert oder den Vorteil, den eine Story für den Endbenutzer oder das Unternehmen bringt. Die goldene Regel lautet: kein Nutzen = keine Story.
Ausgehend von der Bewertung einzelner Dimensionen in Schritt eins, können User Stories priorisiert werden.
Mögliche Priorisierungstechniken dafür sind …
Die User Story, dazugehörige Akzeptanzkriterien sowie Priorisierung und Aufwandsschätzung werden auf Story Cards dokumentiert. Story Cards sind physische oder digitale Karten und dienen als ständige Erinnerung und Referenz für das Team während des Sprints.
Bei der Sprint-Planung werden hoch priorisierte Stories aus dem Product Backlog in den Sprint Backlog übernommen – basierend auf der Gesamtkapazität des Teams und der Summe der Story Points der ausgewählten Stories.
Während des Sprints arbeitet das Team an der Umsetzung der ausgewählten User Stories. Die Fortschritte werden häufig in einer Projektmanagement-Software auf einem Scrum-Board oder Kanban-Board dargestellt, auf dem die Story Cards durch verschiedene Status (z. B. „To Do“, „In Arbeit“, „Abgeschlossen“) bewegt werden.
Vorlage für den Aufbau einer Story Card:
Am Ende des Sprints sollte jede User Story entweder vollständig umgesetzt (und den Akzeptanzkriterien entsprechend getestet) oder, falls sie nicht fertig wurde, in den Product Backlog zurückversetzt werden, um in einem zukünftigen Sprint erneut betrachtet zu werden.
Durch die richtige Priorisierung und die Verwendung von Story Cards in Sprints kann ein agiles Team sicherstellen, dass es immer an den hilfreichsten und relevantesten Features arbeitet und dabei einen kontinuierlichen Mehrwert für den Endbenutzer liefert.
In der agilen Produktentwicklung stehen Individuen über Tools und die Entwicklung von funktionierender Software mit direktem Mehrwert für den Endnutzer an erster Stelle. Und genau das spiegelt sich im Konzept der User Story wider. Aus Nutzerperspektive formuliert und immer mit einem konkreten Nutzen im Sinn sind User Stories nicht nur Anforderungen, sondern auch Gesprächsanlässe, die zu einem tieferen Verständnis für den Endnutzer führen.
Sie sind die kleinste Einheit in agilen Entwicklungsprozessen und – bevor sie es in den Product Backlog schaffen – erstmal Ansätze für Diskussionen zwischen Product Owner, Entwicklern und anderen Stakeholdern. Mit einem klaren Verständnis von Aufbau, Erstellung, Akzeptanzkriterien und Bewertung von User Stories können Teams effektiv und effizient Softwarelösungen liefern, die den Bedürfnissen der Benutzer gerecht werden.
Eine User Story ist eine kurze, einfache Beschreibung einer Softwareanforderung aus der Perspektive des Endbenutzers. Sie hilft Entwicklern und Projektbeteiligten zu verstehen, was der Benutzer von einer Software oder einem Feature erwartet.
User Stories werden oft mit der Struktur „Als [Rolle] möchte ich [Aktion/Wunsch], damit [Nutzen/Ziel]“ formuliert. Dies gibt einen klaren Kontext über die Rolle des Benutzers, was er erreichen möchte und warum.
Ein Use Case beschreibt detailliert, wie ein System auf die Aktionen eines Benutzers reagieren soll, oft in Form von Interaktionsszenarien. Eine User Story hingegen ist eine kurze, informelle Beschreibung einer Funktion aus der Sicht des Benutzers und ohne detaillierte Abläufe.
User Story Mapping ist eine Methode zur Anordnung und Priorisierung von User Storys. Dabei werden die Geschichten in der Reihenfolge ihrer Umsetzung oder ihrer Bedeutung für den Benutzer auf einer visuellen Karte angeordnet. Dies hilft Teams, den Überblick über komplexe Projekte zu behalten und den Entwicklungsfortschritt zu verfolgen.
Entwickle bessere User Stories mit Bitgrip
Willst Du Deine User Stories perfektionieren und agilere Prozesse einführen? Vereinbare ein unverbindliches Kennenlernen und erfahre, wie Bitgrip Dir helfen kann.