Download presentation
1
Towards Model Unification:
Integrating the COCOMO Suite 19th Forum on COCOMO and Software Cost Modeling Model Unification Tutorial October 26, 2004 Barry Boehm Ricardo Valerdi Jo Ann Lane Winsor Brown 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
2
COCOMO II Unification Tutorial ©USC-CSE
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
3
Models of Interest & Owners
COCOMOII*^ COQUALMO COCOTS^ COSYSMO Yang Yang COPROMO Yang Valerdi COSOSIMO Brown iDAVE CORADMO Lane Huang Brown COPLIMO Yang COPSEMO Legend: Model has been calibrated with historical project data Model is derived from calibrated models Model has been calibrated with expert (Delphi) data Brown *includes Risk Analyzer, Monte Carlo, Security, Agile, and Incremental versions ^includes Early version 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
4
COCOMO II Unification Tutorial ©USC-CSE
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 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-of-systems integration Adjusted using the appropriate special-purpose extensions 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
5
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
6
COCOMO II Unification Tutorial ©USC-CSE
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
7
COCOMO II Unification Tutorial ©USC-CSE
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
8
COCOMO II Unification Tutorial ©USC-CSE
COCOMO II Overview Software product size estimate Software product, process, computer, and personal attributes Software reuse, maintenance, and increment parameters Software organization’s Project data COCOMO Software development and maintenance: Costs (effort) Schedule estimates Distributed by phase, activity, increment COCOMO locally calibrated to organization’s data 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
9
COCOMO II Unification Tutorial ©USC-CSE
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
10
COCOMO II Unification Tutorial ©USC-CSE
COCOMO II Model Stages 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
11
COCOMO II Scope of Outputs
Provides the estimated software development effort and schedule for MBASE/RUP Elaboration Construction LCO LCA IOC 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
12
COCOMO II Unification Tutorial ©USC-CSE
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
13
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
14
COQUALMO Operational Concept
COCOMO II Software development effort, cost and schedule estimate COQUALMO Software Size Estimate Defect Introduction Model Software platform, Project, product and personnel attributes Number of residual defects Defect density per unit of size Defect Removal Model Defect removal profile levels Automation, Reviews, Testing Model Point of Contact: Ye Yang 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
15
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
16
iDAVE Operational Concept
Model Point of Contact: LiGuo Huang 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
17
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
18
COPLIMO Operational Concept
For set of products: Average product size (COCOMO II cost drivers) Percent mission-unique, reused-with-modifications, black-box reuse Relative cost of reuse (RCR) and relative cost of writing for reuse (RCWR) factors COPLIMO 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
19
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
20
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
21
COPSEMO and CORADMO Operational Concept
Reuse and Very High Level Languages Development Process Reengineering and Streamlining Collaboration Efficiency Architecture/Risk Resolution Prepositioning Assets RAD Capability and Experience Baseline effort and schedule COCOMO II cost drivers (except SCED) COCOMO II CORADMO COPSEMO Language level, experience,... 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
22
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 ’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
23
COPROMO Operational Concept
Evolution Over Time COPROMO Graphs CORADMO Inputs COCOMO II COCOMO II Inputs CORADMO COPSEMO COPSEMSO Inputs RAD effort Schedule by phase Model Point of Contact: Winsor Brown 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
24
COCOMO II Unification Tutorial ©USC-CSE
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
25
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
26
COCOTS Operational Concept
# COTS Classes # Candidates/Class Tailoring Complexity Glue code size & cost drivers COCOMO II application effort (separate from COTS) COTS volatility rework (%) Rework due to COTS requirements changes (%) Rework due to non-COTS requirements changes (%) Assessment Tailoring COCOTS Effort “Glue” Code Volatility Model Point of Contact: Ye Yang 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
27
COCOMO vs. COCOTS Cost Sources
STAFFING TIME 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
28
Constructive System Engineering Cost Model: COSYSMO
Covers full system engineering lifecycle (maps to ISO/IEC 15288) 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 Conceptualize Operate, Maintain, or Enhance Transition to Operation Replace or Dismantle Oper Test & Eval Develop Model Point of Contact: Ricardo Valerdi 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
29
COSYSMO Operational Concept
# Requirements # Interfaces # Scenarios # Algorithms + 3 Volatility Factors Size Drivers COSYSMO Effort Effort Multipliers Application factors 8 factors Team factors 6 factors Schedule driver Calibration WBS guided by EIA/ANSI 632 Model Point of Contact: Ricardo Valerdi 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
30
COSYSMO Effort Multipliers
Application 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 Team Factors 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
31
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 COSOSIMO Model Point of Contact: Jo Ann Lane 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
32
COSOSIMO Operational Concept
Size Drivers Interface-related eKSLOC Number of logical interfaces at SoS level Number of operational scenarios Number of components COSOSIMO SoS Definition and Integration Effort Exponential Scale Factors Integration simplicity Integration risk resolution Integration stability Component readiness Integration capability Integration processes Calibration Model Point of Contact: Jo Ann Lane 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
33
COCOMO II Unification Tutorial ©USC-CSE
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
34
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 Step 5 Determine Bayesian A-Posteriori model Step 6 Gather more data; refine model Step 7 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
35
Significant Variables
Status of Models Model Literature Behavior Significant Variables Delphi Data, Bayesian Tool COCOMO II * >200 Product COQUALMO 6 Excel iDAVE n/a COPLIMO COPSEMO CORADMO 16 COPROMO COCOTS 20 COSYSMO 11 COSOSIMO1 1 Literature, behavior, and variable analysis limited due to number of available SoS’ to evaluate 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
36
COCOMO II Unification Tutorial ©USC-CSE
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
37
Discussion Questions from Initial Workshop
What does a unified model mean? Front end to specific system structure Which models in the COCOMO suite should be included in the unified version? What is the unified model development framework/vision? 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
38
Discussion Questions from Initial Workshop (continued)
When current models are used separately: What is missed for the larger development effort? What is double counted? How are extensions treated? (or What framework constructs are needed to support extensions that may apply to only parts of effort to be estimated?) How de we mix actuals and estimates together for incremental updates? What is not included in these models? How can we get something that we can easily validate? 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
39
COCOMO II Unification Tutorial ©USC-CSE
Main Issues For each individual model as well as the unified model: 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
40
Issue #1: Objectives & Strategies
First pass and future enhancements Framework (Goal-Question-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
41
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
42
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
43
Issue #4: Assumptions of each model
Model Life Cycle Stages COCOMO II COCOTS COSYSMO COSOSIMO 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
44
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
45
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
46
COCOMO II Unification Tutorial ©USC-CSE
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
47
COCOMO II Unification Tutorial ©USC-CSE
COCOMO Suite: Sizing Model SLOC FP + Lang Requirements Interfaces Scenarios Algorithms Components Complexity Reuse Volatility COCOMO II Module X CORADMO COQUALMO COSYSMO COSOSIMO Glue COCOTS Glue? 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
48
COCOMO Suite: Derivative Models
COCOMO II CORADMO COQUALMO COCOMO II – Maintenance Modules COPSEMO X COPROMO COPLIMO Reuse category iDAVE Agile COCOMO II Risk Analysis Incremental Development 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
49
COCOMO Suite: Phase 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
COCOMO Suite: Quantities Estimated
Model Effort Effort by Phase Schedule Defects ROI Improvement Graphs COCOMO II X COQUALMO iDAVE COPLIMO COPSEMO CORADMO COPROMO COCOTS COSYSMO COSOSIMO 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
51
Additional Analysis in Progress
Cost Drivers Scale Factors 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
52
How Current Models Used Together Today: 9-1-1 Example*
911 Dispatch Center SBC/PacBell Network Hub COSOSIMO COSYSMO COCOMO * Unification Paper 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
53
COCOMO II Unification Tutorial ©USC-CSE
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
COCOMO II Unification Tutorial ©USC-CSE
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
DBA COCOMO Prototype Demo
26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
56
COCOMO II Unification Tutorial ©USC-CSE
Next Steps Workshop: Develop/refine group vision for the unified model Develop framework for the model 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 Coordination of activities with: DBA COCOMO (Brown) COCOST (Clark & Clark) Develop and track action items for future work 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
57
Conceptual View of Unified Model: Initial Efforts
COSIZEMO COSOSIMO COSYSMO COCOMOII/ COQUALMO COCOTS COCOMOII extensions RAD, security Incremental, phase/activity Agile, risk, Monte Carlo ROI (product line, dependability) Maintenance Overlap Resolver 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
58
COCOMO II Unification Tutorial ©USC-CSE
Long Term Vision Unified Interface COSOSIMO COSYSMO COCOMOII/ COQUALMO COCOTS COCOMOII extensions RAD, security Incremental, phase/activity Agile, risk, Monte Carlo ROI (product line, dependability) Maintenance Output Analysis and Report Generation Unified Model 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
59
SYSTEM LIFE CYCLE PHASE
COSYSMO/SoSI = COSOSIMO/SoSI COSOSIMO/Software SYSTEM LEVEL COCOMOII COSYSMO SYSTEM LIFE CYCLE PHASE 26 October 2004 COCOMO II Unification Tutorial ©USC-CSE
60
COCOMO II Unification Tutorial ©USC-CSE
References Abts, C., Extending The COCOMO II Software Cost Model To Estimate Effort And Schedule For Software Systems Using Commercial-off-the-shelf (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”, 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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.