My recipe for effective task estimation
In my experience as software engineer, I've been mostly working by planning in pretty much static time periods, most commonly 2 weeks. Planning for these "sprints" meant deciding on the tasks we were going to work on and get done in the following 2 weeks.
At some point, teams ended up estimating the tasks, giving them some kind of size, in order to improve the confidence in their plans. Most of the time, we did it using Story Points, with a Fibonacci Sequence, of 1, 2, 3, 5, 8, 13 or 21 Story Points.
But while this was a common practice in the teams I worked in, not always we did use these effectively. Not only that, I saw teams dismissing the importance of a good estimation in moving with confidence into a new "sprint".
Below I'm collecting a script for estimation meetings that has worked for me over the years. Keep reading after for some pitfalls that I witnessed affecting the quality of the estimations.
Disclaimers:
Estimations' meeting script
First of all, make sure you have a list of tasks to be estimated. Go from the top to the bottom of the backlog, in order.
Second, make sure it's clear to everyone what a 1 Story Point task looks like. Examples are often useful.
In my experience, these meetings were some of the most relevant for our day-to-day engineering work.
Team dynamics will also be very much in display here. As a leader, there are great opportunities here for you to shape them.
Common Pitfalls in Software Task Estimations
If you’re already conducting estimation meetings, the script above might offer ideas on improving them. However, beware of the common pitfalls below that often lead teams astray.
Misunderstanding the Purpose of Estimations
Estimates should help uncover complexity and increase confidence in planning, not just produce a number. Some common pitfalls here include:
领英推荐
Poor Execution of Estimation Meetings
Even when teams understand the purpose, execution mistakes can still cause problems:
Estimating the Wrong Things at the Wrong Time
Knowing when and when not to estimate is crucial:
Issues with Story Points and Complexity
Story Points should be treated as categories of complexity, not as exact numerical values:
A piece in a larger process
Estimations are a part in a bigger process and can affect the quality of the downstream activities. It's equally important to keep in mind how the activities earlier relate to the estimations and influence their quality.
Estimations can be affected by the level of uncertainty a team is comfortable with; how much ahead from development the product and design goes; how much experience a team has in a certain tech stack or domain; etc
These estimations may also influence external commitments; they may feed some capacity planning or output KPI; they may be part of a larger process where engineers review their agreement on what a 1 Story Point task is; etc
Also: some teams don't do estimations at all, and instead prefer to measure throughput of very small tasks.
The goal is continuous improvement. Whether estimations are a tool to improve planning, measure output or identify knowledge gaps, go ahead and set your goal, apply some changes, measure impact and keep repeating until you like the outcome.
Lead Designer | UX Product AI
3 周My recipe for effective task estimation: 1. Make your estimate 2. Double it 3. Add 20% That'll get you in the ballpark
Head of Developer Relations @ Rely.io | ex-PagerDuty | ex-AWS | ex-Microsoft | Speaker | Meetup founder | Open Source contributor and maintainer | Podcast and livestream host
3 周Congrats for the detailed guide. This is great for any software engineering team. A few years ago while I was managing a team this was one of our major pains. I decided to experiment #noestimates and it worked out for us. It required us to transform the way we worked and planned but it was effective and allowed developers to spend more time on the building the product.
VP of Engineering ? Sharing my journey from developer to director ? Follow for daily tips
3 周No one loves this but it must be done. Thanks for sharing your experience, great read