Software Project Management: Chapter Five Software Effort Estimation
Software Project Management: Chapter Five Software Effort Estimation
Chapter Five
Software effort
estimation
Delivering: Stages:
agreed functionality 1. Set targets
on time at the 2. Attempt to
agreed cost achieve targets
with the required
quality
Produce overall
Estimate estimate using
overall
project
100 days effort driver(s)
distribute
proportions of
design code test
overall estimate
30% 30% 40%
i.e. i.e. i.e. 40 days
to components
30 days 30 days
Number
of file types
‘system
model
size’
Numbers of input
and output transaction types
SPM (6e) Software effort estimation© The McGraw-Hill Companies, 2017 18
Parametric models
Other models focus on productivity: e.g. COCOMO
Lines of code (or FPs etc) an input
System
Estimated effort
size
Productivity
factors
Use effort
source cases
from source as
estimate
attribute values effort
Source B
It-Is
Number of
Ot-Os
inputs
target
Number of outputs
Euclidean distance = sq root ((It - Is)2 + (Ot - Os)2 )
EO 4 5 7
EQ 3 4 6
LIF 7 10 15
EIF 5 7 10
1. Medium EI 4 FPs
2. High complexity EI 6 FPs
3. Medium complexity EO 5 FPs
4. Medium complexity LIF 10 FPs
5. Simple EIF 5 FPs
Total 30 FPs
If previous projects delivered 5 FPs a day,
implementing the above should take 30/5 = 6
days
#input #output
items items
FP count = Ni * 0.58 + Ne * 1.66 + No * 0.26
Higher layers
Makes a request
Receives service
for a service
Lower layers
Software reuse
Application generation of programs
Object oriented approaches
Need for rapid development
Agile models
Manpower
TD
Time
SPM (6e) Software effort estimation© The McGraw-Hill Companies, 2017 53
Putnam’s Work
Putnam adapted the Rayleigh-Norden curve:
Related the number of delivered lines of code to
the effort and the time required to develop the
product.
Studied the effect of schedule compression: