You are on page 1of 11

Cocomo 81 Basic & Intermediate Calculations

Basic: Effort in staff months = C1b * (DSI)^P1


Intermediate: Effort in staff months = C1i * EAF * (DSI)^P1
Basic and Intermediate: Time in months = C2 * (Effort)^P2

Fixed per model type: C1: Scaling coefficient for effort


Fixed per model type: C2: Scaling coefficient for schedule
Input + Calculation: EAF: Effort Adjustment Factor; 15 parameters. Calculated herein.
Fixed per model type: P1: characterization of economies of scale: ability to avoid rework, bureaucracy, communications overhead.
Fixed per model type: P2: characterization of inherent inertia and parallelism.
Input: DSI: Delivered Source Instructions. Input by user herein.

Key: User Selection or input in this color


Calculated value in this color

1. Determine the Effort Adjustment Factor (EAF):


RELY 0.88 Required Reliability: Low
DATA 1.08 D:Database size in bytes: 15,000,000 bytes
CPLX 0.8875 Complexity is assessed as the subjective average of four types of control functions: control, computation, device-dependent, or data management operations.
TIME 1 Execution time constrint Low
STOR 1.21 Main Storage Constraint VeryHigh
VIRT 1 Virtual Machine Volatility Nominal
TURN 0.87 Computer Turnaround Time VeryLow
ACAP 1.46 Analyst Capability VeryLow
AEXP 1.29 Applications Experience VeryLow
PCAP 1.42 Programmer Capability VeryLow
VEXP 1.21 Virtual Machine Experience VeryLow
LEXP 1.14 Programming Lang. Experience VeryLow
MODP 1.24 Use of Modern Programming Practices VeryLow
TOOL 1.24 Use of Software Tools VeryLow
SCED 1.23 Schedule Constraint VeryLow
Value list for factors:
Attribute Chosen
Section IDENTIFIER Effort Adjustment Factor (name) VeryLow Low Nominal High VeryHigh ExtraHigh Value
Product RELY Required reliability 0.75 0.88 1 1.15 1.4 1.4 0.88
Product DATA Database size 0.94 0.94 1 1.08 1.16 1.16 1.08
Product CPLX Product complexity: control ops 0.7 0.85 1 1.15 1.3 1.65 0.85
Product complexity: comp ops 0.7 0.85 1 1.15 1.3 1.65 0.85
Product complexity: device dep 0.7 0.85 1 1.15 1.3 1.65 1
Product complexity: data mgt 0.7 0.85 1 1.15 1.3 1.65 0.85
Computer TIME Execution time constraint 1 1 1 1.11 1.3 1.66 1
Computer STOR Main storage constraint 1 1 1 1.06 1.21 1.56 1.21
Computer VIRT Virtual Machine Volatily 0.87 0.87 1 1.15 1.3 1.3 1
Computer TURN Computer Turnaround Time 0.87 0.87 1 1.07 1.15 1.15 0.87
Personnel ACAP Analyst Capability 1.46 1.19 1 0.86 0.71 0.71 1.46
Personnel AEXP Applications Experience 1.29 1.13 1 0.91 0.82 0.82 1.29
Personnel PCAP Programmers Capability 1.42 1.17 1 0.86 0.7 0.7 1.42
Personnel VEXP Virtual Machine Experience 1.21 1.1 1 0.9 0.9 0.9 1.21
Personnel LEXP Language Experience 1.14 1.07 1 0.95 0.95 0.95 1.14
Project MODP Use of modern practices 1.24 1.1 1 0.91 0.82 0.82 1.24
Project TOOL Use of software tools 1.24 1.1 1 0.91 0.83 0.83 1.24
Project SCED Required development schedule 1.23 1.08 1 1.04 1.04 1.1 1.23

Intermediate Constant Coefficients per Model Type Basic*


Development Modes: C1 C2 P1 P2 C1
Organic 3.2 2.5 1.05 0.38 2.4
Semidetached 3 2.5 1.12 0.35 3
Embedded 2.8 2.5 1.2 0.32 3.4

Note: Basic Model C1 coefficients are 2.4, 3.0, and 3.4 respectively.. All other coefficients shared with Intermediate model.

2. Calculate the final EAF:


Calc'd EAF 6.19511 = RELY * DATA * CPLX * TIME * STOR * VIRT * TURN * ACAP * AEXP * PCAP * VEXP * LEXP * MODP * TOOL * SCED

3. Now calculate the Effort in Staff Months and the Time in Months for each Model type:
Basic Intermediate
Effort Time Effort Time
in Staff in in Staff in
Project Model Months Months Months Months
Organic 44.1 10.54 364.4 23.51
Semidetached 66.9 10.89 414.7 20.61
Embedded 94.7 10.72 483.2 18.07
Organic: in-house, less-complex developments with flexible processes. Features, qualities, cost and schedule are freely changed with minimal
overhead.
Embedded: typical defense community projects. Complex, requiring high reliability, with real-time issues. Highly rigorous process. Features,
qualities, cost and schedule are tightly controlled.
Semidetached: somewhere in-between organic and embedded.

4. Side note: Assuming all things are held equal (including the DATA variable even though it's recalculation
may change the EAF slightly), calculate the effect of DSI on the staffing effort and time in
months:
Effort in staff months Time (in months)
DSI Organic Semi Embedded Organic Semi Embedded
1,000 19.82 18.59 17.35 7.78 6.95 6.23
2,000 41.05 40.39 39.85 10.26 9.12 8.13
4,000 84.99 87.80 91.55 13.52 11.97 10.61
8,000 175.97 190.82 210.34 17.83 15.71 13.84
16,000 364.36 414.75 483.23 23.51 20.61 18.07
32,000 754.41 901.44 1110.16 31.00 27.05 23.58
64,000 1562.02 1959.26 2550.49 40.88 35.50 30.77
128,000 3234.22 4258.39 5859.48 53.91 46.58 40.15

5. Detailed mode: not included yet.


http://www.rogermasse.com/papers/software-metrics/
The detailed model differs from the Intermediate model in only one major aspect: the
detailed model uses different Effort multipliers for each phase of a project. Phase
dependent Effort multipliers yield better estimates than the Intermediate model.
Detailed COCOMO defines six lifecycle phases: requirements, product design, detailed
design, coding and unit testing, integration and testing, maintenance.

The detailed model illustrates the importance of recognizing different levels of


predictability at each phase of the development cycle. Boehm had the right idea here.
But COCOMO81 by itself is not a robust enough model to accurately predicting costs at
all phases of development. By going as far as trying to apply weights to the
requirements analysis phase while at the same time requiring input for the estimate
that is not typically very accurate until the later phases of design, clearly points
out a serious flaw in detailed COCOMO.
Notes on Cocomo II
file:///C:/COCOMO/Help/Usermanual/coco01.html#effortestimationeq

1. Effort Equation: Post-Architecture (with 17 factors for Effort Multipliers)

Symbol Description
1 PM Person Months of estimated effort
2 EM Effort Multipliers: RELY, DATA, CPLX, RUSE, DOCU, TIME, STOR, PVOL,
ACAP, PCAP, PCON, APEX, PLEX, LTEX, TOOL, SITE
3 A Constant, currently calibrated as 2.45
4 REVL Breakage: Percentage of code thrown away due to requirements volatility
5 SF Scale Factors: PREC, FLEX, RESL, TEAM, PMAT
6 ASLOC Size of the adapted component expressed in thousands of adapted source lines of
code (KASLOC)
7 AT Percentage of components that are automatically translated
8 ATPROD Automatic translation productivity
9 KNSLOC Size of component expressed in thousands of new source lines of code
10 AA Assessment and assimilation: effort required to evaluate whether the product can be
re-used PLUS the effort to integrate the existing documentation into the product

11 SU Software understanding (zero if DM = 0 and CM = 0)


12 DM Percentage of design modified
13 CM Percentage of code modified
14 IM Percentage of integration and test modified
15? ADAPT Percentage of components adapted (represents the effort required in understanding
software)

2. Schedule Estimation Equation:

Determine time to develop (TDEV) with an estimated effort, PM, that excludes the effect of the SCED effort multiplier:
Symbol Description
PM Person Months of estimated effort from Early Design or Post-Architecture models
(excluding the effect of the SCED effort multiplier).

SF Scale Factors: PREC, FLEX, RESL, TEAM, PMAT


TDEV Time to develop (in sequential months)
SCED Schedule
SCED% The compression / expansion percentage in the SCED effort multiplier

3. Default Post-Architecture Parameters


VeryLow
1 RELY Required software reliability (RELY) 0.82
2 DATA  Database size (DATA) 0.9
3 DOCU Documentation match to life-cycle needs (DOCU) 0.81
4 CPLX  Product complexity (CPLX) 0.73
5 RUSE  Required Reusability (RUSE) 0.95
6 TIME Execution time constraint (TIME) 1
7 STOR  Main storage constraint (STOR) 1
8 PVOL  Platform volatility (PVOL) 0.87
9 ACAP Analyst capabilities (ACAP) 1.42
10 APEX  Applications experience (APEX) 1.22
11 PCAP  Programmer capabilities (PCAP) 1.34
12 PLEX  Platform experience (PLEX) 1.19
13 LTEX Programming language experience (LTEX) 1.2
14 PCON  Personnel Continuity (PCON) 1.29
15 TOOL Use of software tools (TOOL) 1.17
16 SITE  Multisite Development (SITE) 1.22
17 SCED Required schedule development* (SCED) 1.43
18 USR1 User defined 1 (USR1) 1
19 USR2 User defined 2 (USR2) 1

* Handled separately as this is a project-wide rather than module-oriented factor.

4. Early Design

ftp://ftp.usc.edu/pub/soft_engineering/COCOMOII/cocomo99.0/modelman.pdf
The Early Design model uses KSLOC for size. Unadjusted function points are converted to the equivalent SLOC
then to KSLOC. The application of project scale factors is the same for Early Design and the Post-Architecture
Design model a reduced set of cost drivers are used. The Early Design cost drivers are obtained by combining
Architecture model cost drivers from Table II-9. Whenever an assessment of a cost driver is between the rating l
to the Nominal rating, e.g. if a cost driver rating is between Very Low and Low, then select Low.

Early Counterpart Combined


Design Post-Architecture Cost Drivers ExtraLow VeryLow
RCPX RELY, DATA, CPLX, DOCU 0.49 0.6
RUSE RUSE 0.95 0.95
PDIF TIME, STOR, PVOL 0.87 0.87
PERS ACAP, PCAP, PCON 2.12 1.62
PREX AEXP, PEXP, LTEX 1.59 1.33
FCIL TOOL, SITE 1.43 1.3
SCED SCED 1.43 1.43
USR1 USR1 1 1
USR2 USR2 1 1

5. Function point weights


Low Average High
Internal Logical Files 7 10 15
External Interface Files 5 7 10
External Inputs 3 4 6
External Outputs 4 5 7
External inquiries 3 4 6

6. Function Point Values:

Language Value Language


Access 38 Machine Code
Ada 83 71 Assembly, Basic
Ada 95 49 First Generation
AI Shell 49 Assembly, Macro
APL 32 C
Assembly, Basic 320 Fortran77
Assembly, Macro 213 Second Generation
Basic, ANSI 64 Procedural
Basic, Compiled 49 Cobol 85, ANSI
Basic, Interpreted 32 High Level
C 128 Pascal
C++ 53 Modula 2
Cobol 85, ANSI 91 Report Generator
Database Default 40 Third Generation
Fifth Generation 5 Ada 83
First Generation 320 Fortran 95
Forth 49 Basic, ANSI
Fortran 95 71 Lisp
Fortran77 107 Prolog
Fourth Generation 20 C++
High Level 91 Java
HTML 3.0 15 Ada 95
Java 53 AI Shell
Lisp 64 Basic, Compiled
Machine Code 640 Forth
Modula 2 80 Simulation Default
Object Oriented 29 Database Default
Pascal 91 Access
Perl 21 Visual C++
PowerBuilder 16 APL
Procedural 105 Basic, Interpreted
Prolog 64 Object Oriented
Query Default 13 Visual Basic 5.0
Report Generator 80 Perl
Second Generation 107 UNIX Shell
Simulation Default 46 Fourth Generation
Spreadsheet Default 6 PowerBuilder
Third Generation 80 HTML 3.0
UNIX Shell 21 Query Default
USR_1 1 Spreadsheet Default
USR_2 1 Fifth Generation
USR_3 1 USR_1
USR_4 1 USR_2
USR_5 1 USR_3
Visual Basic 5.0 29 USR_4
Visual C++ 34 USR_5

7. Scale Factors

Scale
Factors
(SFj) Very Low Low Nominal High Very High Extra High
PREC thoroughly largely Somewhat generally largely familiar thoroughly familiar
unpreceden unpreceden unpreceden familiar
ted ted ted

FLEX rigorous occasional some general some conformity general goals


relaxation relaxation conformity

RESL little (20%) some often Generally mostly (90%) full (100%)
(40%) (60%) (75%)
TEAM very some Basically largely highly cooperative seamless interactions
difficult difficult cooperativ cooperativ
interaction interaction e e
s s interaction
PMAT Weighted averages of "Yes" answers to CMM Maturity Questionnaire
The Incr% factor in Cocomo II for RELY
RELY 0% 25% 50% 75%
VeryLow 0.82 0.845 0.87 0.895
Low 0.92 0.94 0.96 0.98

NOM 1 1.025 1.05 1.075


High 1.1 1.14 1.18 1.22
Veryhigh 1.26 N/A N/A N/A

effect of the SCED effort multiplier:


Low Nominal Hi VeryHigh ExtraHigh Range
0.92 1 1.1 1.26 1.26 0.44
0.9 1 1.14 1.28 1.28 0.38
0.91 1 1.11 1.23 1.23 0.42
0.87 1 1.17 1.34 1.74 1.01
0.95 1 1.07 1.15 1.24 0.29
1 1 1.11 1.29 1.63 0.63
1 1 1.05 1.17 1.46 0.46
0.87 1 1.15 1.3 1.3 0.43
1.19 1 0.85 0.71 0.71 0.71
1.1 1 0.88 0.81 0.81 0.41
1.15 1 0.88 0.76 0.76 0.58
1.09 1 0.91 0.85 0.85 0.34
1.09 1 0.91 0.84 0.84 0.36
1.12 1 0.9 0.81 0.81 0.48
1.09 1 0.9 0.78 0.78 0.39
1.09 1 0.93 0.86 0.8 0.42
1.14 1 1 1 1 0.43
1 1 1 1 1 0
1 1 1 1 1 0

-oriented factor.

re converted to the equivalent SLOC and


ly Design and the Post-Architecture models. In the Early
st drivers are obtained by combining the Post-
f a cost driver is between the rating levels always round
w, then select Low.
Low Nominal Hi VeryHigh ExtraHigh Range
0.83 1 1.33 1.91 2.72 2.23
0.95 1 1.07 1.15 1.24 0.29
0.87 1 1.29 1.81 2.61 1.74
1.26 1 0.83 0.63 0.5 1.62
1.12 1 0.87 0.74 0.62 0.97
1.1 1 0.87 0.73 0.62 0.81
1.14 1 1 1 1 0.43
1 1 1 1 1 0
1 1 1 1 1 0

Value
640
320
320
213
128
107
107
105
91
91
91
80
80
80
71
71
64
64
64
53
53
49
49
49
49
46
40
38
34
32
32
29
29
21
21
20
16
15
13
6
5
1
1
1
1
1

Very Extra
Very Low Low Nominal High High High

6.2 4.96 3.72 2.48 1.24 0

5.07 4.05 3.04 2.03 1.01 0

7.07 5.65 4.24 2.83 1.41 0

5.48 4.38 3.29 2.19 1.1 0


7.8 6.24 4.68 3.12 1.56 0
Cocomo II
Cocomo 81 Early Post-Arch
Category Category Category
Product RELY Required reliability Yes Yes
Product DATA Database size Yes Yes
Product CPLX Product complexity: control ops Yes Yes
Product complexity: comp ops Yes Yes
Product complexity: device dep Yes Yes
Product complexity: data mgt Yes Yes
Product RUSE Product Reusability No Yes
Computer TIME Execution time constraint Yes Yes
Computer STOR Main storage constraint Yes Yes
Computer VIRT Virtual Machine Volatily Yes Yes
Computer TURN Computer Turnaround Time Yes Yes
Personnel ACAP Analyst Capability Yes Yes
Personnel AEXP Applications Experience Yes Yes
Personnel PCAP Programmers Capability Yes Yes
Personnel VEXP Virtual Machine Experience Yes Yes
Personnel PLEX Platform Experience No Yes
Personnel LEXP Language Experience Yes No
Personnel LTEX Language And Tool Experience No Yes
Personnel PCON Personnel Continuity And Experience No Yes
Project MODP Use of modern practices Yes Yes
Project TOOL Use of software tools Yes Yes
Project SCED Required development schedule Yes Yes
Project SITE Multi-Site Development No Yes

You might also like