Constructive COTS Model (COCOTS) Status Chris Abts cabts@sunset.usc.edu USC Center for Software Engineering Annual Research Review Feb. 6, 2001 Copyright 2001 University of Southern California Briefing Outline • COCOTS Overview • Research Highlights Since ARR 2000 • Data Highlights • New Glue Code Submodel Results • Next Steps • Benefits CA 2/06/01 2 COCOTS Overview LCA (preliminary design review ) Staffing LCO (requirements review) 1. COTS Assessment 2. COTS Tailoring IOC (system delivery) 3. Glue Code Development New System Development Not Involving COTS Components 4. System Effort due to COTS Volatility Time CA 2/06/01 LCO – Lifecycle Objectives LCA – Lifecycle Architecture IOC – Initial Operational Capability COCOTS Effort Estimate COCOMO II Effort Estimate 3 Research Highlights Since ARR 2000 • Data collected for four sources of effort • Reasonably robust calibration of Glue Code submodel • Spreadsheet Tool CA 2/06/01 4 Data Highlights Mean % of Total COTS Effort by Activity (+/- 1 SD) 70.00% 61.25% 60.00% % Person-months 50.00% 49.07% 50.99% 40.00% 31.06% 30.00% 20.00% 20.75% 21.76% 20.27% 11.31% 10.00% 0.88% 0.00% -10.00% -7.57% assessment -7.48% tailoring glue code 2.35% system volatility -20.00% CA 2/06/01 5 Data Highlights Median Initial Filtering Effort by COTS Class generic 0.63 2.00 telemetry processing operating systems network managers 0.50 0.27 GUIs/GUI builders 0.10 emulators 0.08 databases 1.91 data conversion packages 0.00 0.75 0.50 1.00 1.50 2.00 2.50 Person-months CA 2/06/01 6 Data Highlights Median Detailed Assessment Effort by COTS Class generic 1.33 telemetry processing operating systems 2.37 0.50 network managers GUIs/GUI builders emulators 7.17 0.67 0.00 databases data conversion packages 5.75 0.00 0.00 1.00 2.00 3.00 4.00 5.00 6.00 7.00 8.00 Person-months CA 2/06/01 7 Data Highlights Median Tailoring Effort by COTS Class report generator 6.00 OS 2.00 network management 12.67 14.00 GUI emulator 3.00 disk array 4.00 device drivers 3.00 DBMS communications protocol 38.29 1.00 back office retail 0.00 3.00 10.00 20.00 30.00 40.00 50.00 Person-months CA 2/06/01 8 New Glue Code Submodel Results • Current calibration looking reasonably good – Excluding projects with very large, very small amounts of glue code (Effort Pred): • [0.5 - 100 KLOC]: Pred (.30) = 9/17 = 53% • [2 - 100 KLOC]: Pred (.30) = 8/13 = 62% – For comparison, calibration results shown at ARR 2000: • [0.1 - 390 KLOC]: Pred (.30) = 4/13 = 31% • Propose to revisit large, small, anomalous projects – A few follow-up questions on categories of code & effort • Glue code vs. application code • Glue code effort vs. other sources CA 2/06/01 9 New Glue Code Submodel Results (Detailed) Overly large and small glue code projects set aside. A=2.13 1.16.2001 PM PROJECT B C N3 S P2 Q P5 G3 J P1 E6 P3 M1 OO4 K A L HH1 D P4 CA 2/06/01 eff size (ksloc) 468 25 20 4.2 3 50 5 50 1.2 10 66 30 5 156.25 1.5 8.05 1.3 1 6.2115 0.2 B 1.04 1.04 1.04 1.04 1.04 1 1.04 1.04 1.04 1.04 1.04 1.04 1.05 1 1.04 1.06 1 1.07 1 1.04 Pred (.30) = 8/13 = 62% xEAF 0.510453806 1.852572737 0.322405591 2.390191594 0.963253616 0.673812512 1.006681407 0.529078185 0.293750042 0.380170097 1.080272605 0.417769338 3.069851933 1.634415034 0.444883317 0.204635155 0.586150455 0.337287985 0.341574591 0.455368578 (est) 650.7163767 112.20507 15.48293759 22.64600403 6.431708548 71.76103253 11.4340597 65.89132839 0.756320788 8.878867139 179.5720163 30.58597083 35.4336211 543.9537534 1.444643319 3.976522848 1.62305061 0.718423407 4.519200912 0.181892109 (rpt'd) 60 75 12 18 6 72 12 84 1 12 250 60 81 1411 4 12 7 6 74 6 Pred (.30) = 9/17 = 53% %Rerr 984.53% 49.61% 29.02% 25.81% 7.20% -0.33% -4.72% -21.56% -24.37% -26.01% -28.17% -49.02% -56.25% -61.45% -63.88% -66.86% -76.81% -88.03% -93.89% -96.97% 10 Next Steps • Data conditioning – Follow-up questions on categories of code & effort • Further data collection – Accelerating collection of 10 additional data points over next 8 weeks (including a first pass at COTS maintenance data) – As always, can you help? • COCOTS total lifecycle model – Two FAA-sponsored workshops, Int’l COCOMO forum breakout session held in 2000; USC-SEI-CeBASE workshop on COTS-based systems this week – COCOTS data survey being expanded to address total lifecycle issues based on insights gained from above meetings CA 2/06/01 11 Benefits • Existing – Independent source of estimates – Checklist for effort sources – (Fairly) easy-to-use development phase tool • On the Horizon – Empirically supported, tightly calibrated, total lifecycle COTS estimation tool CA 2/06/01 12