be ready, be done: the art of slicing stories

26
Be Ready, Be Done: The Art of User Stories [email protected] Raj Indugula

Upload: raj-indugula

Post on 11-Apr-2017

88 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Be Ready, Be Done: The Art of Slicing Stories

Be Ready, Be Done: The Art of User Stories

[email protected]

RajIndugula

Page 2: Be Ready, Be Done: The Art of Slicing Stories

Your experience with slicing stories…

I’ve done it before

I understand the concepts, but haven’t practiced much

It’s new to me

2

Page 3: Be Ready, Be Done: The Art of Slicing Stories

•  ThinkinginStories•  Spli;ngStories

•  Q&A

3

Page 4: Be Ready, Be Done: The Art of Slicing Stories

Thinking in Stories 1

Page 5: Be Ready, Be Done: The Art of Slicing Stories

Asa…Iwantto…Sothat…

DesiredFunc,on(What?)

Whatdotheywantthe

systemtodo?

What’s in a Story? Outlinesagivenusersegment’sneedandourvalueproposiHon

UserRole(Who?)

WhowillusethisfuncHon?

EndResult(Why?)

Whatlargergoaloftheuserdoesthissupport?

It’smerelyathinkingtool!

5

MikeCohn'stemplate

Page 6: Be Ready, Be Done: The Art of Slicing Stories

The 3 C’s of a User Story

RonJeffries

6

Page 7: Be Ready, Be Done: The Art of Slicing Stories

What makes a good story?

INVEST

Independent

NegoHable

Valuable

EsHmable

Small

Testable

BillWake

7

Page 8: Be Ready, Be Done: The Art of Slicing Stories

Splitting Stories 2

Page 9: Be Ready, Be Done: The Art of Slicing Stories

The Big Picture

EasiertodefineupfrontHow?

Why?

Discussionreminder

AdaptedfromALMSummit3-TechTalk

Goal/Outcome

BigChunks

SmallerChunks

9

Page 10: Be Ready, Be Done: The Art of Slicing Stories

Slicing Vertically

10

Toobig Don’tslicehorizontally

VerHcalsliceenablesfeedback,validaHon,prioriHzaHon

Page 11: Be Ready, Be Done: The Art of Slicing Stories

Strategies for S

plitting S

tories

11

Page 12: Be Ready, Be Done: The Art of Slicing Stories

Useful when… Initial story describes a workflow or sequence of steps Key Questions Can you take a thin slice through the workflow first? Can you do the beginning and end of workflow first?

As a learner, I want to register for a class

and pay for it using a credit card so that I am better informed

about Agile

As a learner

I

can view

courses

As a custom

er

I can select

the

course I want

to signup for

As a learner

I

can review my

registration

As a learner

I

can submit my

registration

WORKFLOW STEPS

12IllustraHonderivedfromKentMcDonald

Page 13: Be Ready, Be Done: The Art of Slicing Stories

Useful when… Initial story encompasses multiple operations (e.g. “manage” or “configure” something) Key Questions Can you split the operations into separate stories? Are all these operations necessary just yet?

As a training provider, I want to manage my

course offerings, so that learners can view them

…I can

make

upload my

course

catalog

…I can

add a

course

…I can edit

a course

…I can

delete a

course

OPERATIONS

13

Page 14: Be Ready, Be Done: The Art of Slicing Stories

Useful when… Initial story impacts multiple roles and the impact is different for each role Key Questions Can you identify the various roles impacted? Are all roles relevant right now?

ROLE

As a training

coordinator,

I want to

register a

learner for a

class

As a learner, I want to register for a course so

that…

14

As a learner,

I want to

register for

a class

Page 15: Be Ready, Be Done: The Art of Slicing Stories

Useful when… Initial story does something to different pieces of data Key Questions Can you split the story to process one kind of data first and enhance with the other kinds later?

DATA BOUNDARIES

…view

course

name and

description

…view

course

agenda

view course instructor

qualifications

As a learner, I want to view

course information, so

that...

15

Page 16: Be Ready, Be Done: The Art of Slicing Stories

Useful when… Initial story has a simple core functionality that provides most of the value Key Questions Could you split the story to do that simple core first and enhance it with additional stories later?

SIMPLE FIRST, THEN ENHANCE

As a learner, I want to see my past

courses, so that…

…see all my

past

courses

…see

courses

completed

on a given

topic …see courses

completed in the past 2

months 16

Page 17: Be Ready, Be Done: The Art of Slicing Stories

Useful when… There is significant effort in doing the first story even after applying obvious split Key Questions Does it matter which one we do first? Can we group the other stories, given the difficult first story is done?

MAJOR EFFORT

…pay with

one credit

card type …pay with all

credit card

types (given

credit card

processing

functionalit

y

is in place)

As a learner, I want to pay for my class with Visa, American

Express, or MasterCard, so

that…

17

Page 18: Be Ready, Be Done: The Art of Slicing Stories

Useful when… Initial story is about interacting with multiple instances of something Key Questions Does working with nothing or one thing make it easier to get started? Do we really need to deal with multiple instances right now?

As an online shopper, I want to delete items from the shopping cart,

so that…

…delete

one item

at a time

…delete

collection

of items

from my

cart

ZERO, ONE, MANY

18

Page 19: Be Ready, Be Done: The Art of Slicing Stories

Tease out the business rules, and examples that clarify a user story

Rule Rule Rule

Story

Example

Example

Example

QuesHon

AssumpHon

ExampleMapping:MafWynne

19

RULES & EXAMPLES

AcceptanceCriteria

AcceptanceScenarios

Page 20: Be Ready, Be Done: The Art of Slicing Stories

Useful when… None of the patterns seem feasible and team is still baffled about splitting the story Key Questions What are the key uncertainties?

SPIKES

Spike:

Investigate

translation

capability

As a learner, I want to see the course offerings in the language of my choice so

that…

20

Page 21: Be Ready, Be Done: The Art of Slicing Stories
Page 22: Be Ready, Be Done: The Art of Slicing Stories

Zone of Control & Sphere of Influence

Deliverable(IWant…)CONTROL INFLUENCE

CONTR

OL

INFLUEN

CE

UserN

eed(SoTh

at…)

Goodstories

Fake,Misleadingstories

NotAcHonable

UnrealisHc

22GojkoAdzic

Page 23: Be Ready, Be Done: The Art of Slicing Stories

23

Page 24: Be Ready, Be Done: The Art of Slicing Stories

Of course you can have your cake and eat it too…

AslongasitisaSLICE ataHme!

24

Page 25: Be Ready, Be Done: The Art of Slicing Stories

References Books •  Fifty Quick Ideas to improve your User Stories, Gojko Adzic •  User Story Mapping, Jeff Patton •  User Stories Applied, Mike Kohn Articles •  http://agileforall.com/wp-content/uploads/2009/10/Story-Splitting-Cheat-Sheet.pdf •  http://www.slideshare.net/arsenalist/splitting-userstories •  http://idiacomputing.com/pub/UserStories.pdf •  http://www.slideshare.net/kentjmcdonald/21-story-splitting-patterns-49940134 •  http://blog.jbrains.ca/permalink/how-youll-probably-learn-to-split-features •  https://cucumber.io/blog/2015/12/08/example-mapping-introduction •  http://blog.agilistic.nl/8-useful-strategies-for-splitting-large-user-stories-and-a-cheatsheet/ Ask me for more!

25

Page 26: Be Ready, Be Done: The Art of Slicing Stories

Thanks!

Raj Indugula

[email protected]

Agile Coach, Trainer, Developer 20 years in industry; 13 years of Agile

Passionate about learning, can’t do without checklists, craves whiteboards!

ಧನ#$ದಗ' धन्यवाद