Management-Zusammenfassung dieses Beitrags:
Die User Story ist ein zentrales Element für die Arbeit in agilen Projekten und für das agile → Requirements Engineering.
In diesem Beitrag wird der Aufbau und Einsatz von User Stories kurz beschrieben.
Mit User Stories (zu Deutsch etwa “Anwendergeschichten”) können Anforderungen an (zukünftige) Produkte oder → Dienstleistungen von (potenziellen) Nutzern oder Kunden auf einfache Weise beschrieben und erfasst werden. Sie können damit ein wesentlicher Bestandteil bei der Erstellung von Produkten oder Dienstleistungen sein, insbesondere wenn eine agile Vorgehensweise (wie → Scrum) verwendet wird. Obwohl das Kernkonzept der User Stories sehr einfach ist, ergeben sich in der Praxis einige zusätzliche Aspekte, die es zu beachten gilt. Hierzu zählen die → Nachvollziehbarkeit durch Dritte, die Größe der einzelnen User Stories und auch die Grenzen des sinnvollen Einsatzes von User Stories.
Erläuterungen zu den User Stories sind häufig in den Beschreibungen von → Scrum enthalten, die aber dennoch allgemeingültig sind.
1. Einleitung und Grundlagen
Im Scrum-→ Glossar /Scrum-Glossar/ steht zur User Story:
“Eine in “normaler Sprache” formulierte Anforderung, typischerweise auf einer Karte (Story Card) beschrieben — meistens in der Form
“Als Rolle
möchte ich Ziel/Wunsch,
um Nutzen zu erreichen”.”
Abbildung 1.1: User Story: Schema
Die Beschreibung in dieser Form wird auch als “Role-→ Feature-Reason-Schema” bezeichnet.
Beispiele für User Stories:
- “Als Website-Besucher möchte ich innerhalb von wenigen Sekunden erkennen, wer der Betreiber der Website ist, um die Seriosität ermitteln zu können”
- “Als Anwender möchte ich den Stand der Präsentation erkennen, um so zu erfassen, ob die aktuelle Version verwendet wird”
- “Als Taxi-Nutzer möchte ich vorab darüber informiert werden, wie hoch die Kosten für eine Fahrt zu meinem Ziel sind, um so sicher zu sein, dass ich die Fahrt bezahlen kann”
Anmerkung zur Schreibweise:
In diesem Beitrag werden “User Story” (Singular) und “User Stories” (Plural) genau so geschrieben. Dies wird bei einigen anderen Autoren anders gehandhabt, bei mir aber durchgängig in allen Beiträgen und → Präsentationen so verwendet.
1.1 Definitionen
Folgende Definitionen beschreiben User Stories:
- In der Wikipedia steht zu User Stories /#Wiki-User-Story/:
“Eine User Story (“Anwendererzählung”) ist eine in Alltagssprache formulierte Software-Anforderung. Sie ist bewusst kurzgehalten und umfasst in der Regel nicht mehr als zwei Sätze.” - Mike Cohn formuliert /Cohn10/:
“Eine User Story beschreibt eine Funktionalität, die entweder für einen User oder einen Käufer eines Systems oder einer Software von Wert ist.” - Bei Wirdemann findet sich /Wirdemann17/:
“User Stories sind in der Sprache des Anwenders formulierte Anforderungen an das zu entwickelnde Software-System. Diese Anforderungen besitzen einen konkreten und sichtbaren Mehrwert für den Kunden.” - In BABOK Guide /BBG17‑d/ steht:
“Eine User Story ist eine kurzgefasste, präzise Beschreibung der Funktionalität oder → Qualität, die benötigt wird, um einem spezifischen → Stakeholder von Nutzen zu sein.”
1.2 Einschränkungen
User Stories dienen der Erfassung von Anforderungen. Sie haben aber keinen “gesetzlich-bindenden” Charakter, sondern dienen in erster Linie der Kommunikation.
Hierzu schreiben einige Autoren:
- “User Stories sind keine vertraglichen Verpflichtungen.” /Cohn10/
- “A user story is nothing more than an agreement that the customer and developers will talk together about a feature.” /Beck01/
1.3 Die Rollen bei den User Stories
Auch wenn die Rollen, Rollenbezeichnungen “frei” gewählt werden können, so empfiehlt es sich, diese aus der Stakeholderliste abzuleiten. Hierdurch ergibt sich fast automatisch eine → Priorisierung der User Stories, da Stories, die wichtigen Stakeholdern zugeordnet sind, bereits “wichtig” sind.
Fallstricke:
- Häufig zu finden ist die Formulierung “Als Benutzer möchte ich …”: Benutzer sind — genau wie Kunden — zwar eine Stakeholderrolle, aber in vielen Kontexten zu unspezifisch. Daher ist es sinnvoll, hier bei Bedarf dies weiter zu detaillieren, so beispielsweise “Gelegenheitsbenutzer” oder “Dauerbenutzer” zu unterscheiden
- Wenn bei User Stories die “höchste Entscheidungsinstanz” wie “Geschäftsführer”, “Vorstand” oder “der Geschäftsbereich” verwendet, so muss dies a) überprüfbar bleiben und b) eher sparsam geschehen, da ansonsten solche User Stories als harte Vorgaben gesehen werden und damit keinen Spielraum für die Umsetzung lassen
1.4 Akzeptanzkriterien
→ Akzeptanzkriterien, die bei der Abnahme der umgesetzten User Story getestet werden, müssen zu jeder User Story notiert werden.
2. User Stories im Einsatz
Auch wenn das Grundprinzip der User Stories einfach erscheint, so ergeben sich in der Praxis einige Probleme, die durch Hilfsmittel gelöst werden können.
2.1 Die Story Card
Eine User Story wird üblicherweise auf eine Karte (“Story Card”, z.B. im DIN-A5- oder DIN-A6-Format) geschrieben und an ein Task Board gehängt, wo sie weiterbearbeitet wird.
Abbildung 2.1: Eine User Story (Beispiel mit Story Card)
Der → Aufwand zur Umsetzung der User Stories wird geschätzt und in Story Points angegeben.
2.2 Definition of Done
Die → Definition of Done (DoD) beschreibt (im Vorhinein), wann eine umgesetzte User Story als fertig gilt, das heißt, vom Anwender abgenommen werden kann. Die (universelle) Überprüfung der DoD-Kriterien findet nach der vollständigen Erstellung der User Story statt. Üblicherweise wird die DoD über eine (Check-)→ Liste realisiert.
Zur Vertiefung kann die eigenständige Beschreibung der → Definition of Done herangezogen werden.
Abbildung 2.2: Zeitliche Einordnung der “Definition of”
2.3 Definition of Ready
Ist eine User Story geschrieben, so soll sie auch in die Umsetzung gelangen. Um sicherzustellen, dass sie auch eine gewisse Qualität besitzt, die es den Developern erlaubt ohne zu großen Aufwand die Umsetzung vorzunehmen, wird eine Definition of Ready (DoR) verwendet, die übergreifend für alle User Stories gilt. Hierüber wird geregelt, welchen Vorgaben eine User Story folgen muss. Gerade bei Akzeptanz- und Testkriterien treten in der Praxis häufig Probleme auf: Hier kann die Definition of Ready helfen. Die Definition of Ready ist kein allgemeiner → Standard und unter Fachexperten umstritten, da schriftlich formulierte Regeln auch auf mangelhafte Kommunikation hindeuten könnten.
2.4 Die INVEST-Kriterien
(Gute) User Stories haben Eigenschaften, die den → INVEST-Vorgaben folgen (/INVEST-03/, /Cohn10/). Dabei steht das Akronym INVEST für folgende Eigenschaften:
- Independent: User Stories sollen unabhängig voneinander sein
- Negotiable: User Stories sollen verhandelbar sein
- Valuable: User Stories sollen einen Wert für den Kunden haben
- Estimatable: User Stories sollen schätzbar sein
- Small: User Stories sollen klein sein
- Testable: User Stories sollen testbar sein
3. User Stories im Großen
User Stories beschreiben einzelne Funktionalitäten. Um große Systeme zu beschreiben, können User Stories in einen übergeordneten Kontext eingearbeitet werden.
3.1 Die Pyramide des Agilen Requirements Engineerings
Die unterschiedlichen Betrachtungshöhen der einzelnen Gliederungsebenen beim Agilen Requirements Engineering können über eine Pyramide dargestellt werden (siehe Abbildung 3.1).
Es finden sich:
- → Vision: Eine Vision gilt für ein zu entwickelndes Produkt / eine zu entwickelnde Dienstleistung und beschreibt, was mit dem Produkt erreicht werden soll
- Theme: Ein Theme beschreibt das zu entwickelnde Produkt / die zu entwickelnde Dienstleistung auf einer grob-granularen Ebene
- Epic / Feature: Ein Epic oder ein Feature ist eine “große” oder “grob-granulare” User Story, die aufgrund ihrer Größe nicht direkt umgesetzt werden kann. Siehe hierzu Abschnitt 3.1.1
- User Story: Der zentrale Begriff — Eine User Story beschreibt eine einzelne Anforderung aus Sicht des Anwenders
- Task: Ein Task ist eine Aufgabe, die nicht mehr unterteilt werden kann / muss, da sie eine für das Entwicklerteam passende Größe zur Umsetzung / Bearbeitung hat
Abbildung 3.1: Die Pyramide des Agilen Requirements Engineerings
3.1.1 Epics
Als Epics werden User Stories bezeichnet, die “sehr groß” oder “grob-granular” sind.
Dies kann bedeuten:
Epics …
- sind zu groß, um in einem Sprint umgesetzt werden zu können (und sollten daher auf mehrere Sprints verteilt werden).
- können (nochmals) in kleinere User Stories unterteilt werden.
- werden für eine spätere Zukunft geplant.
- sind eine Zusammenfassung mehrerer, verwandter User Stories.
- können eventuell nicht abgeschätzt werden.
Um Epics in User Stories “runterzubrechen” kann die Story Decomposition eingesetzt werden.
3.2 Die User Story Map
Eine User Story Map zeigt die Zusammenhänge von mehreren User Stories.
In der Wikipedia steht zu zur Story Map /#Wiki-User-Story/:
“Eine Story Map zeigt User Stories in einer grafischen Übersicht. Horizontal werden die aufeinanderfolgenden Aktivitäten des Anwenders jeweils mit einer User Story dargestellt. Vertikal wird von oben nach unten detailliert: z.B. angefangen bei den Kundenzielen über Epics bis hin zu den User Stories. Durch eine Story Map wird ein Überblick über alle User Stories hergestellt.”
Abbildung 3.2: Die Story Map
3.3 Impact Mapping
Beim Impact Mapping werden User Stories von Zielen (der Stakeholder) abgeleitet.
In /#ObjektSpek-16/ steht:
“Impact Mapping ist ein Kommunikationsmittel, welches das gegenseitige Verständnis zwischen Stakeholdern und Entwicklern fördert und unterschiedliche Perspektiven zulässt. Es dient als strategisches Planungsinstrument und besteht aus vier Ebenen.”
4. Häufig gestellte Fragen und Antworten (FAQ) zur User Story
Einige Fragen zur User Story / zu den User Stories werden häufig gestellt – diese werden hier wiedergegeben und beantwortet.
- F: Sind die User Stories verpflichtend, wenn man agil arbeiten möchte?
A: Nein, aber es werden generell User Stories bei agiler Vorgehensweise empfohlen. - F: Wer ist für die Erstellung der User Stories verantwortlich?
A: Im agilen Kontext ist dies immer der → Product Owner. - F: Kann man aus User Stories ein → Lastenheft erstellen?
A: Eigentlich nicht, da die Betrachtungsweise eine andere ist. Ein Lastenheft sollte möglichst vollständig ein Produkt oder eine Dienstleistung beschreiben, eine Sammlung von User Stories hat diesen Anspruch nicht. - F: Ist die Verwendung von → Personas für User Stories notwendig?
A: Nein, aber sie können hilfreich sein, um die User Story zu erstellen. - F: Gibt es verschiedene Arten von User Stories?
A: Ja, so wird zum Teil zwischen Management- und Developer-User-Stories unterschieden. Management-User-Stories beschreiben Sichten “des Managements”, häufig einfache Management-Vorgaben. Aber Achtung: User Stories müssen durch Entwickler umsetzbar sein.
Haben Sie noch weitere Fragen oder möchten Sie Ergänzungen an der FAQ vornehmen? Am besten schreiben Sie mir hierzu eine E‑Mail an: kontakt@peterjohann-consulting.de.
A. Präsentationen, Literatur und Weblinks
A.1 Meine öffentliche Präsentation zu den User Stories
Von hoher Relevanz zum Thema User Stories sind meine folgenden Präsentationen:
A.2 Literatur
- /Adzic12/ Gojko Adzic: Impact Mapping: Making a Big Impact with Software Products and Projects, Provoking Thoughts, Woking, Great Britain 2012, ISBN 978–0‑9556836–4‑0
- /Adzic14/ Gojko Adzic, David Evans: Fifty Quick Ideas to Improve Your User Stories, Neuri Consulting, London 2014, ISBN 978–0‑99308810–0
- /BBG17‑d/ → IIBA: BABOK v3: Leitfaden zur Business-Analyse BABOK Guide 3.0, Dr. Götz Schmidt, Wettenberg 2017, ISBN 978–3‑945997–03‑1
- /Beck00/ Kent Beck, Martin Fowler: Planning Extreme Programming, Addison-Wesley Professional, Addison-Wesley Professional, Old Tappan, New Jersey 2000, ISBN 978–0‑201–71091‑5
- /Bergsmann23/ Johannes Bergsmann: Requirements Engineering für die agile → Softwareentwicklung. Methoden, Techniken und Strategien, dpunkt, Heidelberg 3. Auflage 2023, ISBN 978–3‑86490–929‑0
- /Cohn04/ Mike Cohn: User Stories Applied: For Agile Software Development, Addison-Wesley Longman, Amsterdam 2004, ISBN 978–0‑321–20568‑1
- /Cohn10a/ Mike Cohn: User Stories: Für die agile Software-Entwicklung mit Scrum, XP u.a., mitp, Bonn 2010, ISBN 978–3‑8266–5898‑3
- /Hruschka19/ Peter Hruschka: → Business Analysis und Requirements Engineering: Prozesse und Produkte nachhaltig verbessern, Hanser, München 2. Auflage 2019, ISBN 978–3‑446–45589‑4
- /Patton14/ Jeff Patton: User Story Mapping: Discover the Whole Story, Build the Right Product, O’Reilly Media, Cambridge, Massachusetts 2014, ISBN 978–1‑4919–0490‑9
- /Patton15/ Jeff Patton: User Story Mapping: Nutzerbedürfnisse besser verstehen als Schlüssel für erfolgreiche Produkte, O’Reilly, Köln 2015, ISBN 978–3‑95875–067‑8
- /Wirdemann17/ Ralf Wirdemann: Scrum mit User Stories, Hanser, München 3. Auflage 2017, ISBN 978–3‑446–45052‑3
A.3 Weblinks
- /INVEST-03/ Original-Artikel zu INVEST von Bill Wake (2003)
- /OBJspek-RE-2016/ ObjektSpektrum 02/2016: Monika Schubert: Von der Impact Map zu User-Storys: Wie Stakeholder und Entwickler gemeinsam eine Strategie verfolgen
- /Scrum-Glossar/ Das deutsche Scrum-Glossar
- /#Scrum-Guide-20‑e/ Der Scrum Guide (englisch), 14seitige Scrum-Kurzdarstellung von Ken Schwaber und Jeff Sutherland, aktualisiert im November 2020
- /#Scrum-Guide-20‑d/ Der Scrum Guide (deutsch), 19seitige Scrum-Kurzdarstellung von Ken Schwaber und Jeff Sutherland – deutsche Übersetzung, aktualisiert im November 2020
- /#Wiki-User-Story/ User Story in der deutschen Wikipedia
- /#Wiki-User-Story‑e/ User Story in der englischen Wikipedia
Legende zu den Weblinks
/ / Verweis auf eine Website (allgemein)
/*/ Verweis auf eine Website, die als Ergänzung zu einem Buch dient
/#/ Verweis auf ein einzelnes Thema auf einer Website
/#V/ Verweis auf ein Video auf einer Website
Letzte Aktualisierung: 02.04.2020 © Peterjohann Consulting, 2005–2024