Die unendliche User Story - agiles Anforderungsmanagement

71
Bildquelle: © shutterstock | lighthouse at talacre by Meirion Matthias Orientierung im Backlog ASQF, Juli 2013 DialogData, Thomas Mödl Die unendliche User Geschichte:

description

Der wahre Unterschied zwischen User Stories und Use Cases

Transcript of Die unendliche User Story - agiles Anforderungsmanagement

Page 1: Die unendliche User Story - agiles Anforderungsmanagement

Bildquelle: © shutterstock | lighthouse at talacre by Meirion Matthias

Orientierung imBacklog Management

ASQF, Juli 2013DialogData, Thomas MödlDie unendliche User Geschichte:

Page 2: Die unendliche User Story - agiles Anforderungsmanagement

- Geschäftsführung DialogData - Certified Professional for Requirements Engineering (Advanced Level)- Certified Professional for Software Architecture- Certified Scrum Product Owner- Dipl.-Inform. (TU München)- Supporting Member im IREB e.V. (International Requirements Engineering Board)- Mitglied im IEEE- Mitglied der Agile Alliance seit 2003 - Mitglied im ASQF e.V.- Agile-CMMI Gruppe auf Xing: Moderator und Gründer

- Private Interessen:- Fotografie und Film, - Kunst, - Menschen und Kommunikation

Page 3: Die unendliche User Story - agiles Anforderungsmanagement

Requirements Engineering

Software Entwicklung

Bildquelle: © shutterstock | zipper shut. By Macro Schankz

Page 4: Die unendliche User Story - agiles Anforderungsmanagement

Custom.

Making IT work for you.

Commerce. Process.

AnforderungenArchitekturProgrammierungTesting (Software und Hardware)Technische ProjektleitungEntwicklungsmethodik

Page 5: Die unendliche User Story - agiles Anforderungsmanagement

• Orientierung und Disorientierung– Agile Anforderungen– Backlog Management– Kommunikation im agilen Sinn

• Klärung der Begriffe– Akzeptanzkriterien vs. Akzeptanztest vs. Testfall– Use Case vs. User Story– Agiles RE

Page 6: Die unendliche User Story - agiles Anforderungsmanagement

Disorientierung in agilen Projekten …

Page 7: Die unendliche User Story - agiles Anforderungsmanagement

„Scrum is silent on howthis work is done …“ Empfehlungen:

„… umfasst 10% jedes Sprints…“

„… enthält detaillierte Requirements Analyse …“

„… Backlog Items werden aufgeteilt …“

Bildquelle: © shutterstock| m

odel with post it by W

. Goldswain

Backlog Grooming, Estimating, Refinement

RE in Scrum

Page 8: Die unendliche User Story - agiles Anforderungsmanagement

RE in Scrum: Zeitaufwand

Days / Month Working Days for Backlog GroomingTeam Members 7 20 140 10% 14Product Owner 1 20 20 100% 20

8 40 160 21,25% 34

> 21%

Backlog Grooming, Estimating, Refinement

Page 9: Die unendliche User Story - agiles Anforderungsmanagement

Bildquelle: © shutterstock | lighthouse at talacre by Meirion Matthias

Orientierung imBacklog ?

Ein wichtiges Ziel von Agile / Scrum ist Kommunikation:

- via Backlog, User Stories & Face-to-Face- keine Änderungen während des Sprints- „Chickens“ dürfen nicht reinreden

Page 10: Die unendliche User Story - agiles Anforderungsmanagement

Bildquelle: © shutterstock | lighthouse at talacre by Meirion Matthias

Orientierung imBacklog ?

Backlog Management:• Backlog Einträge priorisiert nach ROI …• ROI = f ( Wert , Aufwand , Risiko )• Der Product Owner ist verantwortlich• User Stories mit Akzeptanzkriterien präzisieren

Page 11: Die unendliche User Story - agiles Anforderungsmanagement

Agiles Vorgehen ist werte-orientiert

Page 12: Die unendliche User Story - agiles Anforderungsmanagement

MITTEL

Page 13: Die unendliche User Story - agiles Anforderungsmanagement

Bessere Zusammenarbeit Zielorientierung

Entscheidungsbefähigung Vertrauen

Verbindliche Vereinbarung ZuverlässigkeitFlexible Planung Offenheit

WERTZIEL MITTEL

Page 14: Die unendliche User Story - agiles Anforderungsmanagement

Zielorientierung

Vertrauen

Zuverlässigkeit

Offenheit

Focus

Respect

Commitment

Openness

AGILE SCRUM

Page 15: Die unendliche User Story - agiles Anforderungsmanagement

Fokus schafftZielorientierung.

Page 16: Die unendliche User Story - agiles Anforderungsmanagement

Vertrauen basiert auf Respekt.

Page 17: Die unendliche User Story - agiles Anforderungsmanagement

Commitment fördert Leistung.

Page 18: Die unendliche User Story - agiles Anforderungsmanagement

Flexible Planung, weil kein Plan den ersten Feindkontakt überlebt ...

Page 19: Die unendliche User Story - agiles Anforderungsmanagement

Klärung der Begriffe

• Agile & RE– Use Case vs. User Story? – Abnahmekriterium vs.

Akzeptanztest vs. Testfall– RE Methoden für Agile

• Backlog Management– Die Zweck-Perspektive:

Verhalten vs. Aufgabenplanung– Geordnet vs. Priorisiert

• Fazit?

Bildquelle: ww

w.roadeveron.blogspot.de/2008/09/tw

o-days-before-mast.htm

l

Page 20: Die unendliche User Story - agiles Anforderungsmanagement

Klärung der Begriffe

• Agile & RE– Use Case vs. User Story? – Abnahmekriterium vs.

Akzeptanztest vs. Testfall– RE Methoden für Agile

• Backlog Management– Die Zweck-Perspektive:

Verhalten vs. Aufgabenplanung– Geordnet vs. Priorisiert

• Fazit?

Bildquelle: ww

w.roadeveron.blogspot.de/2008/09/tw

o-days-before-mast.htm

l

Page 21: Die unendliche User Story - agiles Anforderungsmanagement

My one liner is that a story is a promise to have a conversation and a use case is the record of the conversation.

(JimStandley)

Very nice …(Alistair Cockburn)

Unterscheiden sich User Story und Use Case nur in

Umfang und Zeit?

Bildquelle: © shutterstock | Hut fliegend die Luft ein by Winthrop Brookhouse

Page 22: Die unendliche User Story - agiles Anforderungsmanagement

Bit Präzision von Use Cases

• Bit 1: Ziel des Use Case• Bit 2: Standardablauf• Bit 3: Erweiterungsbedingungen• Bit 4: Erweiterungsaktionen• Bit 5: Technik- und Datenvariationen

[..] so the information left off the card arrives in any of the hundreds of conversations the developer has with the user. It is not that information is lost, but information transfer is moved from the writing to the speaking. (Alistair Cockburn)

} User Story Bildquelle: © bitburger-getraenkegruppe, von http://w

ww

.vfl-neidenbach.de

Page 23: Die unendliche User Story - agiles Anforderungsmanagement

Use Case ≈ User Story + Acceptance Tests ?

“User stories plus acceptance tests arebasically the same thing as an use case.”James Grenning

“The main scenario in itself is a story with the actual line items in a main scenario becoming the acceptance criteria.”http://agilefaq.wordpress.com

Bildquelle: ww

w.bildschirm

arbeiter.com I picdum

p

Page 24: Die unendliche User Story - agiles Anforderungsmanagement

?Bildquelle: © coku.com I www.tumblr.com

Page 25: Die unendliche User Story - agiles Anforderungsmanagement

User Story

Use Case

StoriesConcrete ScenariosUsage Narratives

Fred the facilities manager creates an order using the system. The system notifies Rick the review manager, who reviews the order using the system and OKs it. Lee, the loading dock worker, puts it onto a truck, marking it accordingly in the system. When the truck gets to the receiving dock, Liz the loader at that location fills in needed paperwork, eventually also marking in the system that the item has arrived. . . .

Bildquelle: ww

w.tum

blr.com I one w

ay or the other

Page 26: Die unendliche User Story - agiles Anforderungsmanagement

Akzeptanzkriterium = Anforderung Akzeptanzkriterium ∈ Anforderung Akzeptanzkriterium + Anforderung

AkzeptanzkriteriumAbnahmekriteriumAkzeptanztestTestfall

?RE AgileBildquelle: www.roadeveron.blogspot.de/2008/09/two-days-before-mast.htmle:

Page 27: Die unendliche User Story - agiles Anforderungsmanagement

Anweisung für Test, nichts zusätzliches(Chris Rupp)

„Aus der Erfahrung in der Praxis heraus lässt sich sagen , dass gewissenhaftes Formulieren von Abnahmekriterien elementarer Bestandteil jeder Systementwicklung sein sollte, der es an Spezifikationstreue, Testbarkeit und Vollständigkeit liegt.“ Chris Rupp, zitiert in Peter Hruschka: Abnahmekriterien - Bindeglied von Requirements und Test

Page 28: Die unendliche User Story - agiles Anforderungsmanagement

AkzeptanzkriteriumAbnahmekriteriumAkzeptanztestTestfall

= Anweisung für Test

Page 29: Die unendliche User Story - agiles Anforderungsmanagement

Aus der agilen Perspektive …

Bildquelle : © Heike M

utter u. Ulrich Genth I Tiger and Turtle – M

agic Mountain, Foto by Guido Erbring

Page 30: Die unendliche User Story - agiles Anforderungsmanagement

Verification of Expectations, Test(Note)(Mike Cohn)

Page 31: Die unendliche User Story - agiles Anforderungsmanagement
Page 32: Die unendliche User Story - agiles Anforderungsmanagement

AkzeptanzkriteriumAbnahmekriteriumAkzeptanztestTestfall

= Anweisung für Test= Abnahmekriterien + Details

Page 33: Die unendliche User Story - agiles Anforderungsmanagement

wie bekommen wirdies unter einen …

… expressing and documenting details…

… nichts zusätzliches zu den Anforderungen…

… the fit criterion is the requirement...

Bildquelle: www.epicmoron.com/14-funny-and-bizarre-construction-mistakes

Page 34: Die unendliche User Story - agiles Anforderungsmanagement

Testfall ≈ Anforderungsspezifikation

„Testfälle können [..] als Anforderungsspezifikation verstanden werden, da sie wie herkömmliche Anforderungen ein Verhalten oder eine Eigenschaft eines Produktes definieren. [..] Bei Verwendung von Testfällen als Notation kann man Testfälle an sich ebenso als eine Anforderung bezeichnen …” Chris Rupp: Requirements-Engineering und –Management, 5. Auflage

Bildquelle: © shutterstock I leather cow

boy hat isolated on white background by O

leksandr Lysenko

Page 35: Die unendliche User Story - agiles Anforderungsmanagement

AkzeptanzkriteriumAbnahmekriteriumAkzeptanztestTestfall

Anweisung für Test ≈ Testfall

Testfall = Anforderungsspezifikation

A set of input values, execution preconditions, expected results and execution postconditions, developed for a particular objective or test condition, such as to exercise a particular program path or to verify compliance with a specific requirement.

[IEEE 610] nach ISTQB Glossary

= Anweisung für Test= Abnahmekriterien + Details

Page 36: Die unendliche User Story - agiles Anforderungsmanagement

… vom Product Owner

Bildquelle: www.cgfinal.com I jukebox

Page 37: Die unendliche User Story - agiles Anforderungsmanagement

So how does this work ?

• … when a product owner is coming up with acceptance criteria? [..] But …

… in reality, the list of criteria is likely to be far from exhaustive. The product owner and team will identify a limited list made up of the more conspicuous choices. These are the choices that are highly visible, easy to find.

• [..] the "good enough" criterion ends the search.

– http://www.scrumalliance.org/articles/387-user-story-acceptance-criteria-the-art-of-satisficing-and-bounded-rationality

Page 38: Die unendliche User Story - agiles Anforderungsmanagement

IREB Certified Professional for Requirements Engineering, Elicitation and Consolidation, AL

BefragungstechnikenBeobachtungstechnikenKreativitätstechnikenArtefaktbasierte TechnikenUnterstützende Techniken

ISTQBAnforderungsbasiertes Ableiten von Testfällen

ScrumPractices

PersonaKano ModellUse Cases(IREB)MoSCoW (BABOK® Guide)

Bildquelle: www.wrdbnr.com I A change

Page 39: Die unendliche User Story - agiles Anforderungsmanagement

Klärung der Begriffe

• Agile & RE– Use Case vs. User Story? – Abnahmekriterium vs.

Akzeptanztest vs. Testfall– RE Methoden für Agile

• Backlog Management– Die Zweck-Perspektive:

Verhalten vs. Aufgabenplanung– Geordnet vs. Priorisiert

• Fazit

Bildquellen: © shutterstock |Picturesque Norway sea landscape with bridge. Atlanterhavsvegen http://roadeveron.blogspot.de/2008/09/two-days-before-mast.html

Page 40: Die unendliche User Story - agiles Anforderungsmanagement

Dies ist ein Mittel.

Dies ist ein Ziel.

Page 41: Die unendliche User Story - agiles Anforderungsmanagement

Ein Ziel verfolgt man zu einem Zweck:

Page 42: Die unendliche User Story - agiles Anforderungsmanagement

Ein Ziel verfolgt man zu einem Zweck:

Page 43: Die unendliche User Story - agiles Anforderungsmanagement

So manches lenkt vom Zweck ab.

Page 44: Die unendliche User Story - agiles Anforderungsmanagement

Perspektivenwechsel:VERHALTEN vs. AUFGABENPLANUNG

Bildquelle:www.dr-brot.soup.io/post/259874585/SZ-S-ddeutsche-Zebrastreifen

Page 45: Die unendliche User Story - agiles Anforderungsmanagement

As iterations have gotten shorter and teams have gotten smaller, the scope of a single story has shrunk. I certainly feel the need for larger-scale structuring mechanisms. Kent Beck

Überblicks-Ziel

Überblicks-Ziel

Anwender-Ziel

Sub-Funktion

FeatureBacklog

EpicBacklog

StoryBacklog

Bildquelle: © shutterstock | Great Pyram

ide and blue sky with cllouds by Dudarev M

ikhail

Integration von Projekt - …- Steuerung - Planungdurch Übergang von abstrakter SPEZIFIKATIONzur PLANUNG durch Verfeinerunganhand von User Stories mit Akzeptanztests

Page 46: Die unendliche User Story - agiles Anforderungsmanagement

Überblicks-Ziel

Überblicks-Ziel

Überblicks-Ziel

Anwender-Ziel

Anwender-Ziel

Sub-Funktion

Sub-Funktion

Perspektive: VerhaltenUse Case User Story

Tage/Jahre

Stunden/Tage

2-20 Min.

2-20 Sek./Min.

Page 47: Die unendliche User Story - agiles Anforderungsmanagement

Überblicks-Ziel

Überblicks-Ziel

Überblicks-Ziel

Anwender-Ziel

Anwender-Ziel

Sub-Funktion

Sub-Funktion

Perspektive: Aufgabenplanung

als <Rolle>will ich <Ziel>,

so dass <Zweck>

Use Case User Story

1 : 1

Page 48: Die unendliche User Story - agiles Anforderungsmanagement

Überblicks-Ziel

Überblicks-Ziel

Anwender-Ziel

Anwender-Ziel

Sub-Funktion

Sub-Funktion

Perspektive: Aufgabenplanung

als <Rolle>will ich <Ziel>,

so dass <Zweck>

Use Case User Story

1 : n

als <Rolle>will ich <Ziel>,

so dass <Zweck>

als <Rolle>will ich <Ziel>,

so dass <Zweck>

Page 49: Die unendliche User Story - agiles Anforderungsmanagement

Überblicks-Ziel

Überblicks-Ziel

Anwender-Ziel

Anwender-Ziel

Sub-Funktion

Sub-Funktion

Perspektive: Aufgabenplanung

als <Rolle>will ich <Ziel>,

so dass <Zweck>

Use Case User Story

Szenario 2

als <Rolle>will ich <Ziel>,

so dass <Zweck>

als <Rolle>will ich <Ziel>,

so dass <Zweck>

Szenario 1

Aktionsschritt 4.2

Page 50: Die unendliche User Story - agiles Anforderungsmanagement

Überblicks-Ziel

Überblicks-Ziel

Anwender-Ziel

Anwender-Ziel

Sub-Funktion

Sub-Funktion

Perspektive: Aufgabenplanung

als <Rolle>will ich <Ziel>,

so dass <Zweck>

Use Case User Story

m : 1

Page 51: Die unendliche User Story - agiles Anforderungsmanagement

Überblicks-Ziel

Überblicks-Ziel

Anwender-Ziel

Anwender-Ziel

Sub-Funktion

Sub-Funktion

Perspektive: AufgabenplanungUse Case User Story

als <Rolle>will ich <Ziel>,

so dass <Zweck>

Bildquelle: © shutterstock | Super Looper by Keneth W

illiam Caleno

Page 52: Die unendliche User Story - agiles Anforderungsmanagement

Überblicks-Ziel

Überblicks-Ziel

Anwender-Ziel

Anwender-Ziel

Sub-Funktion

Sub-Funktion

Perspektive: AufgabenplanungUse Case User Story

als <Rolle>will ich <Ziel>,

so dass <Zweck>

als <Rolle>will ich <Ziel>,

so dass <Zweck>als <Rolle>

will ich <Ziel>,so dass <Zweck>

Bildquelle: © shutterstock | Super Looper by Keneth W

illiam Caleno

Page 53: Die unendliche User Story - agiles Anforderungsmanagement

Überblicks-Ziel

Überblicks-Ziel

Überblicks-Ziel

Anwender-Ziel

Anwender-Ziel

Sub-Funktion

Beide Perspektiven

User Story

User StoryUser Story

User Story

Bildquelle: © shutterstock |Funnel it is isolated on a w

hite background by Konjushenko Vladimir

Page 54: Die unendliche User Story - agiles Anforderungsmanagement

Überblicks-Ziel

Überblicks-Ziel

Überblicks-Ziel

Anwender-Ziel

Anwender-Ziel

Sub-Funktion

Beide PerspektivenAbstraktions-Grad

User Story

User StoryUser Story

User Story

Planbarkeit:

- passt in 1 Sprint- schätzbar- testbar

Bildquelle: © shutterstock |Funnel it is isolated on a w

hite background by Konjushenko Vladimir

Page 55: Die unendliche User Story - agiles Anforderungsmanagement

Bildquelle: © shutterstock |Funnel it is isolated on a w

hite background by Konjushenko Vladimir

Überblicks-Ziel

Überblicks-Ziel

Überblicks-Ziel

Anwender-Ziel

Anwender-Ziel

Sub-Funktion

Beide Perspektiven

User Story

User Story

User StoryUser Story

User Story

User StoryUser Story

User Story

User Story

User StoryUser Story

User Story

Page 56: Die unendliche User Story - agiles Anforderungsmanagement

Use Case Diagramme für Stories

Page 57: Die unendliche User Story - agiles Anforderungsmanagement

Minimal Marketable Feature

Bildquelle: www.mein-picdump.de

Page 58: Die unendliche User Story - agiles Anforderungsmanagement

Übergang Use Case zu User Stories

cardmapping.com

Page 59: Die unendliche User Story - agiles Anforderungsmanagement

User Story Splitting

cardmapping.com

Page 60: Die unendliche User Story - agiles Anforderungsmanagement

Release Planung

cardmapping.com

V 0.9

Page 61: Die unendliche User Story - agiles Anforderungsmanagement

Backlog Priorisierungbisher:- ROI - Aufwand- Risiko

Bildquelle:ww

w.freada.com

/creative-stairs-design/calorie-stairs

Page 62: Die unendliche User Story - agiles Anforderungsmanagement

Geordnet nach Priorität …

Bildquelle: www.piximus.net

Page 63: Die unendliche User Story - agiles Anforderungsmanagement

• und da sollten wir nicht…– ROI

Page 64: Die unendliche User Story - agiles Anforderungsmanagement

„ So einfach wie möglich.Aber nicht einfacher. “

Page 65: Die unendliche User Story - agiles Anforderungsmanagement

Cost of Delay

• Stakeholder-Wert• Zeit-Wert• Wert der

Risiko-minimierung

Delta CoD >> 0

Delta Effort >> 0

Delta CoD

≈ 0Delta Effort ≈ 0

High Cost of DelayFirst

Shortest JobFirst

WSJFWeighted Shortest Job First(CoD / Effort)

Bildquelle: http://089fashionblvd.wordpress.com/tag/leblogdebetty/ Bildquelle: © shutterstock | Time is money by Denis Larkin

Page 66: Die unendliche User Story - agiles Anforderungsmanagement

Soziale Kompetenz 2011

Ranking of the Splitting Patterns

18.03.2011 66

Pattern I N V E S T Total

Business Rule Variations 3,8 2,0 5,0 4,0 5,0 5,0 4,1

Variations in Data 2,8 2,5 4,4 4,4 4,7 5,0 4,0

Simple / Complex 3,7 4,0 4,0 3,6 4,0 4,0 3,9

Data Entry Methods 2,5 3,0 4,0 4,0 4,7 5,0 3,9

Workflow Steps 3,4 4,0 4,0 3,6 4,0 4,0 3,8

Major Effort 3,1 4,0 3,4 3,0 3,2 4,0 3,5

Operations 2,2 4,0 4,0 2,8 4,0 4,0 3,5

Defer Performance 2,2 3,0 4,0 3,1 2,6 4,0 3,2

Break Out a Spike 1,0 2,0 2,0 1,4 1,7 1,0 1,5

Analysis of User Story Splitting18.03.2011 66

Page 67: Die unendliche User Story - agiles Anforderungsmanagement

Fazit

• Akzeptanzkriterien – Begrifflichkeit in RE und Agile

lässt sich über den Testfall (ISTQB) verbinden– RE Methoden zum Ermitteln von Akzeptanzkriterien

führen zu besseren User Stories• Orientierung: von der Spezifikation zur Planung

– Bessere Projekt-Planung mit Backlogs:Use Cases verfeinern zu User Stories mit Akzeptanztests

– Release Planung anhand Minimal Marketable Features• Ordnung und Struktur statt flacher Priorisierung der BL Items• Kostengünstigere, schnellere Entwicklung• Time to Market optimiert

Page 68: Die unendliche User Story - agiles Anforderungsmanagement

Fazit

• Akzeptanzkriterien – Begrifflichkeit in RE und Agile

lässt sich über den Testfall (ISTQB) verbinden– RE Methoden zum Ermitteln von Akzeptanzkriterien

führen zu besseren User Stories• Orientierung: von der Spezifikation zur Planung

– Bessere Projekt-Planung mit Backlogs:Use Cases verfeinern zu User Stories mit Akzeptanztests

– Release Planung anhand Minimal Marketable Features• Ordnung und Struktur statt flacher Priorisierung der BL Items• Kostengünstigere, schnellere Entwicklung• Time to Market optimiert

Page 69: Die unendliche User Story - agiles Anforderungsmanagement

Fazit

• Akzeptanzkriterien – Begrifflichkeit in RE und Agile

lässt sich über den Testfall (ISTQB) verbinden– RE Methoden zum Ermitteln von Akzeptanzkriterien

führen zu besseren User Stories• Orientierung: von der Spezifikation zur Planung

– Bessere Projekt-Planung mit Backlogs:Use Cases verfeinern zu User Stories mit Akzeptanztests

– Release Planung anhand Minimal Marketable Features• Ordnung und Struktur statt flacher Priorisierung der BL Items• Kostengünstigere, schnellere Entwicklung• Time to Market optimiert

Page 70: Die unendliche User Story - agiles Anforderungsmanagement

Fazit

• Akzeptanzkriterien – Begrifflichkeit in RE und Agile

lässt sich über den Testfall (ISTQB) verbinden– RE Methoden zum Ermitteln von Akzeptanzkriterien

führen zu besseren User Stories• Orientierung: von der Spezifikation zur Planung

– Bessere Projekt-Planung mit Backlogs:Use Cases verfeinern zu User Stories mit Akzeptanztests

– Release Planung anhand Minimal Marketable Features• Ordnung und Struktur statt flacher Priorisierung der BL Items• Kostengünstigere, schnellere Entwicklung• Time to Market optimiert

Page 71: Die unendliche User Story - agiles Anforderungsmanagement

We make ITwork for you.

www.DialogData.de

Bildquelle: www.edelight.de

www.DialogData.dewww.facebook.com/dialogdata

Ihre Fragen,bitte.