by 10 easy ways to break up · 2019. 5. 20. · break up difficulty real life user stories risky...
TRANSCRIPT
By Dipesh Pala
Agile Australia 2015 17 June 2015
@D
ipeshP
ala
10 EASY WAYS TO BREAK UP
@D
ipeshP
ala
Why are real life break ups so difficult? @
Dip
eshP
ala
@D
ipeshP
ala
Why are real life break ups so difficult?
Risky
@D
ipeshP
ala
Why are real life break ups so difficult?
Risky
Dependency
Once upon a time… @
Dip
eshP
ala
Why are real life break ups so difficult?
Risky
Dependency
Complex
Once upon a time… @
Dip
eshP
ala
Why are real life break ups so difficult?
Risky
Dependency
Complex
Expensive
Once upon a time… @
Dip
eshP
ala
Why are real life break ups so difficult?
Risky
Dependency
Complex
Expensive
Lack of Confidence
@D
ipeshP
ala
Why are real life break ups so difficult?
Risky
Dependency
Complex
Expensive
Lack of Confidence
Not knowing When or How to Break Up!
@D
ipeshP
ala
Break Up Difficulty Real Life User Stories
Risky
Dependency
Complex
Expensive
Lack of Confidence
Not knowing When or How to Break Up
@D
ipeshP
ala
@D
ipes
hP
ala
Three C’s by Ron Jeffries
CARD
CONVERSATION
CONFIRMATION
@D
ipeshP
ala
User Story Card
This is an invitation to have a
Conversation
that will result in
Confirmation
of the requirements
@D
ipes
hP
ala
Three C’s by Ron Jeffries
CARD
CONVERSATION
CONFIRMATION
C +1 more
@D
ipeshP
ala
@D
ipes
hP
ala
Three C’s by Ron Jeffries
CARD
CONVERSATION
CONFIRMATION
COMMITMENT
+1 more
@D
ipeshP
ala
@D
ipeshP
ala
I NVE ST
Bill Wake’s INVEST Model
@D
ipeshP
ala
I NVE ST
N D E P E N D E N T
@D
ipeshP
ala
I NVE ST
N D E P E N D E N T
E G O T I A B L E
@D
ipeshP
ala
I NVE ST
N D E P E N D E N T
E G O T I A B L E
A L U A B L E
@D
ipeshP
ala
I NVE ST
N D E P E N D E N T
E G O T I A B L E
A L U A B L E
S T I M A B L E
@D
ipeshP
ala
I NVE ST
N D E P E N D E N T
E G O T I A B L E
A L U A B L E
S T I M A B L E
M A L L
@D
ipeshP
ala
I NVE ST
N D E P E N D E N T
E G O T I A B L E
A L U A B L E
S T I M A B L E
M A L L
E S T A B L E
@D
ipeshP
ala
@D
ipeshP
ala
DIFFICULTIES
EXCUSES
Opportunity
Consideration
Excuse @
Dip
eshP
ala
This story is too
Complex
Does the story describe a workflow?
Take a thin slice through the
workflow and enhance it later
Break Up Tip #1
@D
ipeshP
ala
@D
ipeshP
ala
Calculate the Total Payment Amount...
Original User Story
Suggested split by slicing the workflow:
@D
ipeshP
ala
Opportunity
Consideration
Excuse @
Dip
eshP
ala
This story is too
Complex
Does this story have a simple
core that provides most of
the value?
Split the story to do the simplest
option first and enhance it
later
Break Up Tip #2
@D
ipeshP
ala
@D
ipeshP
ala
Suggested split by simple / complex variations
Original User Story
Opportunity
Consideration
Excuse @
Dip
eshP
ala
This story is too
Complex
Does this story have a Complex User Interface?
Split the story to do a simple UI first and enhance
later
Break Up Tip #3
@D
ipeshP
ala
Opportunity
Consideration
Excuse @
Dip
eshP
ala
This story is too
Complex
Does the story include multiple
operations?
Separate the operations into separate stories
Break Up Tip #4
Suggested split by separate operations
Original User Story @
Dip
eshP
ala
Opportunity
Consideration
Excuse @
Dip
eshP
ala
This story is too
Expensive Does this
story become expensive due to
non-functional requirements?
Split the story to just make it work first and
enhance it later
Break Up Tip #5
@D
ipeshP
ala
If you can’t fly, Run. If you can’t run, Walk.
If you can’t walk, Crawl.
But, by all means keep moving.
- Dr. Martin Luther King, Jr.
“Small wins are something people can experience pretty regularly if the work is chunked down to manageable pieces.”
@D
ipeshP
ala
@D
ipeshP
ala
Suggested split by deferring Performance or Quality
Opportunity
Consideration
Excuse @
Dip
eshP
ala
This story is too
Expensive
Does this story refer to multiple
users doing similar things at the same time?
Split the story to handle single user first and enhance
it later
Break Up Tip #6
Suggested split by Single / Multiple users
@D
ipeshP
ala
Opportunity
Consideration
Excuse @
Dip
eshP
ala
This story is too
Expensive
Does this story have a major
effort regardless of how it is split?
Split the story so that most of
the value comes from the first split
Break Up Tip #7
@D
ipeshP
ala
20% Result
20% Effort
80% Result
80% Effort
Opportunity
Consideration
Excuse @
Dip
eshP
ala
This story has too many dependencies
Does this story have a variety of business logic?
Split the story to do a subset of
rules first, and enhance it later
Break Up Tip #8
Once upon a time… @
Dip
eshP
ala
@D
ipeshP
ala
Original User Story
Suggested split by business logic
Opportunity
Consideration
Excuse @
Dip
eshP
ala
This story has too many dependencies
Does this story refer to data
from multiple sources?
Split the story to handle data from one source first
and enhance later
Break Up Tip #9
@D
ipeshP
ala
Opportunity
Consideration
Excuse @
Dip
eshP
ala
This story has too many dependencies
Does this story need any
investigation prior to being
started?
Split the story so that the
research is done first, with action
later
Break Up Tip #10
Once upon a time… @
Dip
eshP
ala
T h e l o n g e s t j o u r n e y s t a r t s w i t h a s m a l l s t e p . . .
@D
ipeshP
ala
@D
ipeshP
ala
@D
ipeshP
ala
@D
ipeshP
ala
@D
ipeshP
ala
@D
ipeshP
ala
Q & O
References • http://www.richardlawrence.info/2009/10/28/patterns-for-splitting-user-stories
• http://www.mountaingoatsoftware.com/topics/user-stories
• http://www.agileforall.com/2010/05/03/new-to-agile-remember-a-user-story-is-more-
than-a-card
• http://xprogramming.com/articles/expcardconversationconfirmation
• http://xp123.com/articles/invest-in-good-stories-and-smart-tasks
• Cohn, Mike. 2004. User Stories Applied: For Agile Software Development. Boston, MA:
Addison-Wesley.
• Jeffries, Ron. 2001, August. “Essential XP: Card, Conversation, and Confirmation.” XP
Magazine.
• All images collected through Google
@D
ipeshP
ala
Thank You Contact details
Dipesh Pala Agile Capability Leader
IBM Asia Pacific
@DipeshPala
au.linkedin.com/in/dipeshpala
slideshare.net/DipeshPala