0% found this document useful (0 votes)
118 views5 pages

Software Engineering - COCOMO Model

The COCOMO model is used to estimate software development effort, cost, and schedule. It is a regression model based on lines of code. There are three versions - basic, intermediate, and detailed. The basic model uses lines of code and type of project to estimate effort and schedule. The intermediate model adds 15 cost drivers related to product, hardware, personnel, and project attributes. These drivers adjust the effort calculation. The detailed model further divides the project into phases and applies the cost drivers to each phase.

Uploaded by

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

Software Engineering - COCOMO Model

The COCOMO model is used to estimate software development effort, cost, and schedule. It is a regression model based on lines of code. There are three versions - basic, intermediate, and detailed. The basic model uses lines of code and type of project to estimate effort and schedule. The intermediate model adds 15 cost drivers related to product, hardware, personnel, and project attributes. These drivers adjust the effort calculation. The detailed model further divides the project into phases and applies the cost drivers to each phase.

Uploaded by

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

Software Engineering | COCOMO Model

Cocomo (Constructive Cost Model) is a regression model based on LOC, i.e number of Lines of
Code. It is a procedural cost estimate model for software projects and 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 1970 and is based on the study of 63 projects,
which make it one of the best-documented models.
The key parameters which define the quality of any software products, which are also an outcome of
the Cocomo are primarily Effort & Schedule:
• Effort: Amount of labor that will be required to complete a task. It is measured in person-months
units.
• Schedule: Simply means the amount of time required for the completion of the job, which is, of
course, proportional to the effort put. It is measured in the units of time such as weeks, months.
Different models of Cocomo have been proposed to predict the cost estimation at different levels,
based on the amount of accuracy and correctness required. All of these models can be applied to a
variety of projects, whose characteristics determine the value of constant to be used in subsequent
calculations. These characteristics pertaining to different system types are mentioned below.
Boehm’s definition of organic, semidetached, and embedded systems:
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, knowledge of the various programming environment lie in between
that of 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 and
better guidance and creativity. Eg: Compilers or different Embedded Systems can be considered of
Semi-Detached type.
3. Embedded – A software project with requiring the highest level of complexity, creativity, and
experience requirement fall 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.
All the above system types utilize different values of the constants used in Effort Calculations.

Types of Models: COCOMO consists of a hierarchy of three increasingly detailed and accurate forms.
Any of the three forms can be adopted according to our requirements. These are types of COCOMO
model:
1. Basic COCOMO Model
2. Intermediate COCOMO Model
3. Detailed COCOMO Model
The first level, Basic COCOMO can be used for quick and slightly rough calculations of Software
Costs. Its accuracy is somewhat restricted due to the absence of sufficient factor considerations.
Intermediate COCOMO takes these Cost Drivers into account and Detailed COCOMO additionally
accounts for the influence of individual project phases, i.e in case of Detailed it accounts for both these
cost drivers and also calculations are performed phase wise henceforth producing a more accurate
result. These two models are further discussed below.
Estimation of Effort: Calculations –
1. Basic Model –

Effort = a(KLOC)b

Time= c(effort)d

Person required= Effort/Time

The above formula is used for the cost estimation of for the basic COCOMO model, and also is used
in the subsequent models. The constant values a,b,c and d for the Basic Model for the different
categories of system:

Software Projects a b c d

Organic 2.4 1.05 2.5 0.38

Semi Detached 3.0 1.12 2.5 0.35

Embedded 3.6 1.20 2.5 0.32


The effort is measured in Person-Months and as evident from the formula is dependent on Kilo-Lines of
code.
The development time is measured in Months.
These formulas are used as such in the Basic Model calculations, as not much consideration of
different factors such as reliability, expertise is taken into account, henceforth the estimate is rough.

Intermediate 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 system. However, in reality, no system’s
effort and schedule can be solely calculated on the basis of Lines of Code. For that, various other
factors such as reliability, experience, Capability. These factors are known as Cost Drivers and the
Intermediate Model utilizes 15 such drivers for cost estimation.
Classification of Cost Drivers and their attributes:
(i) Product attributes –
• Required software reliability extent
• Size of the application database
• The complexity of the product
(ii) Hardware attributes –
• Run-time performance constraints
• Memory constraints
• The volatility of the virtual machine environment
• Required turnabout time
(iii) Personnel attributes –
• Analyst capability
• Software engineering capability
• Applications experience
• Virtual machine experience
• Programming language experience
(iv) Project attributes –
• Use of software tools
• Application of software engineering methods
• Required development schedule

1.

Very Nominal Very


Cost Drivers Low Low ; High High
Product Attributes

Required Software Reliability 0.75 0.88 1.00 1.15 1.40

Size of Application Database 0.94 1.00 1.08 1.16

Complexity of The Product 0.70 0.85 1.00 1.15 1.30

Hardware Attributes

Runtime Performance Constraints 1.00 1.11 1.30

Memory Constraints 1.00 1.06 1.21

Volatility of the virtual machine


environment 0.87 1.00 1.15 1.30

Required turnabout time 0.94 1.00 1.07 1.15

Personnel attributes

Analyst capability 1.46 1.19 1.00 0.86 0.71

Applications experience 1.29 1.13 1.00 0.91 0.82

Software engineer capability 1.42 1.17 1.00 0.86 0.70


Very Nominal Very
Cost Drivers Low Low ; High High
Virtual machine experience 1.21 1.10 1.00 0.90

Programming language experience 1.14 1.07 1.00 0.95

Project Attributes

Application of software engineering


methods 1.24 1.10 1.00 0.91 0.82

Use of software tools 1.24 1.10 1.00 0.91 0.83

Required development schedule 1.23 1.08 1.00 1.04 1.10


2. The project manager is to rate these 15 different parameters for a particular project on a scale of
one to three. Then, depending on these ratings, appropriate cost driver values are taken from the
above table. These 15 values are then multiplied to calculate the EAF (Effort Adjustment Factor).
The Intermediate COCOMO formula now takes the form:

E=(a(KLOC)b)*EAF

3. The values of a and b in case of the intermediate model are as follows:

Software Projects a b
Organic 3.2 1.05

Semi Detached 3.0 1.12

Embeddedc 2.8 1.20


4. Detailed Model –
Detailed COCOMO incorporates all characteristics of the intermediate version with an assessment
of the cost driver’s impact on each step of the software engineering process. The detailed model
uses different effort multipliers for each cost driver attribute. In detailed cocomo, the whole software
is divided into different modules and then we apply COCOMO in different modules to estimate effort
and then sum the effort.
The Six phases of detailed COCOMO are:
1. Planning and requirements
2. System design
3. Detailed design
4. Module code and test
5. Integration and test
6. Cost Constructive model
The effort is calculated as a function of program size and a set of cost drivers are given according to
each phase of the software lifecycle.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy