Integration of Software Cost Estimates Across COCOMO, SEER- SEM, and PRICE-S models Tom Harwick, Engineering Specialist Northrop Grumman Corporation Integrated Systems October 26-29, th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 2 Outline Need for Inter-Model Estimate Integration Model Analysis –Model Comparisons & Sensitivity Analysis –Economic Properties Baseline Example –COCOMO –SEER-SEM –PRICE-S Summary 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 3 Need for Inter-Model Estimate Integration Communication of overall Software Cost Estimate to the Customer Minimize Program Cost Risk Integration of Software Estimates Across Vendors –Various Software Cost Models –Sizing Definitions –Selection of Cost Driver Settings –Vendors have different Statement Of Work (SOW) 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 4 Model Analysis Approach –Understand Properties of Each Cost Model –Sizing and Sizing Normalization –Productivity Cost Drivers –Team & Process –Market – Customer(s) –Complexity, Operating Environment –Model Scope Differences 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 5 Model Analysis - Cost Drivers by Cost Model 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 6 Model Analysis - Concept of “Ceterus Parabus” Methodology to Extract Cost Driver Information Parameter (e.g. Analyst Experience) Cost Other parameters held constant Slope = delta Cost/delta (Analyst Experience) Range = Cost/(Analyst Experience) 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 7 Model Analysis - Major COCOMO Cost Drivers 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 8 Model Analysis - Major SEER-SEM Cost Drivers 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 9 Model Analysis - Major PRICE-S Cost Drivers 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 10 Model Analysis - Team & Process 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 11 Model Analysis - Market 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 12 Model Analysis - Complexity 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 13 Model Analysis - Scope Did not find many data points in the COCOMO I database that suggest a System Integration on the scale of our (next) Baseline example (3-4 Million SLOCs). Has COCOMO II been able to collect sufficient data to develop a (large scale) System Integration factor? 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 14 Model Analysis - Economic Properties (Models Exponents Indicate Diseconomies of Scale for Large Projects) 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 15 Model Analysis - Economic Properties All Software Cost Models show a Schedule Compression penalty. 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 16 Baseline Example Illustrate Software Cost Estimation & Integration –Baseline –SEER-SEM – Sensor Software –PRICE-S – Air Vehicle Software –COCOMO – Control Station –Sizing Assumptions and Scenarios –Equivalent New SLOC –Productivity Range –Hours/ SLOC –Estimating Ranges using Monte Carlo –Hours = (SLOC) X (Hours/SLOC) 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 17 Baseline Example - Sizing Scenarios (E quivalent New SLOC) 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 18 Baseline Example – Productivity Ranges - Productivity (Hours/SLOC) COCOMO Assumptions: 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 19 Baseline Example – Results 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 20 Baseline Example – Air Vehicle, Hours = (Hours/SLOC) X SLOC 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 21 Baseline Example – Sensor, Hours = (Hours/SLOC) X SLOC 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 22 Baseline Example –Control Station,Hours=(Hours/SLOC)X SLOC 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 23 Summary Identified Major “local domain” Cost Drivers –COCOMO II, SEER-SEM, PRICE-S Examined Economic Properties –Diseconomies of Scale, Schedule Compression –Productivity Ranges –Scenario Analysis using top 2-3 Cost Drivers Illustrated Software Cost Estimation & Integration –Model Integration using Monte Carlo Probability Curves –Scenarios for Sizing –Model Output for Productivity 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 24 Object Oriented Analysis (OOA) OOA –Unified Modeling Language (UML) –Several Standard Diagrams –Starts with “Use Case” (users view of the world) –Develops charts including: –Use Case (Actors use of information in the system) –Collaboration Diagrams (provide details of each Use Case) –Class Diagram –Specify Blueprints (for objects) –Attributes and Methods –Relationship between Classes –Objects are linked across a design –Object Interfaces –Encapsulates Local Variables within a “Black Box” –Inheritance of Classes 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 25 Snapshot of Unified Modeling Language (UML) – From Use Case, Flow of Information, to Class Diagrams of Systems 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 26 Object Oriented Analysis (OOA) Benefits Object Oriented Analysis with Unified Modeling Language –Overall Project Cost Savings –Similar to System Engineering impact: –Mitigate Risk, Cost, Schedule Impacts –Decreases Defects –May increase Design work –But Avoids excessive re-work –Facilitates Integrate and Test –Better designed Interfaces –Promotes System Integration –If compatible UML used on all vendor designs –Helps Customer Understand Product Purchased –Sooner, Decrease Requirements Volatility –Need Data to Measure impact of OOA (UML) 19th International Forum on COCOMO and Software Cost Modeling
10/07/ th International Forum on COCOMO and Software Cost Modeling 27 References Models: Price Systems, PRICE-S model, Los Angeles, California, Galorath Associates, SEER-SEM, Los Angeles, California, USC Associates, COCOMO II.1999, Los Angeles, California, Books: 1. Boehm, Reifer, et al., Software Cost Estimation with COCOMO II, Prentice-Hall, New Jersey, Boehm, Barry W., Software Engineering Economics, Prentice-Hall, New Jersey, Deming, W. Edward, Out of the Crisis, Massachusetts Institute of Technology, Cambridge, Cs3 Inc., Objected Oriented Analysis Using the Unified Modeling Language, (UML), Los Angeles, CA, th International Forum on COCOMO and Software Cost Modeling