HEAD
This video is about how to estimate using planning poker. In teams who follow agile practices, we expect them to be self organizing where nobody assigns the work to anyone and there is a culture of pulling the work and that means no pushing. How could that be possible? Lets learn. I am Anuj Ojha who believes in the power of agile and spend my time in learning & simplifying the problems of the world around me.
BODY
Estimation is an extremely important process
With these numbers
We get to know when will the work finish?
How much would it cost?
Proper budgetary plans are made
And then everybody needs to act to fulfil the budgetary goals
But it is tedious, boring and definitely controversial
Which goes against the spirit of agile
Which is fun, participatory and engaging
Poker planning takes boring out of estimation
And In this video, we will learn how to planning poker cards
This is how it looks like
It has a number of each card
0, ½, 1, 2, 3, 5, 8, 13, 20, 40, 100, ?
Incase you do not have physical cards then you can also download mobile apps
Or there are teams who use their hands to estimate
These numbers are story points when you measure the size of user stories
And could be considered as hours when you estimate the tasks
So, how do we play this game?
It starts with finding one story as a BASE story
And then entire team estimates all the stories in the backlog relative to base story
These stories when identified for a sprint
Team breaks them into actionable items
Called Tasks
To start estimating tasks,
Everybody gets a deck of their own
It starts with discussing the task in hand for estimation
Team clarifies all the doubts till they are confident to estimate
Check with everyone if they are ready to play
All of them hides their card which is nothing but their estimate for a task
Nobody should leak it
Then at the same time everyone throws the card
Here are few scenarios that can happen
If everyone throws the same number. BINGO.
Then the estimate of the task is the same number.
IT rarely happens
Mostly people will have varying numbers
Like out of 5 team members, 3 have thrown 2
and two people have thrown 3 then,
Then we should go with the max as they are neighbours in our card sequence
It is unnecessary to debate in this situation
If the min and max are not neighbours,
Like minimum estimate is 2 and max is 8
then the person with the min and the person with max will explain their viewpoints and other people will join the conversation
Idea is to respect the diversity of thoughts
Here we play again for the same card, just to check if the opinion has changed and we can get consensus
If you got the neighbour now
Then you know what to choose
Lets say in the 2nd round also,
you have not got the neighbours
You can recheck the opinion but it could be a possibility
That there is a skillset gap and
thats why no-one is convinced to change their estimate
In such scenario person with the least estimate has to offer help to the person with max estimate
And this is done by pair programming
In Pair programming, 2 people sit on the same machine
One is called Driver and other is Navigator
Driver starts coding first
Navigator observes and could have such reactions:
– What an amazing way of coding?
– Hey let me show you a better way of doing it?
– Also, both know the problem they will get stuck in, by the time driver reaches there, Navigator has already found the solution
This way, the team exchange their learning and avoid the risk of having indispensible person
After some time, say an hour, they switch the places now Driver becomes Navigator and vice-versa
This way all the tasks for a story are estimated, let’s say the sum of all the tasks is 50 hours.
Then 50 become hour is an estimate of a story
Remember,
Story points have no relation with hours
I see it as SIN if any team does it
Also, planning poker has many benefits like
– Everybody discuss about the story or task
– Everybody gets a chance to make their point
– It highlights the differences in our viewpoints
– It highlights the skillset gap which we could fill through pair programming
– We are not doing any average as it ignores the team members who have estimated more
– We are not assigning the tasks to the one who gave min estimate, this way we are contributing towards generalizing specialists
– Above all, it is also FUN
In the end it is just an estimate.
TAIL
That’s all. Thank you for listening. I hope you enjoyed this and will share with your dear ones. Feel free to write me at anuj@frinkture.com. Frinkture is a laboratory of free thoughts and we believe in culture of sharing knowledge and learning more. Thank you and wait for more to come.