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