I have estimated the cost of a product by COCOMO, then I estimated it by FP too. the results were so different from each other! The cost estimated by FP was about two times more than the estimated cost by Cocomo. which one is more reliable as this product belongs to a large project. shoud I skip the FP result?


In general I would trust FP over Cocomo. Cocomo offers a lot of "twiddle factors", and in general people tend to twiddle twiddle factors in a way that gives them the answers that they want to hear.

Even were that not true, when it comes to a large project I would almost always pick the larger number on general principle. And then double it. Large software projects have a very strong tendency to overrun both schedule and budget. And not by small factors. I remember one study that looked at projects which were projected cost more than $1 million. Of those that completed, on average at delivery they took more than twice as long as what was scheduled, cost more than twice what was estimated, and were delivered with less than half the originally specified features. And those were the successes - a substantial fraction never got delivered at all.

There are many, many reasons for that. Read Software Estimation for an excellent description, and details on how to do better.


COCOMO and FP gave different answers because the problem you want to solve is essentially one of those "undecidable" problems. See:

  1. Large Limits to Software Estimation
  2. Mathematical Limits to Software Estimation

If Function Points gave you the biggest answer, my personal feeling is you should use that. The big problem in software estimation is very rarely overestimation, it's almost always under estimation of the time.


Refer to the works of Steve McConnell over at Construx.

I always estimate by multiple methods, when things are out by large amounts, something is very wrong. You need to review your methods, requirements and estimates, not to make them the same, but to understand why they are different.

At the outset of a project, and factor of 2 is fairly typical, I would double the highest and add a bit, then refine the estimate once the high risk items had been derisked.

Not the answer you're looking for? Browse other questions tagged or ask your own question.