0% found this document useful (0 votes)
96 views6 pages

Cocomo Model Enotes

The COCOMO Model is a procedural cost estimation model for software projects that predicts parameters such as effort, cost, time, and quality, proposed by Barry Boehm in 1981. It categorizes projects into three types: Organic, Semi-detached, and Embedded, each varying in complexity and required team experience. The model also includes Basic, Intermediate, and Detailed versions, offering systematic approaches for estimating project costs and efforts, while highlighting its advantages and disadvantages.

Uploaded by

harinadhpalli.ai
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
96 views6 pages

Cocomo Model Enotes

The COCOMO Model is a procedural cost estimation model for software projects that predicts parameters such as effort, cost, time, and quality, proposed by Barry Boehm in 1981. It categorizes projects into three types: Organic, Semi-detached, and Embedded, each varying in complexity and required team experience. The model also includes Basic, Intermediate, and Detailed versions, offering systematic approaches for estimating project costs and efforts, while highlighting its advantages and disadvantages.

Uploaded by

harinadhpalli.ai
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

COCOMO Model

What is COCOMO model?


The COCOMO Model is a procedural cost estimate model for software projects and is often used as a
process of reliably predicting the various parameters associated with making a project such as size,
effort, cost, time, and quality. It was proposed by Barry Boehm in 1981
The key parameters that define the quality of any software product, which are also an outcome of
COCOMO, are primarily effort and schedule:
1. Effort: Amount of labor that will be required to complete a task. It is measured in person-
months units.
2. Schedule: This simply means the amount of time required for the completion of the job,
which is, of course, proportional to the effort put in. It is measured in the units of time such as
weeks, and months.
Types of Projects in the COCOMO Model
In the COCOMO model, software projects are categorized into three types based on their
complexity, size, and the development environment. These types are:
1. Organic: A software project is said to be an organic type if the team size required is
adequately small, the problem is well understood and has been solved in the past and also the
team members have a nominal experience regarding the problem.
2. Semi-detached: A software project is said to be a Semi-detached type if the vital
characteristics such as team size, experience, and knowledge of the various programming
environments lie in between organic and embedded. The projects classified as Semi-Detached
are comparatively less familiar and difficult to develop compared to the organic ones and
require more experience better guidance and creativity. Eg: Compilers or different Embedded
Systems can be considered Semi-Detached types.
3. Embedded: A software project requiring the highest level of complexity, creativity, and
experience requirement falls under this category. Such software requires a larger team size
than the other two models and also the developers need to be sufficiently experienced and
creative to develop such complex models.

Importance of the COCOMO Model


1. Cost Estimation: To help with resource planning and project budgeting, COCOMO offers a
methodical approach to software development cost estimation.
2. Resource Management: By taking team experience, project size, and complexity into
account, the model helps with efficient resource allocation.
3. Project Planning: COCOMO assists in developing practical project plans that include
attainable objectives, due dates, and benchmarks.
4. Risk management: Early in the development process, COCOMO assists in identifying and
mitigating potential hazards by including risk elements.
5. Support for Decisions: During project planning, the model provides a quantitative
foundation for choices about scope, priorities, and resource allocation.
6. Benchmarking: To compare and assess various software development projects to industry
standards, COCOMO offers a benchmark.
7. Resource Optimization: The model helps to maximize the use of resources, which raises
productivity and lowers costs.

Comparison of these three types of Projects in


COCOMO Model
Aspects Organic Semidetached Embedded

Project 300 and above


2 to 50 KLOC 50-300 KLOC
Size KLOC

Complexit
Low Medium High
y

Mixed
Some experienced
Highly experience,
Team as well as
experienced includes
inexperienced staff
Experience experts

Flexible, Somewhat flexible, Highly


Environme fewer moderate rigorous, strict
nt constraints constraints requirements

Effort E= E=
E = 3.0(400)1.12
Equation 2.4(400)1.05 3.6(400)1.20

Simple New system


Flight control
payroll interfacing with
software
Example system existing systems

Types of COCOMO Model


There are three types of COCOMO Model:
 Basic COCOMO Model
 Intermediate COCOMO Model
 Detailed COCOMO Model
1. Basic COCOMO Model
• The Basic COCOMO model is a straightforward way to estimate the effort
needed for a software development project. It uses a simple mathematical
formula to predict how many person-months of work are required based on the
size of the project, measured in thousands of lines of code (KLOC).
•It estimates effort and time required for development using the following
expression:
E = a*(KLOC)b PM
Tdev = c*(E)d
Person required = Effort/ Time
Where,
E is effort applied in Person-Months
KLOC is the estimated size of the software product indicate in Kilo Lines of Code
Tdev is the development time in months
a, b, c are constants determined by the category of software project given in
below table.
The constant values a, b, c, and d for the Basic Model for the different categories
of the software projects are:

Software
Projects a b c d

Organic 2.4 1.05 2.5 0.38

Semi-
3.0 1.12 2.5 0.35
Detached

Embedded 3.6 1.20 2.5 0.32

Example of Basic COCOMO Model


Suppose that a Basic project was estimated to be 400 KLOC (kilo lines of code).
Calculate effort and time for each of the three modes of development. All the
constants value provided in the following table:
Solution
From the above table we take the value of constant a,b,c and d.
1. For organic mode,
 effort = 2.4 × (400)1.05 ≈ 1295 person-month.
 dev. time = 2.5 × (1295)0.38 ≈ 38 months.
2. For semi-detach mode,
 effort = 3 × (400)1.12 ≈ 2462 person-month.
 dev. time = 2.5 × (2462)0.35 ≈ 38 months.
3. For Embedded mode,
 effort = 3.6 × (400)1.20 ≈ 4772 person-month.
 dev. time = 2.5 × (4772)0.32 ≈ 38 months.
2. Intermediate COCOMO Model
The basic COCOMO model assumes that the effort is only a function of the
number of lines of code and some constants evaluated according to the different
software systems. However, in reality, no system’s effort and schedule can be
solely calculated based on Lines of Code. For that, various other factors such as
reliability, experience, and Capability. These factors are known as Cost Drivers
(multipliers) and the Intermediate Model utilizes 15 such drivers for cost
estimation.
Classification of Cost Drivers and their Attributes:
The cost drivers are divided into four categories
Product attributes:
 Required software reliability extent
 Size of the application database
 The complexity of the product
Hardware attributes
 Run-time performance constraints
 Memory constraints
 The volatility of the virtual machine environment
 Required turnabout time
Personal attributes
 Analyst capability
 Software engineering capability
 Application experience
 Virtual machine experience
 Programming language experience
Project attributes
 Use of software tools
 Application of software engineering methods
 Required development schedule
Each of the 15 such attributes can be rated on a six-point scale ranging from
“very low” to “extra high” in their relative order of importance. Each attribute
has an effort multiplier fixed as per the rating. Table give below represents Cost
Drivers and their respective rating:
he Effort Adjustment Factor (EAF) is determined by multiplying the effort
multipliers associated with each of the 15 attributes
E = a*(KLOC)b * EAF PM
Tdev = c*(E)d
Where,
 E is effort applied in Person-Months
 KLOC is the estimated size of the software product indicate in Kilo Lines of
Code
 EAF is the Effort Adjustment Factor (EAF) is a multiplier used to refine the
effort estimate obtained from the basic COCOMO model.
 Tdev is the development time in months
 a, b, c are constants determined by the category of software project given
in below table.

The constant values a, b, c, and d for the Basic Model for the
different categories of the software projects are:
Software
Projects a b c d

Organic 3.2 1.05 2.5 0.38

Semi-
3.0 1.12 2.5 0.35
Detached

Embedded 2.8 1.20 2.5 0.32

3. Detailed COCOMO Model


Detailed COCOMO goes beyond Basic and Intermediate COCOMO by diving
deeper into project-specific factors. It considers a wider range of parameters, like
team experience, development practices, and software complexity. By analysing
these factors in more detail, Detailed COCOMO provides a highly accurate
estimation of effort, time, and cost for software projects. It’s like zooming in on a
project’s unique characteristics to get a clearer picture of what it will take to
complete it successfully.
Advantages of the COCOMO Model
1. Systematic cost estimation: Provides a systematic way to estimate the
cost and effort of a software project.
2. Helps to estimate cost and effort: This can be used to estimate the
cost and effort of a software project at different stages of the development
process.
3. Helps in high-impact factors: Helps in identifying the factors that have
the greatest impact on the cost and effort of a software project.
4. Helps to evaluate the feasibility of a project: This can be used to
evaluate the feasibility of a software project by estimating the cost and
effort required to complete it.
Disadvantages of the COCOMO Model
1. Assumes project size as the main factor: Assumes that the size of the
software is the main factor that determines the cost and effort of a
software project, which may not always be the case.
2. Does not count development team-specific characteristics: Does
not consider the specific characteristics of the development team, which
can have a significant impact on the cost and effort of a software project.
3. Not enough precise cost and effort estimate: This does not provide a
precise estimate of the cost and effort of a software project, as it is based
on assumptions and averages.

Problems:
A company needs to develop digital signal processing software for one of its
newest inventions. The software is expected to have 20000 lines of code. The
company needs to determine the effort in person-months needed to develop this
software using the basic COCOMO model. The multiplicative factor for this model
is given as 2.2 for the software development on embedded systems, while the
exponentiation factor is given as 1.50. What is the estimated effort in person-
months?

You might also like