Estimation is a critical part of software development. Agile team estimates the effort and complexity of work before starting a Sprint, usually in Sprint Planning Meeting.
I have been worked in 2 Agile-driven corporations which utilize different approaches to estimate - story points and man-hours. This article records the reason why I prefer and recommend story points (SP).
The goal of estimation
For develop team, estimation is to help team understand the workload they will handle. For resource manager, it is how they can distribute the resource. For client, it is the amount of outcome they will acquire.
Estimation is a rough measurement that will be used to track the project progress and evaluate the actual result.
Why Story Points
Man-hours is already a widespread estimation approach, even among those teams which do not run Agile. It is a straightforward method which can be easily accepted by all project stakeholders. Especially in cost management, man-hours can be a main factor when calculating the budget. But the fixed number of hours often become the obstacles in daily work.
Story Points provide following advantages to resolve those obstacles:
1.Please be rough
As mentioned above, estimation is a rough measurement. But man-hours require a specific number which limits the performance and creativity of a developer. Because if the developer estimates too much, it will be considered as a bad estimation. But if the developer fails to commit the outcome within the estimated time, he/she will be considered as a bad performer.
While Story Points is quite rough. Commonly, Agile players use Fibonacci series: 1, 2, 3, 5, 8, 13 as the number of points. Stories with similar complexity will be grouped together by comparing them with a base story. It is no more a highly precise estimation.
With Story Points, team can easily decide the final number of a story. “If a story is large than 2 but smaller than 5, it is a 3.” They will not have to be headache to keep accurate which is too hard to achieve.
2.Warm welcome to fresh man
Man-hours always attach to ‘Man’, of course. The effort of a certain story varies so much to certain individuals. A well-experienced specialist estimates 4 hours, while a freshman may take 16 hours to finish. It is fine if the story is assigned to the specialist only and always.
Another issue often occurs to a fresh man or a junior developer is that they may not know how to long they will spend on a story as they know very little about the project or the technology.
Story Points eliminates the issue by gathering the whole team to get an equal understanding of the complexity of a story. The conclusion is a common sense to all stakeholders.
3.Continuous Improvement
Man-hours is more effort-oriented. As the estimation will be compared to time spent by the team at the end of each iteration. While Story Points is output-oriented. Not only it records the complexity and effort of the whole Sprint, it also represents the velocity of the team.
With Story Points, project stakeholders can see the improvement made by the team as they will can check the total points of each Sprint. It can be an inspiring or frustrating curve. And the develop team can also take it as the source to keep improving by raising its velocity.
Summary
Personally I strongly recommended to utilize Story Points in Agile teams. It gives a flexible and easily acceptable experience. Which one do you use in your daily work? Please share your options in comment.
Written by AnBianShuDian.