COCOMO II Demo and ARS Example CS 566 Software Management and Economics Lecture 5 (Madachy 2005; Chapter 3, Boehm et al. 2000) Ali Afzal Malik
Outline USC COCOMO II tool demo Overview of Airborne Radar System (ARS) Usage of different COCOMO sub-models within an evolutionary spiral development process Estimation of reuse, modification, COTS, and automated translation Refinement of (aggregate) estimates Iterative development Summary References 6/23/2008 LUMS 2
USC COCOMO II Demo 6/23/2008 LUMS 3
ARS Estimation Use Applications Composition, Early Design and Post-Architecture submodels Two Post-Architecture estimates are demonstrated: top-level and detailed scale drivers apply to overall system in both estimates cost drivers are rated for the aggregate system in the top-level estimate (17 ratings) cost drivers are refined for each individual software component in the detailed estimate (17*6 components=102 ratings) 6/23/2008 LUMS 4
ARS System Overview display workstation and console user input graphics commands central computer radar control commands received radar data radar unit computer radar other user commands other sensor data 6/23/2008 LUMS 5
Software Components Radar Unit Control controls radar hardware Radar Item Processing extracts information returned from radar to identify objects Radar Database maintains radar object tracking data Display Manager high level displays management Display Console user input device interface and primitive graphic processing Built In Test hardware monitoring and fault localization 6/23/2008 LUMS 6
COCOMO Coverage in Evolutionary Lifecycle Process Development Phase ARS Product Milestone COCOMO Sub-model Inception Prototype Applications Composition Elaboration Breadboard Early Design Construction Initial Operating Capability (IOC) * both top-level and detailed estimates shown Post- Architecture* 6/23/2008 LUMS 7
Prototype Size and Effort Component Size (Application Points) Estimated Reuse New Application Points (NAP) Radar Unit Control 11 20 % 8.8 Radar Item Processing 65 30 % 45.5 Radar Database 23 0 % 23 Display Manager 42 0 % 42 Display Console 17 0 % 17 Built In Test 0 0 % 0 TOTAL 136.3 Productivity is high at 25 NAP/PM Effort = NAP/ Productivity = 136.3/25 = 5.45 PM (or 23.6 person-weeks) Personnel = 23.6 person-weeks/6 weeks ~ 4 full-time personnel 6/23/2008 LUMS 8
Scale Factors for Breadboard Factor Precedentedness (PREC) Development Flexibility (FLEX) Architecture/Risk Resolution (RESL) Team Cohesion (TEAM) Process Maturity (PMAT) Rating Nominal Low High Nominal Nominal 6/23/2008 LUMS 9
Early Design Cost Drivers for Breadboard Factor Product Reliability and Complexity (RCPX) Required Reuse (RUSE) Platform Difficulty (PDIF) Personnel Capability (PERS) Personnel Experience (PREX) Facilities (FCIL) Schedule (SCED) Rating High Very High High High Nominal Nominal Nominal 6/23/2008 LUMS 10
Breadboard System Size Calculations Component Size (SLOC) Language Type REVL (%) DM CM IM AA SU UNFM AAM Equivalent Size (SLOC) Radar Unit Control Radar Item Processing 4500 Ada 95 New 10 - - - - - - - 4950 1238 Ada 95 Reused 10 0 0 30 1 - - 10 136 19110 Ada 95 New 20 - - - - - - - 22932 25450 Ada 95 Translate 0 d Radar Database 6272 Ada 95 New 12 - - - - - - 0 7025 3222 Ada 95 Modified 12 15 20 50 2 15.1 29.81 1076 Display Manager 12480 Ada 95, C New 9 - - - - - - - 13603 18960 Ada 95, C Reused 9 0 0 25 2 - - 9.5 1963 24566 C COTS 9 0 0 20 0-6 1607 Display Console 5400 C, microcode 2876 C, microcode Built In Test 4200 Ada 95, assembler New 7 - - - - - - - 5778 COTS 7 0 0 20 0 - - 6 185 New 15 - - - - - - - 4830 TOTAL 64084 6/23/2008 LUMS 11
Early Design Estimate for Breadboard 6/23/2008 LUMS 12
ARS Full Development for IOC Use Post-Architecture estimation model same general techniques as the Early Design model for the Breadboard system, except for elaborated cost drivers Two estimates are demonstrated: top-level and detailed scale drivers apply to overall system in both estimates cost drivers are rated for the aggregate system in the top- level estimate (17 ratings) cost drivers are refined for each individual software component in the detailed estimate (17*6 components=102 ratings) 6/23/2008 LUMS 13
ARS Top-Level Size Calculations Component Size (SLOLanguageType REVL (%DM (%) CM (%) IM (%) AA SU UNFM AAF (%) AAM (%)eq size Radar Unit Control 3215 Ada new 2 0 0 0 0 0 0 0 0 3279 500 Ada modified 2 30 30 40 6 33 0.4 33 47.712 243 5738 Ada reused 2 0 0 40 0 0 0 12 12 702 Radar Item Processing 13715 Ada new 15 0 0 0 0 0 0 0 0 15772 11500 Ada modified 15 5 14 40 2 30 0.4 18.2 24.568 3249 58320 Ada translated* 0 0 0 Radar Database 12200 Ada new 6 0 0 0 0 0 0 0 0 12932 9494 Ada reused 6 40 0 0 0 12 12 1208 Display Manager 15400 Ada, C new 4 0 0 0 0 0 0 0 0 16016 31440 Ada, C reused 4 0 0 40 0 0 0 12 12 3924 24566 C COTS 4 0 0 40 0 0 0 12 12 3066 Display Console 13200 C new 4 0 0 0 0 0 0 0 0 13728 1800 C modified 4 20 20 40 2 30 0.4 26 34.24 641 2876 C, microccots 4 0 0 40 0 0 0 12 12 359 Built In Test 16000 Ada, assenew 10 0 0 0 0 0 0 0 0 17600 4200 Ada, assereused 10 0 0 40 0 0 0 12 12 554 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 totals 224164 93274 6/23/2008 LUMS 14
Post-Architecture Estimate for IOC (Top-level) 6/23/2008 LUMS 15
Post-Architecture Estimate for IOC (Detailed) 6/23/2008 LUMS 16
Sample Incremental Estimate 6/23/2008 LUMS 17
Incremental COCOMO Costar (commercial tool) provides comprehensive implementation 6/23/2008 LUMS 18
Increment Phasing 6/23/2008 LUMS 19
Increment Summary 6/23/2008 LUMS 20
Summary Learned the basics of USC COCOMO II ARS example Use of COCOMO sub-models for differing lifecycle phases and levels of detail Incremental development 6/23/2008 LUMS 21
References Raymond J. Madachy, EC-6 COCOMO II: Airborne Radar System Example, CS 510 Lecture, 2005. Barry W. Boehm et al., Software Cost Estimation with COCOMO II, Prentice Hall PTR, 2000. 6/23/2008 LUMS 22