Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 30

Constructive Cost Estimation Model

• COCOMO stands for Constructive Cost Estimation


Model
• Predicts the effort and schedule for a software
development projects.
• Based upon inputs:
– Size of the software(KLOC).
– Number of cost drivers that affect productivity.
Constructive Cost Estimation Model
• COCOMO is one of the most widely used
software estimation models in the world.

• It was developed by Barry Boehm in 1981.

• COCOMO predicts the effort and schedule for a


software product development based on inputs
relating to the size of the software and a number
of cost drivers that affect productivity.
Constructive Cost Estimation Model
3 COCOMO Models :
• COCOMO has three different models that reflect
the complexity:
1. The Basic Model
2. The Intermediate Model
3. The Detailed Model
Constructive Cost Estimation Model
Barry postulated that any Software Development
Project can be classified on the development
complexity
• Three categories :
– Organic Type
– Semi-detached Type
– Embedded Type
Organic Mode

• Relatively small, simple software projects


• Small teams with good application experience
work to a set of less than rigid requirements
• Similar to the previously developed projects •
relatively small and requires little innovation
The Development Modes: Project
Characteristics
Semidetached Mode

• Intermediate (in size and complexity) software


projects in which teams with mixed experience
levels must meet a mix of rigid and less than
rigid requirements.
The Development Modes: Project
Characteristics
Embedded Mode

• Software projects that must be developed within


a set of tight hardware, software, and
operational constraints.
Some Assumptions

• Primary cost driver is the number of Delivered Source Instructions


(DSI) / Delivered Line Of Code developed by the project.

• COCOMO estimates assume that the project will enjoy good


management by both the developer and the customer

• Assumes the requirements specification is not substantially


changed after the plans and requirements phase
Constructive Cost Estimation Model

Basic COCOMO Model

• Basic COCOMO Model estimate the software


development effort using only a single predictor
variable(size in DSI) and three software
development modes.
Basic COCOMO model(Cont.d)
When Should You Use it
• Basic COCOMO is good for quick, early rough
order of magnitude estimates of software costs.
Intermediate COCOMOs
• Intermediate COCOMO Computes software
development effort as function of program size
and a set of “cost drivers” that include subjective
assessment of product, hardware personnel and
project attributes.
Detailed COCOMO
• Detailed COCOMO incorporates all
characteristics of the intermediate version with
an assessment of the cost drivers impact on each
step of the software engineering process.
COCOMO in a Coconut-shell

• E=a(KLOC )POWER(b)
• Where
o E is the Effort in staff months
o A and b are coefficients to be determined
o KLOC is thousands of lines of code
Advantages
• Based on history
• Repeatable
• Unique adjustment factors
• Has different modes.
• Works well on similar projects
• Highly Calibrated
• Well-Documented
• Easy to use
Limitations
• The accuracy of this model is limited because it does not
consider certain factors for cost estimation of software.
These factors are hardware constraints, personal
quality and experiences, modern techniques and tools.

Software
ab bb cb db
project

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



The basic COCOMO equations take the form

• Effort Applied (E) = ab(KLOC)bb


• Development Time (D) = cb(Effort Applied)db
• People required (P) = Effort Applied / Development
Time
• Example: consider a software project using semi-
detached mode with 30,000 lines of code . We will
obtain estimation for this project as follows:

• (1)Effort estimation E= aa(KLOC)Exp(bb)person-


months
• E=3.0(30)1.12
• where lines of code=30000=30 KLOC E=135 person-
month
• (2) Duration estimation

D=aa(E)Exp(bb)months =2.5(135)0.35 D=14 months

• (3)Person estimation
N=E/D =135/14 N=10 persons approx.
Cost Drivers
• Product attributes
• Hardware attributes
• Personnel attributes
• Project attributes
Cost Drivers
Product attributes
• Required software reliability
• Size of application database
• Complexity of the product
Cost Drivers
Product attributes
Cost Drivers
Hardware attributes
• Run-time performance constraints
• Memory constraints
• Volatility of the virtual machine environment
• Required turnabout time
Cost Drivers
Hardware attributes
Cost Drivers
Personnel attributes
• Analyst capability
• Software engineering capability
• Applications experience
• Virtual machine experience
• Programming language experience
Cost Drivers
Personnel attributes
Cost Drivers
Project attributes
• Use of software tools
• Application of software engineering methods
• Required development schedule
Cost Drivers
Project attributes
Thank you
By
COCOMO

You might also like