Die unendliche User Story - agiles Anforderungsmanagement

Post on 18-Nov-2014

1.499 views 2 download

description

Der wahre Unterschied zwischen User Stories und Use Cases

Transcript of 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:

- 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

Requirements Engineering

Software Entwicklung

Bildquelle: © shutterstock | zipper shut. By Macro Schankz

Custom.

Making IT work for you.

Commerce. Process.

AnforderungenArchitekturProgrammierungTesting (Software und Hardware)Technische ProjektleitungEntwicklungsmethodik

• 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

Disorientierung in agilen Projekten …

„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

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

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

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

Agiles Vorgehen ist werte-orientiert

MITTEL

Bessere Zusammenarbeit Zielorientierung

Entscheidungsbefähigung Vertrauen

Verbindliche Vereinbarung ZuverlässigkeitFlexible Planung Offenheit

WERTZIEL MITTEL

Zielorientierung

Vertrauen

Zuverlässigkeit

Offenheit

Focus

Respect

Commitment

Openness

AGILE SCRUM

Fokus schafftZielorientierung.

Vertrauen basiert auf Respekt.

Commitment fördert Leistung.

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

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

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

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

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

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

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

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

Akzeptanzkriterium = Anforderung Akzeptanzkriterium ∈ Anforderung Akzeptanzkriterium + Anforderung

AkzeptanzkriteriumAbnahmekriteriumAkzeptanztestTestfall

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

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

AkzeptanzkriteriumAbnahmekriteriumAkzeptanztestTestfall

= Anweisung für Test

Aus der agilen Perspektive …

Bildquelle : © Heike M

utter u. Ulrich Genth I Tiger and Turtle – M

agic Mountain, Foto by Guido Erbring

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

AkzeptanzkriteriumAbnahmekriteriumAkzeptanztestTestfall

= Anweisung für Test= Abnahmekriterien + Details

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

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

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

… vom Product Owner

Bildquelle: www.cgfinal.com I jukebox

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

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

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

Dies ist ein Mittel.

Dies ist ein Ziel.

Ein Ziel verfolgt man zu einem Zweck:

Ein Ziel verfolgt man zu einem Zweck:

So manches lenkt vom Zweck ab.

Perspektivenwechsel:VERHALTEN vs. AUFGABENPLANUNG

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

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

Ü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.

Ü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

Ü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>

Ü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

Ü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

Ü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

Ü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

Ü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

Ü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

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

Use Case Diagramme für Stories

Minimal Marketable Feature

Bildquelle: www.mein-picdump.de

Übergang Use Case zu User Stories

cardmapping.com

User Story Splitting

cardmapping.com

Release Planung

cardmapping.com

V 0.9

Backlog Priorisierungbisher:- ROI - Aufwand- Risiko

Bildquelle:ww

w.freada.com

/creative-stairs-design/calorie-stairs

Geordnet nach Priorität …

Bildquelle: www.piximus.net

• und da sollten wir nicht…– ROI

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

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

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

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

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

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

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

We make ITwork for you.

www.DialogData.de

Bildquelle: www.edelight.de

www.DialogData.dewww.facebook.com/dialogdata

Ihre Fragen,bitte.