The COCOMO (COnstructive COst MOdel) Cost Estimation Model, developed by BarryBoehm at USC. Not to be confused with the place, or the song, or breed of Canadian snow monkey...
The COCOMO estimating equations follow the form:
Effort = C1.EAF.(Size)^P1 Time = C2.(Effort)^P2where
For more info, try http://sunset.usc.edu/research/COCOMOII/index.html, which has pointers to books, software and other resources.
Whew. Does anyone actually use this or any other sophisticated estimation technique with any success? Does COCOMO have value in ExtremeProgramming? Does it make a mean jerk chicken?
Is it sophisticated? The whole method has been adequately described here in less than a browser page of text. -- ChrisSteinbach
Applying the model requires very little sophistication. Working out the various constants in those two equations for this team, working on that problem in this environment here, is something else again. A big part of the COCOMO literature exists to suggest ways to find good values for those constants without the use of a time machine.
Notice that even with those constants, COCOMO is of no use to you unless you also already know how many LinesOfCode you're going to have to write. The main input is not the size of the problem, it's the size of the solution (that you haven't started on yet).
To elaborate on the method further, COCOMO lumps a whole lot of stuff into the EAF parameter. It consists of the following parameters...
Accurate estimation by COCOMO then appears to rely on having a good knowledge of the workings of your software factory by analysing a sufficient number of previous projects. By which time you can probably estimate well enough without COCOMO anyway. But I'm open to persuasion otherwise. -- Andrew Joyner, Dennis Angle