Professional Documents
Culture Documents
• There are three main parameters that you should use when
computing the costs of a software development project:
a) Effort costs (the costs of paying software engineers and
managers)
b) Hardware and software costs, including maintenance
c) Travel and training costs
Project Cost Estimation
Techniques for Cost Estimation
COCOMO/ COCOMO-II
¨ Barry Bohem introduced a hierarchy of software estimation models called
COCOMO
¨ Became one of the well-known and widely-used estimation models in the
industry
The COCOMO Model
COCOMO (COnstructive COst MOdel)
Embedded mode
• Software is required to run under tight (and strongly coupled) h/w, s/w and operational
constraints (e.g. flight control s/w for aircraft)
• Size is between 10 KDSI to 500 KDSI
• Development team has not worked together before and development environment is not
familiar to them
• Examples: ATM, Air Traffic control.
COCOMO
COCOMO Basic
• is a static, single-valued model that computes software development effort
(and cost) as a function of program size expressed in estimated lines of code
• Basic COCOMO is good for quick estimate of software costs.
• However it does not account for differences in hardware constraints,
personnel quality and experience, use of modern tools and techniques.
COCOMO Basic
• Basic equations for COCOMO
Effort (PM) = A * SizeB
Time (TDEV) = C * PMD
• Organic mode
A=2.4, B=1.05, C=2.5, D=0.38
• Semi-detached
A=3.0, B=1.12, C=2.5, D=0.35
Mode Effort Schedule
• Embedded mode
A=3.6, B=1.20, C=2.5, D=0.32 Organic E=2.4*(KDSI)
1.05
TDEV=2.5*(E)
0.38
1.05
PM=2.4 (32) = 91 PM
0.38
TDEV=2.5 (91) = 14 months
N=PM/TDEV
= 91/14 = 7
COCOMO Basic
Example2: A project size of 200 KLOC is to be developed. Software development team has average
experience on similar type of projects. The project schedule is not very tight. Calculate the Effort,
development time, average staff size, and productivity of the project.
Solution: The semidetached mode is the most appropriate mode, keeping in view the size, schedule and
experience of development time.
Hence
E=3.0(200)1.12=1133.12PM
D=2.5(1133.12) 0.35=29.3PM
P = 176 LOC/PM
COCOMO Intermediate
• The intermediate COCOMO Model includes the effect of 15 factors (cost drivers)
• Cost drivers are multiplier for nominal (minor) cost
Effort Adjusted (PM actual) = PM(nominal) x EAF (Effort Adjustment Factor)
The product of all effort multipliers results in an effort adjustment factor (EAF).
• Product attributes
• RELY : Software reliability
• DATA : Database size
• CPLX : Product Complexity
• Computer attributes
• TIME : Execution time constraints
• STOR : Main storage constraints
• VIRT : Virtual Machine volatility (instability)
• TURN : Computer turnaround time (response time)
17
COCOMO Cost Drivers
• Personnel attributes
• ACAP : Analyst Capability
• Project attributes
• MODP : Modern programming practices
19
Example-I COCOMO Intermediate
• Find the effort and the time for development of a 32KDSI software product that has very
low required reliability and which is produced by a small team.
• Productivity = KDSI / PM
• Suppose a project was estimated to be made in 400 kLOC. Let's calculate its effort,
time, and the number of people required while considering the project is of organic
type and has a normal complexity (CPLX). The developer has a high virtual
machine experience (VEXP).
• The value of the nominal complexity of a project is 1.00, and the high virtual
experience of the developer is 0.90:
21
COCOMO Detailed Model
22
Make vs. Buy Decision
• SE managers are faced with a make/ buy decision that can be further
complicated by several acquisition options:
i. Software may be purchased (or licensed) off-the-shelf
23
Make vs Buy Decision
The make/buy decision is made based on the following conditions:
(2) Will the cost of purchasing of software product plus the cost
of customization be less than the cost of developing the
software internally?
25
Decision Tree
26
Decision Tree - CALCULATION
27
Decision Tree - CALCULATION
• Following other paths of the decision tree, the projected costs for reuse,
purchase, and contract, are also shown
• The expected costs for these paths are:
Based on the probability and projected costs that have been noted in
Figure the lowest expected cost is the “buy” option.
28
Decision Tree
29
THANKS