Why are software development task estimations regularly off by a factor of 2-3?
"Is it the developer's fault? Is it a management issue? Bad methodology, or lack thereof? Or is it ingrained in the nature of the process..."
"...Software development is often described as "just in time." Or the notion that you are always learning something new to tackle your next task. So for even the best and most experienced developers unforseen hurdles and bugs will occur. Proper estimation should take into account some buffer for these things, but particularly nasty or hairy bugs can bloat development time..."
"...For example, managers should not force developers to reduce their estimates otherwise developers can feel a lot of pressure to give more optimistic estimates. Managers should also try to not change the scope of the task while the developer is already working on it. Also, checking the progress too often or otherwise interrupting developers can significantly reduce their focus and productivity..."
"...Developers are also the only group where they are asked to do something which has never been done before, and tell someone else how long it will take before they even know what actually needs to be done..."
"...Software development estimates can not reliably estimate the effort of doing something for the first time. Additionally, software estimates, that you wish to rely on, should not be done till after a prototype that implements the known unknowns is built..."
http://www.quora.com/Why-are-software-development-task-estimations-regularly-off-by-a-factor-of-2-3
