Software Lifecycle Management Lecture

advertisement
r2SEF for
COCOMO
Software
Integrating Duration,
Lifecycle
Effort, Cost, Defects,
and Uncertainty
Management
Lecture
TM
Mike Ross
President & CEO
r2ESTIMATING,
LLC
7755 E. Evening Glow Drive
Scottsdale, Arizona 85262-1295
(o) 480.488.8382 (f) 480.488.8420
mike.ross@r2estimating.com
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #1
Presentation to
22nd International Forum on
Systems, Software, and COCOMO
Cost Modeling
November 2007
TM
r2 Software Estimating Framework
(r2SEF) Goals
• Unify Existing Model Mathematics
– Software Productivity
– Defect Propensity
– Management Stress
• Provide More Calibration Flexibility
• Provide Visual Tools for Analyzing Tradeoffs
• Provide Visual Tools for Analyzing Uncertainty
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #2
TM
r2 Software Estimating Framework
(r2SEF) Equations
(1)
E
t
Se
where  E  0;  t  0
k η
Φa,b
where  E  0; t  0
(2)
EC t C 
(3)
EC
M
where   0

k M tC
k δa,b
M max
EtC min
EC

 M max 

k M tC
kM tC min 
(5)
M min
EC
EC min

 M min 

k M tC
k M t EC min 
(6)
M nom 
(4)
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #8
EC  E t C  t 
EC nom
k M tC nom
(Ross, 2007a)
TM
r2SEF Variables
EC
 Construction Effort: random variable
tC
 Construction Duration: random variable
Se
 Effective Size or Content (consistent with η): random variable
η
 Specific Efficiency (consistent with Se ): random variable
E
t
 Effort Exponent
 Duration Exponent
Φa,b  Defect Count (consistent with δa,b ): random variable
δa,b  Specific Defect Vulnerability (consistent with Φa,b ): random variable
E
t
 Defect Effort Exponent
 Defect Duration Exponent
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #9
(Ross, 2007a)
TM
r2SEF Variables

M
 Gamma (Economy Exponent)
 Specific Management Stress
M nom  Nominal (Typical) Management Stress
EC nom  Nominal (Typical) Construction Effort
tC nom  Nominal (Typical) Construction Duration
M max  Maximum Management Stress
EtC min  Construction Effort at Minimum Construction Duration
tC min  Minimum Construction Duration
M min  Minimum Management Stress
EC min  Minimum Construction Effort
t EC min  Construction Duration at Minimum Construction Effort
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #10
(Ross, 2007a)
TM
COCOMO II to r2SEF
Software Productivity Equation
5


PM  CE nom   EM i KESLOC where B  median  Bmin  0.01 SDi 
i 1


i 1
TDEV  Ct nomPM A where A    0.2  B  Bmin 
n
B
n
 PM TDEV   CE nom   EM i KESLOC BCt nomPM A
i 1
B
  12  7  
 Se 
 12  7   12  7 
E
t

C
EM
C
E nom  
i 

 C
 C
 EC 
 t nom  
 365.25   365.25 
 1000 
i 1
  365.25  
n
EC
 1 A 


 B 
tC
1
 
B

© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #11
A
Se
 2 A 




B


 12  7 


1000




 365.25 

1 
 
n

 B  
  (CE nom )(Ct nom )  EM i   
i 1
 

(Boehm, et al., 2000), (Ross, 2007a)
TM
COCOMO II to r2SEF
Software Productivity Equation Variables
E
EC t C
t
Se

k η
where
1 A
B
1
t 
B
E 
η
 12  7 
1000 

365.25


 2 A 


 B 


 CE nom Ct nom   EM i  
i 1


n
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #12
(Ross, 2007a)
1
 
B
TM
COCOMO II to r2SEF
Defect Propensity Equation
 Φa,b 
KEDSI 
 PM  CE nom 


ωb
 ωb 
TDEV  Ct nomPM A
Φa,b
B
n
  EM 
i 1
i
B
 Φa,b  n
CE nom 
   EM i 
ωb  i 1
PM


TDEV
Ct nomPM A
where ωb  Defect Density: random variable
 Φa,b 
 12  7 
 EM i  


 EC CE nom 

ω
i 1
 365.25 
 b 

A
 12  7 
  12  7  

 tC
C
 EC 
t nom  
 365.25 
  365.25  
n
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #13
B
(Boehm, et al., 2000), (Ross, 2007a)
TM
COCOMO II to r2SEF
Defect Propensity Equation
EC
 A 1 


 B 
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #14
tC
1
 
B

Φa,b
1


 
B



 A 
  12  7  B  
 
Ct nom
 
 ωb 
 
n
365.25

 



C
EM


E nom 
i 
 

i 1



(Ross, 2007a)
TM
COCOMO II to r2SEF
Defect Propensity Equation Variables
E
t
EC t C 
Φa,b
k δa,b
where
A 1
B
1
t    
B
E 
δa,b
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #15




Ct nom

 ωb 
n
C

EM


i 
 E nom 
i 1


(Ross, 2007a)
1
 
B
 12  7 


 365.25 
 A
 
B
TM
COCOMO II to r2SEF
Management Stress Equation
TDEV  Ct nom PM A
  12  7  
 12  7 

 tC  Ct nom  
 EC 
 365.25 
  365.25  
A
 1 A 


 
 A 
12

7



 1


 365.25 
  A 
EC   
 tC
1
 C  A 

t nom




© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #16
(Boehm, et al., 2000), (Ross, 2007a)
TM
COCOMO II to r2SEF
Management Stress Equation Variables
EC  M tC 
where
 1 A 


 
A

12

7
 

  365.25 

M 

1
 
 C  A

t nom




© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #17
(Ross, 2007a)
TM
COCOMO II to r2SEF
Management Stress Equation Variables
1 A
M min
M nom
M max
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #18
  12  7 


365.25



 1 



 Pmax  1 A Ct nom







1
 
 A
where Pmax  160% typical
  12  7 1 A 



365.25

  1 




 1 A 
Ct nom 
 Pnom


  12  7 1 A 



365.25

  1  




 1 A 
Ct nom 
 Pmin


1
 
 A
where Pnom  100% typical
1
 
 A
where Pmin  75% typical
(Boehm, 1981), (Ross, 2007a)
TM
Single Point Estimate and
Goal Satisfaction
EFFORT vs. DURATION TRADEOFF
Effort (thousands of person-weeks)
2.0
Stress (M)
1.6
1.2
0.8
Size/Efficiency
Ratio
0.4
0.0
90
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #19
100
110
120
130
140
150
160
170
Duration (calendar weeks)
TM
Uncertainty in Size and Efficiency
EFFORT vs. DURATION TRADEOFF
Effort (thousands of person-weeks)
2.0
1.6
1.2
99%
0.8
50%
0.4
Size/Efficiency
Ratio
1%
0.0
90
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #20
100
110
120
130
140
150
160
170
Duration (calendar weeks)
TM
Distribution of Solutions for a Given
Management Stress Value
EFFORT vs. DURATION TRADEOFF
Effort (thousands of person-weeks)
2.0
Stress (M)
1.6
1.2
99%
0.8
50%
0.4
Size/Efficiency
Ratio
1%
0.0
90
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #21
100
110
120
130
140
150
160
170
Duration (calendar weeks)
TM
Ranges of Possible Outcomes
EFFORT vs. DURATION TRADEOFF
Effort (thousands of person-weeks)
2.0
Stress (M)
1.6
1.2
99%
0.8
50%
0.4
Size/Efficiency
Ratio
1%
0.0
90
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #22
100
110
120
130
140
150
160
170
Duration (calendar weeks)
TM
Typical (Nominal Stress) Solution at
70% Desired Confidence Probabilities
EFFORT vs. DURATION TRADEOFF
Effort (thousands of person-weeks)
2.0
Stress (M)
1.6
1.2
0.8
70%
50%
0.4
Size/Efficiency
Ratio
0.0
90
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #23
100
110
120
130
140
150
160
170
Duration (calendar weeks)
TM
Example Software Project
Estimating Scenario
• Real time embedded avionics software for commercial
air transport application
• Effective software size:
– [45,000; 50,000; 60,000] SLOC (triangular)
• Nominal defect density:
– [1.06; 1.48; 2.07] defects/KSLOC (triangular)
• Cost of labor: 40 ph/pw; $100/ph
• Constraints:
– Duration: Goal ≤ 104 weeks; Confidence ≥ 80%
– Effort: Goal ≤ 2,000 pw; Confidence ≥ 50%
– Cost: Goal ≤ $7,000,000; Confidence ≥ 80%
– Defects: Goal ≤ 100 deliv. defects; Confidence ≥ 90%
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #24
TM
COCOMO II Post Architecture
Scale Driver and Effort Multiplier Inputs
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #25
TM
Typical (Nominal Management Stress)
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #26
TM
Minimum Acceptable Duration
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #27
TM
Minimum Necessary Duration
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #28
TM
Identifying and Analyzing Alternatives
• Change Assumptions
– Reduce the effective software size (i.e., postpone or
eliminate functionality),
– Reduce the uncertainty range around effective software
size (i.e., refine the size estimate and secure functionality
freezes to reduce variability and potential for growth),
– Increase efficiency (i.e., better people, better
processes/tools, less complex product, etc.),
– Reduce the uncertainty range around efficiency (i.e., lock
down decisions about the product technology and the
development environment).
• Change Constraints
– Relax one or more of the goal values,
– Relax one or more of the desired confidence probabilities.
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #29
TM
Reduced Effective Software Size
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #30
TM
Relaxed Duration Goal
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #31
TM
High Duration Risk
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #32
TM
Composite Solution #1
Reduced Size & Relaxed Duration Goal
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #33
TM
Composite Solution #2
Relaxed Effort, Cost, & Defects Goals
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #34
TM
References
Boehm, Barry W. 1981. Software Engineering Economics. Englewood
Cliffs : Prentice-Hall, Inc., 1981.
Boehm, Barry W., et al. 2000. Software Cost Estimation with COCOMO II.
Upper Saddle River : Prentice-Hall, Inc., 2000.
Browne, J. 2001. Probabilistic Design: Course Notes. Melbourne,
Australia : Swinburne University of Technology, 2001.
Jensen, Randall W. n.d.. An Improved Macrolevel Software Development
Resource Estimation Model. s.l. : Software Engineering, Inc., n.d.
Musa, John D. 2004. Software Reliability Engineering: More Reliable
Software Faster and Cheaper. 2nd. Bloomington : AuthorHouse, 2004.
Norden, Peter V. 1977. Project Life Modeling: Background and
Application of Life Cycle Curves. Proceedings, Software Life Cycle
Management Workshop. Airlie, VA, USA : Sponsored by USACSC,
1977.
Putnam, Lawrence H. 1980. Software Cost Estimating and Life-Cycle
Control: Getting the Software Numbers. New York : IEEE Computer
Society, 1980.
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #35
TM
References
Ross, Michael A. 2007a. Next Generation Software Project Estimating: 25
Years and Thousands of Projects Later. Proceedings, Joint ISPA /
SCEA 2007 Conference. New Orleans, LA, USA : The International
Society of Parametric Analysts and The Society of Cost Estimating
and Analysis, June 2007a.
—. 2007b. Next Generation Software Project Estimating: Know the Odds
Before Placing Your Bet. Proceedings, AIAA SPACE 2007 Conference
& Exhibition. Long Beach, CA, USA : American Institute of
Aeronautics and Astronautics, September 2007b. AIAA 2007-6022.
© 2007 r2ESTIMATING, LLC
r2SEF for COCOMO – Initial #36
TM
Download