Download presentation
Presentation is loading. Please wait.
Published byCamron Poole Modified over 6 years ago
1
Using COCOMO for Software Decisions - from COCOMO II Book, Section 2
Barry Boehm CS 510 Fall 2013
2
Outline COCOMO II Objective: Decision Support
Example Company: UST, Inc. Auto Parts Frequent Software Decisions Investment; Business Case Analysis Setting Project Budgets and Schedules Performing Tradeoff Analysis Cost Risk Management Development vs. Reuse Legacy Software Phaseout Software Process Improvement Software Organizational Decisions Conclusions
3
UST, Inc. Auto Parts Company
Large manufacturing company 200-person software organization Considering development of manufacturing control system (MCS) 100 KSLOC; nominal drivers ratings; $8K/PM Scaling exponent E= ( )=1.10 Estimated effort and cost Effort=2.94*100^1.10 = 466 PM Cost = 466 PM * $8K/PM = $3.728M
4
UST, Inc. Auto Parts Company (Cont.)
Plus Inception (6%) and Transition (12%) costs Acquisition Cost = $3.728*1.18 = $4.4M Annual Maintenance Cost Annual Software Change = 100*(0.20) = 20KSLOC Cost = 2.94*(20)^1.10*$8K=$635K
5
MCS Business Case Analysis
MCS estimate to reduce manufacturing inventory 20% Enables more just-in-time arrival of suppliers components Current Manufacturing inventory valued at $80M Inventory carrying costs average around 25% Inventory control, property taxes, capital costs, etc. MCS savings in reduced inventory carrying costs = ($80)*(0.25)*(0.2)=$4M/Year MCS savings subtracts software maintenance cost =$4M-0.635M=$3.365M 5-year-ROI=5*$3.365M/$4.4M = 3.8 Well worth the investment
6
Setting Project Budget and Schedules
TDEV=3.67*(PM)^[ *(E-0.91)] = 3.67*(466)^0.318 = 26 month Constructive phase schedule and effort (Table A.5) Effort=0.76*(466)=354 PM; Schedule=0.625*26=16.25 Month; Staff Level = 354/16.25=21.8 people Staff needed for construction activities (Table A, 11) Requirements = 21.8*0.08=1.7 people Product Design =21.8*0.16=3.5 people
7
Performing Tradeoff Analysis MCS Life-cycle Costs vs. Reliability Level
RELY Rating Very Low Low Nominal High Very High Dev. Effort Mult. 0.82 0.92 1.0 1.10 1.26 Dev. Cost ($K) 3608 4048 4400 4940 5544 Maint. Effort Mult. 1.35 1.15 0.98 Maint. Cost (*2 for Nominal) 11,880 10,120 8,800 8,624 9,680 Life-cycle Cost 15,488 14,168 13,200 13,464 15,224
8
Value-Based Tradeoff Analysis Cost of Downtime = $38*(Downtime)
RELY Rating Very Low Low Nominal High Very High Mean Time to Failure (hr) 1 10 300 10,000 300,000 Mean Time to Repair (hr) Avail= MTBF/(MTBF+MTTR) .50 .90 .997 0.9999 Downtime .10 .003 0.0001 Cost=$3B*Downtime $1500M $300M $10M $0.3M $0.01M SW Life-cycle Cost $15.5M $14.2M $13.2M $13.5M $15.2M Ownership Cost $1515M $314M $23.2M $13.8M
9
Outline COCOMO II Objective: Decision Support
Example Company: UST, Inc. Auto Parts Frequent Software Decisions Investment; Business Case Analysis Setting Project Budgets and Schedules Performing Tradeoff Analysis Cost Risk Management Development vs. Reuse Legacy Software Phaseout Software Process Improvement Software Organizational Decisions Conclusions
10
Cost Risk Management Risk reserve for requirement volatility
Estimate as high as 15% Resulting cost = 2.94*(100+15)^1.10*($8k)=$5130k Risk reserve = $5130k – 4400k = $730k Risk reserve for less experienced personal Average applications, Platform experience ½-level lower Resulting cost = $4400k*(1.05)*(1.045)=$4828k Risk reserve = $428k
11
Development vs. Reuse Possibility of reusing a 40 KSLOC component
Reuse parameters not a strong match % design modified DM=40 % code modified CM=50 % integration redone IM=100 Understanding penalty SU=50 SW unfamiliarity UMFM=1.0 Adaptation of assessment AA =5% Equivalent new lines of code = 40k*[(0.4*40+0.3*50+0.3*100)/100+(5+50*1.0)/100] = 40k * ( ) = 46.4KSLOC Not a good decision to reuse
12
Legacy Software Phaseout
Candidate: Corporate property accounting system 50K COBOL program; 20% annual charge (10K) SU = 50: poorly structured, documented UNFM = 0.7: few people familiar with code Equivalent annual maintenance size = 10KSLOC * [1 + (50*0.7)/100] = 13.5 KSLOC/year 3 years: 40.5K SLOC Replacement could use MCS GUI, DBMS Only 20 KSLOC of new software needed SU = 25: better structured, documented UNFM = 0.4: New developers familiar with the code 20KSLOC * [1+ (25*0.4)/100] = 4.4 KSLOC/year 3 years + development = 3* = 33.2 KSLOC Better to phase out and replace legacy SW
13
Software Process Improvement
UST currently at Process maturity Level 2 Planning & control, config. Management, guality assurance Cost to achieve level 3 (process group, training, product engr.) Process group: (2yr)*(4 persons)*($96K/yr) = $768K Training: (200 persons)*(3weeks)*($96K/Ω) = $1108K Contingency = $124K; Total = = $2000K Benefit: scale exponent reduced by =.0156, to 1.10 – = From 100^1.10 = to 100^ = 147.5, or 7% less effort Annual savings = (200 persons)*(96K/yr)(.07)=$1344K 5 year ROI = [5*$1344K-$2000K]/$2000K = 2.36 Again, well worth the investment
14
Conclusions COCOMO II is useful in many decision situations
Support objective discussion and negotiation Most analysis can be done with hand calculator Simpler, easier to explain Usage builds shared understanding and trust
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.