cost22 1 question of the day u if you were the boss, what would you do for cost estimation?

24
cost22 1 Question of the day If you were the boss, what would you do for cost estimation?

Upload: junior-page

Post on 27-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 1

Question of the day

If you were the boss, what would you do for cost estimation?

Page 2: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 2

Cost Estimation

Estimates based on LOC

Page 3: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 3

Prediction Formulas

E=X

>1

<1

=1

TTYP1 – which one did Henry Ford experience?

Size

cost

Page 4: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 4

Cost Estimation Models LOC models

– Boehm's COCOMO– Putnam's Model (SLIM)

non-LOC models– Function Points

combination– COCOMO2

Page 5: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 5

Boehm's COCOMO

Software Engineering Economics Prentice-Hall c1981 type COCOMO in a search engine - many

www sites

Page 6: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 6

COnstructive COst MOdel

Basic– macro - overview of whole project with one

metric of KSLOC Intermediate

– multiplicative adjustment factors Detailed

– applying model to each phase

Page 7: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 7

Modes of Software Development

Organic– detached, often batch

Semidetached– e.g. transaction processing

Embedded– e.g. os kernel

Page 8: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 8

Programmer Effort

Application Programs– PM = 2.4 * (KDSI)1.05

Utility Programs– PM = 3.0 * (KDSI)1.12

Systems Programs– PM = 3.6 * (KDSI)1.20

Page 9: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 9

Example for effort Size Appl Util Sys 5K 13.0 18.2 24.8 10K 26.9 39.5 57.1 15K 41.2 62.2 92.8 20K 55.8 86.0 131.1 25K 70.5 110.4 171.3 30K 85.3 135.3 213.2 35K 100.3 160.8 256.6 40K 115.4 186.8 301.1 45K 130.6 213.2 346.9 50K 145.9 239.9 393.6

Page 10: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 10

Development Time (Months)

Application Programs– TDEV = 2.5 * (PM) 0.38

Utility Programs– TDEV = 2.5 * (PM) 0.35

Systems Programs– TDEV = 2.5 * (PM) 0.32

Page 11: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 11

Example for development time

size appl util sys 5K 6.63 6.90 6.99 10K 8.74 9.06 9.12 15K 10.27 10.62 10.66 20K 11.52 11.88 11.90 25K 12.60 12.97 12.96 30K 13.55 13.93 13.91 35K 14.40 14.80 14.75 40K 15.19 15.59 15.53 45K 15.92 16.33 16.25 50K 16.61 17.02 16.92

Page 12: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 12

Average Staffing Levels

Calculate by dividing PM by TDEV

Page 13: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 13

Example for staffing levels

size appl util sys 5K 1.96 2.63 3.55 10K 3.08 4.37 6.26 15K 4.01 5.87 8.71 20K 4.84 7.23 11.02 25K 5.60 8.51 13.21 30K 6.30 9.72 15.33 35K 6.97 10.87 17.39 40K 7.60 11.98 19.39 45K 8.20 13.05 21.35 50K 8.79 14.09 23.27

Page 14: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 14

Productivity

The productivity is defined as LOC per time unit.

The usual units are LOC/Programmer-Day

Divide final size of project by total programmer-days of effort for the whole software development

Page 15: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 15

TTYP2

What is the effort, productivity, staffing and delivery time for an application project that takes 82K loc?

What is the effort, productivity, staffing and delivery time for a system project that take 200K loc?

Page 16: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 16

COCOMO Effort Multipliers

product attributes – required reliability 0.75 - 1.40

– data-base size 0.94 - 1.16

– product complexity 0.70 - 1.65 computer attributes

– execution time constraint 1.00 - 1.66

– main storage constraint 1.00 - 1.56

– virtual machine volatility 0.87 - 1.30

– computer turnaround time 0.87 - 1.15

Page 17: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 17

Putnam's Cost Estimation Model

macro-estimation model that uses LOC relationship between cost and the amount of

time available for the development effort. The model supports the 'mythical man-

month' idea

Page 18: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 18

Putnam's Model

Uses the Rayleigh Curve– Shows Instantaneous Programmer-power vs

Time– Empirically verified on other projects

Page 19: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 19

Rayleigh Curve

The rayleigh curve is a product of at times e raised to the -bt squared

The at dominates at first giving a steep rise and then the negative power of e lowers the value slowly

Page 20: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 20

Rayleigh Curve

y : instantaneous programmer-power K : total lifecycle cost ( in programmer-years) t : time from beginning of project td: delivery time e= 2.71828...

y Kt

te

d

ttd

22

22

Page 21: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 21

Software Equation

There must be a relationship between the lifecycle development effort, the development time and the size of the project.

This relationship is given in the Software Equation

Page 22: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 22

Software Equation

Ss = C*K1/3 td4/3

– where:

– Ss is the estimated size of the software system

– K is the total lifecycle effort in programmer-years

– C is the technology constant

– td is the development time (in years)

Page 23: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 23

Putnam by spread-sheet

S td (years) K .4K ProgProd100000 1 100000 40000 0.0125100000 1.5 19753 7901 0.0633100000 2 6250 2500 0.2000100000 2.5 2560 1024 0.4883100000 3 1235 494 1.0125100000 3.5 666 267 1.8758100000 4 391 156 3.2000100000 4.5 244 98 5.1258100000 5 160 64 7.8125100000 5.5 109 44 11.4383100000 6 77 31 16.2000100000 6.5 56 22 22.3133100000 7 42 17 30.0125

Page 24: Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?

cost22 24

Summary

What could you do as a manager to improve cost estimation?