This is a follow-up to the initial article on Software Effort Estimation. We had an interesting feedback from one of our readers in the IT Software Services Industry. The statement was
Why do different organizations come up with varied estimates when submitting proposals for the same scope of work?
There can be several reasons why this can happen.
How well is the scope defined in the Request For Proposal (RFP) or equivalent document that was made available? Is this detailed enough to ensure that several assumptions are not to be made? Assumptions, especially wrong assumptions, can be the mother of all f***ups.
How experienced is the team that is working on putting together the effort estimates?
Have they done similar sizing exercises in the past?
Do they have good understanding of both the domain and the technology? Do note that we don’t expect one individual to do this exercise. As a team, we need to ensure all the bases are covered.
The estimates could also vary depending on the proposed team that would be working on the project. Having experienced members may result in the numbers being lower.
Human biases. This plays an important role too. Certain individuals, who when given any proposal, may very often come up with aggressive (but plausible) estimates compared to their colleagues. And the other way as well.
Confidence (or the lack thereof)
Organizations may try to play it safe, especially in fixed-bid contracts, by ensuring adequate “buffers” have been added to the estimates. If the buffers are large, this could be due to their lack of confidence in the effort estimates that have been put together; this in turn points to the fact that they don’t understand the scope of work.
Most software projects would add buffers to cover for the assumptions that were made. This needs to be a reasonable amount. Buffers are typically a “percentage” of the overall estimate. Buffers up to 20%-25% isn’t a surprise.
Software Effort Estimation after all is an estimate. It isn’t a hard and fast mathematical model that would result in exactly the same estimate by all. What is important is to ensure that there is a feedback loop to ensure learnings from each project is captured and put to practical use for subsequent projects.
Do share your thoughts on this. I am certain there would be several other aspects that would result in estimates varying significantly.
Update #1 – 5th May 2020. Incorporated feedback from Nitin K (comment below).
Image Credit: Image