The COCOMO model, developed by Barry Boehm in 1981, is a widely used software cost estimation framework that categorizes projects into three classes: organic, semi-detached, and embedded, based on team experience and complexity. It includes different stages such as basic, intermediate, and detailed models that refine cost estimates using lines of code and various cost drivers. The model helps estimate effort, development time, and team size required for software projects.
COCOMO
• COCOMO (ConstructiveCost Model) is an software cost estimation model
developed by Barry Boehm in 1981 and is based on the study of 63 projects,
which make it one of the best-documented models.
• The COCOMO model is partially based on evaluating projects by size or lines of
code.
• COCOMO provides a helpful framework to try to determine the cost and scope of
a software project.
Classes OF COCOMO
Adevelopment project can be treated of the 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 methods of projects.
Examples of this type of projects are simple business systems, simple
inventory management systems, and data processing systems.
1.Organic Projects
9.
Classes OF COCOMO
Adevelopment project can be treated with semidetached type if the
development consists of a mixture of experienced and inexperienced staff.
Team members may have finite experience in related systems but may be
unfamiliar with some aspects of the order being developed.
Example of Semidetached system includes developing a new operating
system (OS), a Database Management System (DBMS), and complex
inventory management system
2.Semi-detached Project
10.
Classes OF COCOMO
Adevelopment project is treated to be of an embedded type, if the software
being developed is strongly coupled to complex hardware
For Example: ATM, Air Traffic control.
3.Embedded Projects
Stages OF COCOMO
Thebasic COCOMO model provide an approximate estimate of the project
parameters.
• Efforts
• Development time
• People requires
Software development effort is estimate using LOC(Lines of code)
Effort = E =a1*(KLOC) ^a2 PM
Development Time = D = b1*(efforts)^b2 Months
People Required = P = E/D
1.Basic COCOMO
Stages OF COCOMO
Estimationof 50 KLOC for an organic project
PM = 2.4 (50)^1.05 ~= 146 mm
TDEV = 2.5 (146)^0.38 ~= 16 month
Team = 146 / 16 ~= 9 person
1.Basic COCOMO Example
16.
Stages OF COCOMO
Theintermediate COCOMO model refines the initial estimates obtained
through the basic COCOMO model by using a set of 15 cost drivers based on
various attributes of software engineering.
• Product attributes
• Hardware attributes
• Personnel attributes
• Project attributes
E=a1 (KLOC) a2*EAF
D=b1 (E)db2
EAF = Effort Adjustment Factor derived from the Cost Drivers
2.Intermediate Projects
Stages OF COCOMO
Indetailed COCOMO, the whole software is differentiated into multiple
modules, and then we apply COCOMO in various modules to estimate effort
and then sum the effort.
The Six phases of detailed COCOMO are:
• Planning and requirements
• System structure
• Complete structure
• Module code and test
• Integration and test
• Cost Constructive model
3.Detailed COCOMO