Software Cost Estimation
Software Cost Estimation
Software Cost Estimation
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide1
Objectives
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide2
Topics covered
Software productivity
Estimation techniques
Algorithmic cost modelling
Project duration and staffing
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide3
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide4
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide5
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide6
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide7
Software productivity
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide8
Productivity measures
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide9
Measurement problems
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide10
Lines of code
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide11
Productivity comparisons
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide12
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide13
Function points
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide14
Function points
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide15
Object points
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide16
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide17
Productivity estimates
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide18
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide19
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide20
Estimation techniques
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide21
Changing technologies
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide22
Estimation techniques
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide23
Estimation techniques
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide24
Pricing to win
Disadvantages:
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide25
Bottom-up
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide26
Top-down estimation
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide27
Bottom-up estimation
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide28
Estimation methods
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide29
Pricing to win
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide30
Effort = A SizeB M
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide31
Estimation accuracy
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide32
4
x
2
x
x
F
e
Requ
asib
Des
Co
D
0.5
x
0.2
5
x
Estimate uncertainty
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide33
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide34
COCOMO 81
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide35
COCOMO 2
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide36
COCOMO 2 models
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide37
Pr
App
Based
Use
Numbe
de
com
applica
sc
pr
ra
In
t
Based
Use
Numbe
es
Early
points
sy
an
Eff
t
ra
t
Numbe
Based
Use
re
code
r
Reus
or
genera
ge
De
t
Based
Use
Numbe
P
o
st-a
ba
source
mod
de
Use of COCOMO 2 models
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide38
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide39
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide40
PM = A SizeB M where
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide41
Multipliers
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide42
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide43
PM = (ASLOC * AT/100)/ATPROD
ASLOC is the number of lines of generated
code
AT is the percentage of code automatically
generated.
ATPROD is the productivity of engineers in
integrating this code.
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide44
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide45
Post-architecture level
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide46
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide47
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide48
Multipliers
Product attributes
Computer attributes
Personnel attributes
Project attributes
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide49
Reliability
Complexity
Memory constraint
Tool use
Schedule
Adjusted COCOMO estimate
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide50
Project planning
Must be reliable;
Must minimise weight (number of chips);
Multipliers on reliability and computer constraints > 1.
Cost components
Target hardware;
Development platform;
Development effort.
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide51
A.
xisti
d
w
a
e
,
r
Us
de
v
e
lop
deve
.Har
B
ocess
Pr
C
.
Me
D
.
e
M
memo
r
a
upg
de
r
a
y
e
de
x
f
p
d
w
a
e
ease
r
cost
Har
d
w
e
r
co
Exper
incr
eas
E.
w
v
e
lopm
Ne
de
F
.
f
wit
Sta
system
har
d
w
a
e
xpe
r
e
Har
d
w
a
e
ease
r
cost
Exper
Management options
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide52
Option
RELY
STOR
TIME
TOOLS
LTEX
A
B
1.39
1.39
1.06
1
1.11
1
0.86
1.12
1
1.22
63
88
C
D
E
F
1.39
1.39
1.39
1.39
1
1.06
1
1
1.11
1.11
1
1
0.86
0.86
0.72
1.12
1
0.84
1.22
0.84
60
51
56
57
IanSommerville2004
Total cost
949393
1313550
Hardware
cost
100000
120000
895653
769008
844425
851180
105000
100000
220000
120000
1000653
897490
1044159
1002706
1049393
1402025
SoftwareEngineering,7thedition.Chapter26Slide53
Option choice
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide54
TDEV = 3 (PM)(0.33+0.2*(B-1.01))
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide55
Staffing requirements
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide56
Key points
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide57
Key points
IanSommerville2004
SoftwareEngineering,7thedition.Chapter26Slide58