Today I will tell an old story I heard in my childhood. You all might have read this.
Once upon
a time, there lived six blind men in a village. One day an elephant came in
their village. They had no idea what an elephant is. They decided, "Even
though we would not be able to see it, let us go and feel it anyway." All
of them went where the elephant was and touched the elephant.
"Hey,
the elephant is a pillar," said the first man who touched his leg.
"Oh,
no! it’s like a rope," said the second man who touched the tail.
"No!
it’s like a thick branch of a tree," said the third man who touched the
trunk of the elephant.
"It
is like a big hand fan" said the fourth man who touched the ear of the
elephant.
"It
is like a huge wall," said the fifth man who touched the belly of the
elephant.
"It
is like a solid pipe," Said the sixth man who touched the tusk of the
elephant.
They
started arguments as per their perspectives. One passerby explained to them,
"All of you are right. The reason every one of you is telling it
differently because each one of you touched the different part of the elephant.
So, actually the elephant has all those features what you all said."
Yes, you
all got it right. Elephant is what we call an epic and the body parts are user
stories. If the big picture is not known to all six men together, individually
they will perceive it like pillar, rope, branch of tree, hand fan, huge wall
and solid pipe.
This is
the reason we all attend the daily scrum to understand the big picture and
inspect & adapt. We review the development and do retrospective for
improvement so that all parts get developed and integrated correctly. After all,
all parts should be at appropriate place to complete the elephant.
Lights…Camera…Action!!!
Epic:
When a
story is too large and estimation in nearly impossible it is referred to as an
epic. Epics need to be further split into stories of smaller size.
Sample of
epic:
As a user, I can backup all of
my hard drives.
User Story:
A user story describes
functionality that will be valuable to a user of a system.
Sample
template for user story:
As a
<type of user>, I want <some goal> so that <some reason>.
User stories are composed of three
aspects:
• Written description: This is
description of the story used for planning and as a reminder
• Conversation: Conversations
about the user story serve to flesh out the details of the story
• Tests: Tests convey and document
details and that can be used to determine the completeness of user story.
Who writes user stories?
The customer team writes the user
stories. This is because the user story should be written in the language of
the business. Also the customer team can prioritize the stories for inclusion
into iterations and releases.
INVEST in the user stories:
Good stories have six attributes.
Bill Wake, author of
Extreme Programming Explored and Refactoring Workbook, coined the acronym
INVEST for this.
So what is INVEST?
• Independent
• Negotiable
• Valuable to users or
customers
• Estimatable
• Small
• Testable
We will go into details of epic
and user storied in my next post. Please post your feedback and queries so I could include the reply in my next post or try my best to reply as soon as possible.
Understood!!! Invest in stories ...
ReplyDeleteThanks Ankit. We will discuss this further and I will write other post on this.
ReplyDelete