4 ms·
The first thing to keep in mind is that reasonable accuracy might never be achieved because of the nature of the problem. Social causes and bad process contribu
by agarbayo 8y ago
The first thing to keep in mind is that reasonable accuracy might never be achieved because of the nature of the problem. Social causes and bad process contribute to bad estimates.
It’s not only the difficulty of guessing the unknown.
Biases, guesses taken as deadlines and stakeholders trying to influence the estimation results contribute to worsening the problem.
This article https://www.infoq.com/articles/software-development-effort-estimation https://www.infoq.com/articles/software-development-effort-e... written by a researcher at Simula Research Laboratory is one of the best summaries on the estate of software estimation.
Simula has excellent research on estimation. I found particularly interesting the different biases that might affect us: the scale used, how the question is asked (introduces an anchor to your estimate), the size of the task estimated previously, etc.
However, we can improve on gut feeling estimates and training on a personal level can reduce the uncertainty.
A few highlights:
- On a team level, planning poker is known to improve estimates.
- Checklists (common forgotten activities) and historical data (% of time spent on unplanned or project management) tailored to your current project improve estimates.
- Avoid early estimation based on incomplete data. Avoid exposure to irrelevant, misleading estimation information.
- Break specs in tasks and estimate those tasks. Keep
historical data on your estimates and final times and review them periodically. Automated time tracking tools for developers like https://www.codermirror.com/ https://www.codermirror.com/ can help in removing the burden of tracking coding times.