COCOMO Model

Stands for Constructive Cost Model

  • As with all estimation models, it requires sizing information and accepts it in three forms: object points, function points, and lines of source code
  • Application composition model – Used during the early stages of software engineering when the following are important
    • Prototyping of user interfaces
    • Consideration of software and system interaction
    • Assessment of performance
    • Evaluation of technology maturity
  • Early design stage model – Used once requirements have been stabilized and basic software architecture has been established
  • Post-architecture stage model – Used during the construction of the software
Organic, Semidetached and Embedded software projects
  • Organic: A development project can be considered of organic type, if the project deals with developing a well understood application program, the size of the development team is reasonably small, and the team members are experienced in developing similar types of projects
  • Semidetached: A development project can be considered of semidetached type, if the development consists of a mixture of experienced and inexperienced  staff. Team members may have limited experience on related systems but may be unfamiliar with some aspects of the system being developed.
  • Embedded: A development project is considered to be of embedded type, if the software being developed is strongly coupled to complex hardware, or if the stringent regulations on the operational procedures exist.

The basic COCOMO model gives an approximate estimate of the project parameters.

The basic COCOMO estimation model is given by following expressions:

Effort = a1 x (KLOC)^a2 PM (person Month)

Time of Development = b1 x (Effort)^b2 Months

Where, a1,a2,b1,b2 are constants for each category of software products

Estimation of Effort

Organic:  Effort = 2.4 (KLOC)^1.05 PM

Semi-detached:  Effort = 3.0 (KLOC)^1.12 PM

Embedded: Effort = 3.6 (KLOC)^ 1.20 PM

Estimation Time of Development

Organic:           Time of Development = 2.5 (Effort)^0.38  Months

Semi-detached: Time of Development = 2.5 (Effort)^ 0.35 Months

Embedded:        Time of Development = 2.5 (Effort)^ 0.32  Months

Leave a Reply