Software Cost Estimation and Cocomo Ii
Software Cost Estimation and Cocomo Ii
and COCOMO II
❚ Systems Engineering
Research Institute
(SERI), Taejon, Korea
❚ December 29, 1997
What is COCOMO?
❚ 1. Establish Objectives
* Rough Sizing
* Make-or-Buy
* Detailed Planning
❚ 2. Allocate enough time, dollars, talent
❚ 3. Pin down software requirements
* Document definitions, assumptions
❚ 4. Work out as much as detail as objectives permit
Steps in Software
Estimation
MM = MMNOM x Π(EM)
KEDSI = thousands of equivalent delivered source
instructions
Software Productivity
Range
1.20 Language experience
Relative 1.25x
+
Size +
x +
Range + +
+
+
+
+
0.5x
Product Detail
Concept of Rqts. Design Design Accepted
0.25x Spec. Spec.
Operation Spec. Software
❚ Algorithmic Model
❚ Expert Judgment
❚ Analogy
❚ Parkinson
❚ Price-To-Win
❚ Top-Down
❚ Bottom-Up
Software Cost Estimation
Method -Algorithmic Model
❚ COCOMO II
Strengths Weaknesses
❚ Objective, repeatable, ❚ Subjective inputs
analyzable formula ❚ Assessment of
❚ Efficient, good for exceptional
sensitivity analysis circumstances
❚ Objectively calibrated ❚ Calibrated to past,
to experience not future
Software Cost Estimation
Method - Expert Judgment
Strengths Weaknesses
❚ Assessment of ❚ No better than
representativeness, participants
interactions, ❚ Biases, incomplete
exceptional recall
circumstances
Software Cost Estimation
Method - Analogy
Strengths Weaknesses
❚ Based on ❚ Representativeness of
representative experience
experience
Software Cost Estimation
Method - Parkinson
Strengths Weakness
❚ Correlates with some ❚ Reinforces poor
experience practice
Software Cost Estimation
Method - Price-To-Win
Strengths Weakness
❚ Often wins ❚ Generally produces
large overruns
Software Cost Estimation
Method - Top-Down
Strengths Weakness
❚ System level focus ❚ Less detailed basis
efficient ❚ Less stable
Software Cost Estimation
Method - Bottom-Up
Strengths Weakness
❚ More detailed basis ❚ May overlook system
❚ More stable level costs
❚ Fosters individual ❚ Requires more effort
commitment
COCOMO Black Box Model
COCOMO recalibrated
to organization’s data
COCOMO II Objectives
User programming
(55M performers in US in year 2005)
Application Application System
generators composition integration
(0.6M) (0.7M) (0.7M)
Infrastructure
(0.75M)
COCOMO 2.0 Coverage of
Future SW Practices Sectors
❚ Effort:
= A×(Size)(SF) × ∏EM
PM
estimated
i i
❚ Size
- KSLOC (Thousands of Source Lines of Code)
- UFP (Unadjusted Function Points)
- EKSLOC (Equivalent KSLOC) used for adaptation
❚ SF: Scale Factors (5)
❚ EM: Effort Multipliers (7 for ED, 17 for PA)
Scale Factors
• Precedentedness (PREC)
• Development flexibility (FLEX)
• Architecture/risk resolution (RESL)
• Team cohesion (TEAM)
• Process maturity(PMAT)
Post-Architecture EMs
W(i) Very Low Low Nominal High Very High Extra High
Precedentedness 4.05 3.24 2.43 1.62 0.81 0.00
Development Flexibility 6.07 4.86 3.64 2.43 1.21 0.00
Architecture / Risk 4.22 3.38 2.53 1.69 0.84 0.00
Resolution
Team Cohesion 4.94 3.95 2.97 1.98 0.99 0.00
Process Maturity 4.54 3.64 2.73 1.82 0.91 0.00
Cost Drivers
Cost Rating
Very Low Low Nominal High Very High Extra High
RELY 0.75 0.88 1.00 1.15 1.39
DATA 0.93 1.00 1.09 1.19
CPLX 0.75 0.88 1.00 1.15 1.30 1.66
RUSE 0.91 1.00 1.14 1.29 1.49
DOCU 0.89 0.95 1.00 1.06 1.13
TIME 1.00 1.11 1.31 1.67
STOR 1.00 1.06 1.21 1.57
PVOL 0.87 1.00 1.15 1.30
ACAP 1.50 1.22 1.00 0.83 0.67
PCAP 1.37 1.16 1.00 0.87 0.74
PCON 1.24 1.10 1.00 0.92 0.84
AEXP 1.22 1.10 1.00 0.89 0.81
PEXP 1.25 1.12 1.00 0.88 0.81
LTEX 1.22 1.10 1.00 0.91 0.84
TOOL 1.24 1.12 1.00 0.86 0.72
SITE 1.25 1.10 1.00 0.92 0.84 0.78
SCED 1.29 1.10 1.00 1.00 1.00
Example - RELY
1.30
1.20
.80
.70
Size
❚ 1. SLOC
❚ 2. Function points
- when little is known for SLOC estimation
- function point quantify the amount of
functionality in a software project
❚ 3. Adaptation
- reuse model
COCOMO Reuse Model
❚ E-mail: [email protected],
[email protected]
❚ URL:
http://sunset.usc.edu/COCOMOII/Cocomo.html
❚ Textbook: Barry Boehm, Software
Engineering Economics, Prentice-Hall,
1981
COCOMO Glossary