User stories - an introduction

Preview:

DESCRIPTION

These are the slides for my User stories presentation. This particular version was given as part of my "I'm telling you for the last time"-series (see http://www.marcusoft.net/2013/11/ImTellingYou.html). The presentation was recorded and can be found here: http://www.youtube.com/aptitudsthlm

Citation preview

User stories a practical introduction

Marcus Hammarberg

krav.doc

The application should work

fine

http://www.youtube.com/aptitudsthlm

Bandung

http://4.bp.blogspot.com/_HAjZsLKwoHM/S7jPnPD57PI/AAAAAAAAAgY/pqr7zqRJ0ys/s1600/30-scout_promise.gif

http://www.adem.arkansas.gov/ADEM/Divisions/Preparedness/Planning/Images/Planning.jpg

http://faithoncampus.com/wp-content/uploads/2010/12/conversations-large.jpg

Tests as

documentation

WHAT

HOW

User story ≠

Requirements

Why?

Why?

Why?

Why? Why?

Why?

http://www.irtc.org/ftp/pub/stills/2003-08-31/dali.jpg

http://ydre1952.files.wordpress.com/2011/01/bc3a4st-fc3b6re-datum.jpg

As a [role] I want [feature] So that [benefit]

As a [role] I want [feature] So that [benefit]so that [benefit]

In order to [benefit] As a [role] I want [feature]

In order to keep track of my savings As a saver in the bank I want a simple overview over all my savings accounts

In order to protect my economical status As an user of the bank I want to log in using twitter

http://www.moneyandshit.com/wp-content/uploads/2011/04/wat.jpg

Verbal communication

Everybody get them

Right sized

Iterative, incremental development

User interface

Business logic

Data access

User interface

Business logic

Data access

User interface

Business logic

Data access

User interface

Business logic

Data access

User interface

Business logic

Data access

Encourage us to wait with details

http://www.flickr.com/photos/puuikibeach/3435696039/sizes/l/in/photostream/

Rolling wave planning

“They don’t know what they want”

How to write a great user story

http://jenniferdawnbrody.com/wp-content/uploads/2011/12/ink-pen.jpg

INVEST

INVESTIndependent

INVESTIndependent

Negotiable

INVESTIndependent

Negotiable

Valuable to users or customers

INVESTIndependent

Negotiable

Valuable to users or customers

Estimable

INVESTIndependent

Negotiable

Valuable to users or customers

Estimable

Small

INVESTIndependent

Negotiable

Valuable to users or customers

Estimable

Small

Testable

Divide &

Conquer

Roller

http://www.flickr.com/photos/xjrlokix/3932488768/sizes/l/in/photostream/

Begin with the goal!

User story slicing

http://www.flickr.com/photos/slurm/3546246044/sizes/l/in/photostream/

Yes, it can be done

http://www.triathlonwoerden.nl/content/24501/news/clnt/3298551_1_org.jpg

Write stuff that can be done

Note any limitations

http://www.flickr.com/photos/ajnabee/16141492/sizes/l/in/photostream/

Avoid GUI description

In order to [benefit] As a [role] I want [feature]

Practical exercises Diverge and merge

http://3.bp.blogspot.com/-_j18vwcNcuY/Tk-WDYlM3II/AAAAAAAABso/jsN6So-YJbQ/s1600/Easter%2Begg%2Bhunt.jpg

Gathering user stories

Workshops

http://www.pivotaldrama.com/images/drama.chat.jpg

3 amigos

http://www.lastfm.se/music/The+Three+Amigos

User story mapping

http://www.agileproductdesign.com/presentations/user_story_mapping/index.html

How do they know what they want?

How do they know what they want?

Why?

How do they know what they want?

Why?Who?

How do they know what they want?

Why?Who?

How?

How do they know what they want?

Why?Who?

How?

What?

http://impactmapping.org/

Estimating

How big is this rock?

http://imgcache.ifans.com/forums/imgcache/13714.png

Now compare

http://imgcache.ifans.com/forums/imgcache/13714.pnghttp://www.stonetohome.com/media/gbu0/prodlg/Yorkstone%20Rockery.jpg

Story points

T-shirt sizes

http://www.hungerprojektet.se/2011/09/vill-du-synas-pa-min-troja/t-shirt/

S M L

Planning poker

Where !should !this go?

http://www.flickr.com/photos/ell-r-brown/3621911160/sizes/l/in/photostream/

Estimates are wasteful !

Estimating is not

#NoEstimates http://bit.ly/noestimates

PlanningTime

ResourcesFeatures

Planning

Time

ResourcesFeatures

Quality

Sprint planning

TimeWhen do we want to be done?

Sprint planning

TimeWhen do we want to be done?

Resources

Who are in the team?

Sprint planning

Features

TimeWhen do we want to be done?

Resources

Who are in the team?

Which features will we manage?

Sprint planning

Burndown

100 points

0 pointsStart End

Burndown

100 points

0 pointsStart End

Burndown

100 points

0 pointsStart End

Burndown

100 points

0 pointsStart End

Burndown

100 points

0 pointsStart End

Burndown

100 points

0 pointsStart End

Burndown

100 points

0 pointsStart End

Burndown

100 points

0 pointsStart End

Test i user stories

Vad är klar?

Goal in agile testing

Not to find bugs !

Make sure bugs never comes in in

the first place

Write tests before coding

Summing up

As a [role] I want [feature] So that [benefit]

www.marcusoft.net @marcusoftnet

marcus.hammarberg@aptitud.se

www.marcusoft.net @marcusoftnet

marcus.hammarberg@aptitud.se

Recording of this talk http://www.youtube.com/

aptitudsthlm