In Scrum Projects, Estimation is done by the entire team during Sprint Planning Meeting. The objective of the Estimation would be to consider the User Stories for the Sprint by Priority and by the Ability of the team to deliver during the Time Box of the Sprint.
Product Owner ensures that the prioritized User Stories are clear, can be subjected to estimation, and they are brought to the beginning of the Product Backlog.
As the Scrum Team in total is responsible for the delivery of the product increment, care would be taken to select the User Stories for the Sprint based on the size of the Product Increment and the effort required for the same.
The Scrum Estimation of User Stories is in terms of the degree of difficulty for each of the User Stories. To assess the degree of difficulty, a particular scale is used.
There are several types of scales that are used in Scrum Estimation. Following are some examples -
The estimation technique is normally chosen in such a way that the entire scrum team is acquainted and comfortable with scale’s values. The most commonly used and most popular technique is Planning Poker which is based on Fibonacci sequence.
In Planning Poker Estimation Technique, estimates for the User Stories are derived by playing planning poker. The entire Scrum Team is involved and it results in quick but reliable estimates.
Planning Poker is played with a deck of cards. As Fibonacci sequence is used, the cards have numbers - 1, 2, 3, 5, 8, 13, 21, 34, etc. These numbers represent the Story Points. Each estimator has a deck of cards. The numbers on the cards should be large enough to be visible to all the team members, when one of the team members holds up a card.
One of the team members is selected as the Moderator. Moderator reads the description of the User Story for which estimation is being made. If the estimators have any questions, Product Owner answers them.
Each estimator privately selects a card representing his or her estimate. Cards are not shown until all the estimators have made a selection. At that time, all cards are simultaneously turned over and held up so that all team members can see each estimate.
In the first round, it is very likely that the estimations vary. The high and low estimators explain the reason for their estimates. Care should be taken that all the discussions are meant for understanding only and nothing is to be taken personally. The moderator has to ensure the same.
The team can discuss the story and their estimates for few more minutes.
The moderator can take notes on the discussion that will be helpful when the specific story is developed. After the discussion, each estimator re-estimates by again selecting a card. Cards are once again kept private until everyone has estimated, at which point they are turned over at the same time.
Repeat the process till the estimates converges to a single estimate that can be used for the story. The number of rounds of estimation may vary from one user story to another.
Planning poker combines three methods of estimation -
Expert Opinion : In an Expert Opinion based Estimation approach, an expert is asked how long something will take or how big it will be. The expert provides an estimate relying on his or her experience or intuition or gut feel.
Expert Opinion Estimation usually doesn’t take much time and is more accurate compared to some of the analytical methods.
Analogy : Analogy Estimation uses comparison of User Stories. The User Story under Estimation is compared with similar User Stories implemented earlier. This results in accurate results as the estimation is based on proven data.
Disaggregation : Disaggregation Estimation is done by splitting a User Story into smaller, easier-to-estimate User Stories. The user stories to be included in a Sprint are normally in the range of two to five days to develop. Hence, the User Stories that possibly take longer duration need to be split into smaller Use Cases. This approach also ensures that there would be many stories that are comparable.
Planning Poker is an enjoyable, yet productive approach to estimating. As the session is open for discussions before the final estimate is arrived, it would easy for the team to come to a consensus and also have a broad view of the implementation of the User Story at hand.