University of Southern California Center for Software Engineering Towards Model Unification: Integrating the COCOMO Suite 19th Forum on COCOMO and Software Cost Modeling Model Unification Tutorial October 26, 2004 Barry Boehm Jo Ann Lane Ricardo Valerdi Winsor Brown http://sunset.usc.edu/research/cocomosuite 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 1 University of Southern California Center for Software Engineering Agenda • Unification Concepts – Models of Interest – Goals – Previous Unification Work • • • • • Overview of Models Key Issues Summary of Unification Analysis Performed to Date DBA COCOMO Prototype Demo Next Steps 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 2 University of Southern California Center for Software Engineering Models of Interest & Owners COCOMOII*^ Yang COCOTS^ COQUALMO Yang Yang Valerdi COPROMO Brown iDAVE Huang COSYSMO COSOSIMO CORADMO Lane Brown COPLIMO Yang COPSEMO Brown Legend: Model has been calibrated with historical project data Model is derived from calibrated models Model has been calibrated with expert (Delphi) data *includes Risk Analyzer, Monte Carlo, Security, Agile, and Incremental versions ^includes Early version 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 3 University of Southern California Center for Software Engineering Unification Goals • Allow more comprehensive cost exploration with respect to – Development decisions – Investment decisions – Established project budget and schedules – Client negotiations and requested changes – Cost, schedule, performance, and functionality tradeoffs – Risk management decisions – Process improvement decisions 26 October 2004 • Affiliate request: Provide a single unified tool to allow users to – Specify • System and software components comprising the software system of interest • Composition and characteristics of components – Receive • A set of comprehensive outputs for system engineering, software development, and system-ofsystems integration • Adjusted using the appropriate special-purpose extensions COCOMO II Unification Tutorial ©USC-CSE 4 University of Southern California Center for Software Engineering Previous Unification Work • • • • • Within COCOMO Suite COCOMO II & COQUALMO (Chulani 1999) COCOMO II & COCOTS (Abts 2003) COCOMOII, COPSEMO, & CORADMO (Brown, et al) COINCOMO: COCOMOII & COPSEMO & multi build (Brown, et al 2004) • Early design COCOMOII, early COCOTS, & COSYSMO (Clark & Clark 2004) • Outside of COCOMO Suite – SEER-SEM & SEER-H (Stump 2004) – ICE (Shroder 2004) 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 5 University of Southern California Center for Software Engineering Agenda • Unification Concepts • Overview of Models – COCOMO II and Dependent Extensions – Overview of Emerging Independent Extensions – Current Model Status • • • • Key Issues Summary of Unification Analysis Performed to Date DBA COCOMO Prototype Demo Next Steps 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 6 University of Southern California Center for Software Engineering Overview of Models • COCOMO II: software development – Motivation and Context – Conceptual View of Model and Parameters – Scope of Outputs • Emerging COCOMO-Dependent Extensions • Emerging Independent Extensions • Current Model Status 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 7 University of Southern California Center for Software Engineering COCOMO II Overview Software product size estimate Software product, process, computer, and personal attributes Software reuse, maintenance, and increment parameters COCOMO Software development and maintenance: • Costs (effort) • Schedule estimates • Distributed by phase, activity, increment Software organization’s Project data COCOMO locally calibrated to organization’s data 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 8 University of Southern California Center for Software Engineering Purpose of COCOMO II • To help people reason about the cost and schedule implications of their software decisions – Software investment decisions • When to develop, reuse, or purchase • What legacy software to modify or phase out – – – – Setting project budgets and schedules Negotiating cost/schedule/performance tradeoffs Making software risk management decisions Making software improvement decisions • Reuse, tools, process maturity, outsourcing • Model versions supported – Early design – Post-architecture 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 9 University of Southern California Center for Software Engineering COCOMO II Model Stages 4x 2x Early Design (13 parameters) 1.5x 1.25x Relative Size Range x 0.8x Post-Architecture (23 parameters) 0.67x 0.5x Applications Composition (3 parameters) 0.25x Feasibility Plans and Rqts. Detail Design Spec. Product Design Spec. Rqts. Spec. Concept of Operation Product Design Detail Design Accepted Software Devel. and Test Phases and Milestones 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 10 University of Southern California Center for Software Engineering COCOMO II Scope of Outputs • Provides the estimated software development effort and schedule for MBASE/RUP – Elaboration – Construction 26 October 2004 LCO COCOMO II Unification Tutorial ©USC-CSE LCA IOC 11 University of Southern California Center for Software Engineering Overview of Models • COCOMO II: software development • Emerging COCOMO-Dependent Extensions – – – – – – COQUALMO: software quality iDAVE: software dependability COPLIMO: product line investment COPSEMO: phased schedule & effort CORADMO: rapid application software development COPROMO: productivity improvement • Emerging Independent Extensions • Current Model Status 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 12 University of Southern California Center for Software Engineering Constructive Quality Model: COQUALMO • Predicts the number of residual defects in a software product • Enables 'what-if' analyses that demonstrate the impact of – various defect removal techniques – effects of personnel, project, product and platform characteristics on software quality. • Provides insights into – Probable ship time – Assessment of payoffs for quality investments – Understanding of interactions amongst quality strategies Model Point of Contact: Ye Yang 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 13 University of Southern California Center for Software Engineering COQUALMO Operational Concept COCOMO II COQUALMO Software Size Estimate Software platform, Project, product and personnel attributes Defect Introduction Model Software development effort, cost and schedule estimate Number of residual defects Defect density per unit of size Defect removal profile levels Automation, Reviews, Testing Defect Removal Model Model Point of Contact: Ye Yang 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 14 University of Southern California Center for Software Engineering Information Dependability Attribute Value Estimator: iDAVE • iDAVE estimates and tracks software dependability Return on Investment (ROI) – Help determine how much dependability is enough – Help analyze and select the most cost-effective combination of software dependability techniques – Use estimates as a basis for tracking performance • Based on COCOMO II and COQUALMO cost models and Value Estimating Relationships (VERs) • Used to reason about the ROI of software dependability investments • Dependability defined as a composite property that integrates such attributes as availability, reliability, safety, security, survivability and maintainability Model Point of Contact: LiGuo Huang 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 15 University of Southern California Center for Software Engineering iDAVE Operational Concept Time-phased information processing capabilities Cost estimating relationships (CER’s) Time-phased Cost = f IP Capabilities (size), project attributes Dependability attribute levels Di Project attributes Time-phased dependability investments Cost Dependability attribute estimating relationships (DER’s) Value components Vj Di = gi Dependability investments, project attributes Return on Investment Value estimating relationships (VER’s) Vj = hj IP Capabilities dependability levels Di Model Point of Contact: LiGuo Huang 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 16 University of Southern California Center for Software Engineering Constructive Product Line Investment Model: COPLIMO • Supports software product line cost estimation and ROI analysis within the scope of product line life cycle • Consists of two components – Product line development cost model – Annualized post-development life cycle extension • Based on COCOMO II software cost model – Statistically calibrated to 161 projects, representing 18 diverse organizations Model Point of Contact: Ye Yang 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 17 University of Southern California Center for Software Engineering COPLIMO Operational Concept For set of products: • Average product size (COCOMO II cost drivers) • Percent missionunique, reused-withmodifications, blackbox reuse COPLIMO • Relative cost of reuse (RCR) and relative cost of writing for reuse (RCWR) factors As functions of # products, # years in life cycle: • Non-product line effort • Product line investment (effort) • Product line savings (ROI) Model Point of Contact: Ye Yang 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 18 University of Southern California Center for Software Engineering Constructive Phased Schedule and Effort Model: COPSEMO • Provides a phased distribution of effort to support incremental rapid application development • Typically used in conjunction with CORADMO • Calculates/predicts the – Schedule (months, M) – Personnel (P) – Adjusted effort (person-months, PM) Model Point of Contact: Winsor Brown 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 19 University of Southern California Center for Software Engineering Constructive Rapid Application Development Model: CORADMO • Calculates/predicts for smaller, rapid application development projects – Schedule – Personnel – Adjusted effort • Allocates effort and schedule to the stages, which are anchored at points in a development life cycle • Scope includes inception, elaboration, and construction • Used in conjunction with COCOMO II and COPSEMO Model Point of Contact: Winsor Brown 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 20 University of Southern California Center for Software Engineering COPSEMO and CORADMO Operational Concept COCOMO II cost drivers (except SCED) Baseline effort and schedule • Reuse and Very High Level Languages • Development Process Reengineering and Streamlining • Collaboration Efficiency • Architecture/Risk Resolution • Prepositioning Assets • RAD Capability and Experience COCOMO II CORADMO Language level, experience,... COPSEMO Effort and schedule by stage • RAD effort • Schedule by phase Model Point of Contact: Winsor Brown 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 21 University of Southern California Center for Software Engineering Constructive Productivity Model: COPROMO • Determines impact of technology investments on model parameter settings • Predicts the most cost effective allocation of investment resources in new technologies intended to improve productivity • Uses COCOMO II, COPSEMO, and CORADMO models as assessment framework – Well-calibrated to 161 projects for effort, schedule – Subset of 106 1990’s projects for current-practice baseline – Extensions for Rapid Application Development formulated Model Point of Contact: Winsor Brown 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 22 University of Southern California Center for Software Engineering COPROMO Operational Concept CORADMO Inputs COCOMO II Inputs COPROMO Graphs COCOMO II CORADMO COPSEMSO Inputs COPSEMO • RAD effort • Schedule by phase Model Point of Contact: Winsor Brown 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 23 University of Southern California Center for Software Engineering Overview of Models • COCOMO II: software development • Emerging COCOMO-Dependent Extensions • Emerging Independent Extensions – COCOTS: software commercial off the shelf – COSYSMO: systems engineering – COSOSIMO: systems of systems • Current Model Status 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 24 University of Southern California Center for Software Engineering Constructive COTS Model: COCOTS • Estimates the effort associated with the integration of Commercial-Off-The-Shelf (COTS) software products • Scope includes inception, elaboration, and construction • Model has four components – – – – Assessment Tailoring “Glue” code System volatility • Effort reported by COCOTS is the sum of the efforts from each of the four components • Can be used in conjunction with COCOMO II to estimate new software development with COTS integration Model Point of Contact: Ye Yang 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 25 University of Southern California Center for Software Engineering COCOTS Operational Concept • # COTS Classes • # Candidates/Class • Tailoring Complexity • Glue code size & cost drivers • COCOMO II application effort (separate from COTS) Assessment Tailoring COCOTS Effort • COTS volatility rework (%) • Rework due to COTS requirements changes (%) “Glue” Code Volatility • Rework due to non-COTS requirements changes (%) Model Point of Contact: Ye Yang 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 26 University of Southern California Center for Software Engineering STAFFING COCOMO vs. COCOTS Cost Sources TIME 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 27 University of Southern California Center for Software Engineering Constructive System Engineering Cost Model: COSYSMO • Covers full system engineering lifecycle (maps to ISO/IEC 15288) Conceptualize Develop Oper Test Transition to & Eval Operation Operate, Maintain, or Enhance Replace or Dismantle Life cycle stages being used in COSYSMO Project • Estimates standard Systems Engineering WBS tasks (based on EIA/ANSI 632) • Developed with USC-CSE Corporate Affiliate sponsorship and INCOSE participation Model Point of Contact: Ricardo Valerdi 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 28 University of Southern California Center for Software Engineering COSYSMO Operational Concept # Requirements # Interfaces # Scenarios # Algorithms + 3 Volatility Factors Size Drivers Effort Multipliers - Application factors -8 factors - Team factors -6 factors - Schedule driver COSYSMO Effort Calibration WBS guided by EIA/ANSI 632 Model Point of Contact: Ricardo Valerdi 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 29 University of Southern California Center for Software Engineering COSYSMO Effort Multipliers • Application Factors – – – – – – • Team Factors Requirements understanding Architecture complexity Level of service requirements Migration complexity Technology Maturity Documentation Match to Life Cycle Needs – # and Diversity of Installations/Platforms – # of Recursive Levels in the Design – Stakeholder team cohesion – Personnel/team capability – Personnel experience/continuity – Process maturity – Multisite coordination – Tool support Model Point of Contact: Ricardo Valerdi 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 30 University of Southern California Center for Software Engineering Constructive System-of-System Cost Model: COSOSIMO • Parametric model to estimate the effort associated with the definition and integration of software-intensive “system of systems” components – – – – – – SoS abstraction Architecting Source selection Systems acquisition Integration and test Change management effort • Includes at least one size driver and 6 exponential scale factors related to effort • Targets input parameters that can be determined in early phases Model Point of Contact: Jo Ann Lane 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 31 University of Southern California Center for Software Engineering COSOSIMO Operational Concept Size Drivers • Interface-related eKSLOC • Number of logical interfaces at SoS level • Number of operational scenarios • Number of components Exponential Scale Factors • • • • • • Integration simplicity Integration risk resolution Integration stability Component readiness Integration capability Integration processes COSOSIMO SoS Definition and Integration Effort Calibration Model Point of Contact: Jo Ann Lane 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 32 University of Southern California Center for Software Engineering Overview of Models • • • • COCOMO II: software development Emerging COCOMO-Dependent Extensions Emerging Independent Extensions Current Model Status 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 33 University of Southern California Center for Software Engineering USC-CSE Modeling Methodology Analyze existing literature Step 1 Concurrency and feedback implied… Perform Behavioral analyses Step 2 Identify relative significance Step 3 Perform expert-judgment Delphi assessment, formulate a-priori model Step 4 Gather project data Determine Bayesian Step 5 A-Posteriori model Step 6 Gather more data; refine model Step 7 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 34 University of Southern California Center for Software Engineering Status of Models 1 Significant Delphi Data, Variables Bayesian Tool Model Literature Behavior COCOMO II * * * * >200 Product COQUALMO * * * * 6 Excel iDAVE Excel COPLIMO Excel COPSEMO * * CORADMO * * * COPROMO * * * * COCOTS * * * * 20 Excel COSYSMO * * * * 11 Excel COSOSIMO1 * * * n/a Excel n/a Excel 16 Excel Excel Literature, behavior, and variable analysis limited due to number of available SoS’ to evaluate 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 35 University of Southern California Center for Software Engineering Agenda • • • • • • Unification Concepts Overview of Models Key Issues Summary of Unification Analysis Performed to Date DBA COCOMO Prototype Demo Next Steps 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 36 University of Southern California Center for Software Engineering Discussion Questions from Initial Workshop 1. What does a unified model mean? Front end to specific system structure 2. Which models in the COCOMO suite should be included in the unified version? 3. What is the unified model development framework/vision? 4. How should the unified model evolve? – Top down approach, starting with a more comprehensive framework – Bottoms up approach, starting with the easier model(s) 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 37 University of Southern California Center for Software Engineering Discussion Questions from Initial Workshop (continued) 5. When current models are used separately: – What is missed for the larger development effort? – What is double counted? 6. How are extensions treated? (or What framework constructs are needed to support extensions that may apply to only parts of effort to be estimated?) 7. How de we mix actuals and estimates together for incremental updates? 8. What is not included in these models? 9. How can we get something that we can easily validate? 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 38 University of Southern California Center for Software Engineering Main Issues For each individual model as well as the unified model: 1. 2. 3. 4. 5. 6. 7. 8. 9. Objectives & Strategies Inputs/scope of work Output/scope of estimate Assumptions of each model Stakeholders for each model Counting Rules Sponsorship (FCS, Model-Based Acq.) PhD dissertation critical mass Data sources 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 39 University of Southern California Center for Software Engineering Issue #1: Objectives & Strategies • First pass and future enhancements • Framework (Goal-Quality-Metric model approach) • Restate objectives for existing models – – – – – – COCOMO II COCOTS COSYSMO COSOSIMO CORADMO COQUALMO • Develop objectives for unified cost model • Operational scenario(s) for each model 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 40 University of Southern California Center for Software Engineering Issue #2: Inputs/scope of work • Need to define on several levels – To determine scope of work to be estimated – To determine system of interest/viewpoint and system component characteristics – To determine specific sub-model inputs • Life cycle model • Single user interface • A single definition for each parameter/driver (eg. TEAM, PMAT, etc.) vs, context-specific definitions for parameters with common names across models • Need to determine which “components” can be estimated as relatively independent pieces vs. tightly coupled components 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 41 University of Southern California Center for Software Engineering Issue #3: Output/scope of estimate • Single value for all integrated models (default 152 hours per person-month) – Normalized PM for calibration • Backward compatibility to existing models • What set of “bins” should be used for initial effort outputs? • What additional levels of granularity should be provided? – – – – – By phase/stage? By labor category? By activities? Break out by sub-models? Increments? (i.e., COINCOMO) • How will an Integrated Master Schedule be developed? • Effort & schedule as a function of risk • Projected productivity 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 42 University of Southern California Center for Software Engineering Issue #4: Assumptions of each model Model Life Cycle Stages COCOMO II COCOTS COSYSMO COSOSIMO 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 43 University of Southern California Center for Software Engineering Issue #5: Users for each model Acquirers, SW developers, estimators, systems engineers, managers, executives, or accountants who are interested in: – – – – – Software development (COCOMO II) Commercial off the shelf software (COCOTS) Systems engineering (COSYSMO) Software quality (COQUALMO) Software rapid application development (COPSEMO, CORADMO) – Software system of systems integration (COSOSIMO) – ROI/Investment analysis (iDave, COPLIMO) 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 44 University of Southern California Center for Software Engineering Issue #6: Counting Rules & Definitions • Inputs – Size drivers (VHLLs, FPs, APs, Use Case Points, KSLOC, REQS, ALG, I/F, SCEN, Components, etc.) – Model inputs (cost drivers, scale factors) • Outputs – Effort distributions • Phase, activity, or labor categories – – – – – Schedule Defects $ cost Risk Productivity 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 45 University of Southern California Center for Software Engineering Agenda • • • • Unification Concepts Overview of Models Key Issues Summary of Unification Analysis Performed to Date – Model Comparisons – Example: How Current Models Used Together Today • DBA COCOMO Prototype Demo • Next Steps 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 46 University of Southern California Center for Software Engineering High Level Partitioning of Cost Models COSOSIMO SOS Architecting System of System Integration/Test COSYSMO System Architecting Software Requirements Analysis System Integration/Test COCOMO II Preliminary Design Software Acceptance Test Integration Detailed Design Unit Test Legend COCOTS 26 October 2004 Coding COCOMO II Unification Tutorial ©USC-CSE COCOMO COSYSMO COSOSIMO 47 University of Southern California Center for Software Engineering COCOMO Suite: Sizing Reuse Volatility Complexity Components Algorithms Module X X CORADMO X X X X COQUALMO X X X X X X X X X X X COSYSMO X COSOSIMO Glue COCOTS Glue 26 October 2004 Scenarios Module Interfaces FP + Lang Requirements SLOC COCOMO II Model X X X X Glue? COCOMO II Unification Tutorial ©USC-CSE X X 48 University of Southern California Center for Software Engineering COCOMO Suite: Derivative Models X COPLIMO X iDAVE X Agile COCOMO II X Risk Analysis X Incremental Development X 26 October 2004 Modules COPROMO COCOMO II – Maintenance X COQUALMO COPSEMO CORADMO COCOMO II Model X Reuse category X X COCOMO II Unification Tutorial ©USC-CSE 49 University of Southern California Center for Software Engineering COCOMO Suite: Phase/Activity Distribution Model Inception Elaboration Construction Transition COCOMO II COQUALMO iDAVE COPLIMO COPSEMO CORADMO COPROMO COCOTS COSYSMO COSOSIMO 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 50 University of Southern California Center for Software Engineering COCOMO Suite: Quantities Estimated Effort Effort by Phase Schedule COCOMO II X X X COQUALMO X Model X Defects Improvement Graphs X iDAVE X COPLIMO X COPSEMO X X X CORADMO X X X COPROMO X X COCOTS X COSYSMO X COSOSIMO X 26 October 2004 ROI X COCOMO II Unification Tutorial ©USC-CSE X 51 University of Southern California Center for Software Engineering Additional Analysis in Progress • Cost Drivers • Scale Factors 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 52 University of Southern California Center for Software Engineering How Current Models Used Together Today: 9-1-1 Example* SBC/PacBell Network Hub 911 Dispatch Center COCOMO COCOMO COSYSMO COSYSMO COCOMO COSYSMO COSOSIMO * Unification Paper 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 53 University of Southern California Center for Software Engineering For additional information on analysis, see Steps Toward Model Unification for Software, Systems Engineering, and Systems of Systems in Conference Proceedings 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 54 University of Southern California Center for Software Engineering Agenda • • • • • • Unification Concepts Overview of Models Key Issues Summary of Unification Analysis Performed to Date DBA COCOMO Prototype Demo Next Steps 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 55 University of Southern California Center for Software Engineering DBA COCOMO Prototype Demo 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 56 University of Southern California Center for Software Engineering Next Steps 1. 2. Workshop: Develop/refine group vision for the unified model Develop framework for the model a. b. 3. Coordination of activities with: a. b. 4. Complete investigations in USC CS577a Fall 2004 project and analyze data collected Using results of workshop and CS577a project, develop framework and roadmap for achieving unification DBA COCOMO (Brown) COCOST (Clark & Clark) Develop and track action items for future work 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 57 University of Southern California Center for Software Engineering Conceptual View of Unified Model: Initial Efforts COSOSIMO COSYSMO COSIZEMO COCOMOII/ COQUALMO COCOTS 26 October 2004 COCOMOII extensions •RAD, security •Incremental, phase/activity •Agile, risk, Monte Carlo •ROI (product line, dependability) •Maintenance COCOMO II Unification Tutorial ©USC-CSE Overlap Resolver 58 University of Southern California Center for Software Engineering Long Term Vision COSOSIMO COSYSMO Unified Interface COCOMOII extensions •RAD, security •Incremental, phase/activity •Agile, risk, Monte Carlo •ROI (product line, dependability) •Maintenance COCOMOII/ COQUALMO COCOTS Output Analysis and Report Generation Unified Model 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 59 University of Southern California Center for Software Engineering SYSTEM LEVEL COSYSMO/SoSI = COSOSIMO/SoSI COSOSIMO/Software COSYSMO COCOMOII SYSTEM LIFE CYCLE PHASE 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 60 University of Southern California Center for Software Engineering References • • • • • • • • Abts, C., Extending The COCOMO II Software Cost Model To Estimate Effort And Schedule For Software Systems Using Commercial-off-theshelf (COTS) Software Components: The COCOTS Model, USC PhD dissertation, May 2004 Boehm, B. W., et al, Software Cost Estimation with COCOMO II, Prentice Hall, 2000. Chulani, "Bayesian Analysis of Software Cost and Quality Models“, USC PhD dissertation, April 1999. Clark, B., Clark, B., “Early COCOTS”, September 2004. Lane, J. “Constructive Cost Model for System-of-System Integration,” 3rd ACM-IEEE International Symposium on Empirical Software Engineering, Redondo Beach, CA, August, 2004 Shroder, R., “Integrated Cost Estimation”, http://www.fti-net.com/AS/ice/ Stump, E., “Estimating System Level Costs”, Galorath E-Journal, Vol. 14, June 2004 Valerdi, R., Boehm, B., Reifer, D., “COSYSMO: A Constructive Systems Engineering Cost Model Coming Age,” Proceedings, 13th Annual INCOSE Symposium, Crystal City, VA. July 2003. 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE 61