Several software cost models are in use today. One popular, open, and well-docu-mented software cost model is the Constructive COst MOdel (COCOMO) developed by Barry Boehm. The evolution of COCOMO provides an interesting window for observing the evolution of software engineering economics over the past 20 years.
The COCOMO estimating equations follow this simple form:
Effort = CI EAF (Size)pi
Time = C2 (Effort)P2
▲ The history of the COCOMO model provides insight into the evolution of software economics priorities.
A The original COCOMO model was well suited for conventional software project cost estimation in the 1980s.
▲ Ada COCOMO improved on the original version, particularly through a parameterized exponent that reflected modern process improvements and their impact on economies of scale.
▲ COCOMO II is better suited for estimating modern software development projects. It provides more natural support to modern processes and technologies and a more up-to-date basis of project experience.
Effort = number of staff-months
Cl = a constant scaling coefficient for effort EAF = an effort adjustment factor that characterizes the domain, personnel, environment, and tools used to produce the artifacts of the process
Size = size of the end product (in human-generated source code), measured by the number of delivered source instructions (DSI) required to develop the required functionality
PI = an exponent that characterizes the economies of scale inherent in the process used to produce the end product, in particular the ability of the process to avoid non-value-adding activities (rework, bureaucratic delays, communications overhead) Time = total number of months C2 = a constant scaling coefficient for schedule
P2 = an exponent that characterizes the inherent inertia and parallelism in managing a software development effort
Was this article helpful?
What you need to know about… Project Management Made Easy! Project management consists of more than just a large building project and can encompass small projects as well. No matter what the size of your project, you need to have some sort of project management. How you manage your project has everything to do with its outcome.