COCOMO Suite - PowerPoint PPT Presentation

1 / 113
About This Presentation
Title:

COCOMO Suite

Description:

Title: No Slide Title Author: csews Last modified by: A Winsor Brown Created Date: 8/3/1998 5:48:34 PM Document presentation format: On-screen Show – PowerPoint PPT presentation

Number of Views:230
Avg rating:3.0/5.0
Slides: 114
Provided by: Cse71
Category:

less

Transcript and Presenter's Notes

Title: COCOMO Suite


1
COCOMO Suite
Ray MadachyA Winsor Brown AWBrown,
Madachy_at_usc.edu CSCI 510 September 24, 2008
2
Agenda
  • COCOMO II refresher
  • Modeling methodology and model status
  • Suite overview
  • Emerging extensions
  • Model unification
  • Addendum selected model details
  • References and further information

3
COCOMO II Overview
  • Software product size estimate
  • Software product, process, computer, and personal
    attributes
  • Software reuse, maintenance, and increment
    parameters
  • Software organizations Project data

COCOMO
  • Software development and maintenance
  • Costs (effort)
  • Schedule estimates
  • Distributed by phase, activity, increment

COCOMO locally calibrated to organizations data
4
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

5
COCOMO II Model Stages
6
COCOMO II Scope of Outputs
  • Provides the estimated software development
    effort and schedule for MBASE/RUP
  • Elaboration
  • Construction

LCO
LCA
IOC
7
Agenda
  • COCOMO II refresher
  • COCOMO II in modern SysDLCs
  • Modeling methodology and model status
  • Suite overview
  • Emerging extensions
  • Model unification
  • Addendum selected model details
  • References and further information

8
COCOMO II in Modern SysDLCs
  • COCOMO I for Waterfall
  • COCOMO II for MBASEICM/RUP
  • Allows Waterfall as a subset
  • MBASE ICM recognize
  • Concurrent Engineering/Activities
  • System vs. Software in Software Intensive Systems
  • Phases beyond Elaboration and Construction
    Architecting and Implementing
  • See separate presentationEC-09b(SDLCsIntro)V2.do
    c

9
Agenda
  • COCOMO II refresher
  • Modeling methodology and model status
  • Suite overview
  • Emerging extensions
  • Model unification
  • Addendum selected model details
  • References and further information

10
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
11
Status of Models
Model Docd Literature Behavior Significant Variables Expert Delphi Data, Bayesian Tool
COCOMO II SwCEwCII gt161, Y Product
COPSEMO SwCEwCII TimeofLCA? Excel COINCOMO
CORADMO SwCEwCII 10, N Excel
COPROMO SwCEwCII Excel
COQUALMO SwCEwCII 6, Y Excel
COCOTS SwCEwCII 20, N Excel
iDAVE PhD Thesis Excel
COPLIMO PhD Thesis Excel
COSECMO COINCOMO
COSYSMO PhD Thesis 42, N Excel
COSOSIMO Excel
12
General COCOMO Form
PM A (? Size)?B ?(EM)
Where PM Person Months A calibration
factor Size measure(s) of functional size of
a software module that has an additive effect on
software development effort B scale factor(s)
that have an exponential or nonlinear effect on
software development effort EM effort
multipliers that influence software development
effort
13
Agenda
  • COCOMO II refresher
  • Modeling methodology and model status
  • Suite overview
  • Emerging extensions
  • Model unification
  • Addendum selected model details
  • References and further information

14
COCOMO Suite Quantities Estimated
Model Effort Effort by Phase Schedule Defects ROI Improvement Graphs
COCOMO II X X X
COQUALMO X X X
iDAVE X
COPLIMO X X
CORADMO X X X
COPROMO X X X
COCOTS X
COSYSMO X
COSOSIMO X
15
COCOMO Suite Sizing
Model SLOC FP Lang Requirements Interfaces Scenarios Algorithms Components Complexity Reuse Volatility
COCOMO II Module Module X X
CORADMO X X X X
COQUALMO X X X X
COSYSMO X X X X X X X
COSOSIMO Glue X X X X X X
COCOTS Glue Glue X
16
COCOMO Suite Phase/Activity Distribution
Model Inception Inception Elaboration Elaboration Construction Construction Transition
COCOMO II
COQUALMO
iDAVE
COPLIMO
CORADMO
COPROMO
COCOTS
COSYSMO
COSOSIMO
17
Typical Model Usage
18
High Level Partitioning of Cost Models
COSOSIMO
SOS
System of System
Architecting
COSYSMO
Integration/Test
System
System Integration/Test
Architecting
Requirements Analysis
Software
Software Acceptance Test
COCOMO II
Preliminary Design
Integration
Detailed Design
Unit Test
Coding
COCOTS
19
Agenda
  • COCOMO II refresher
  • Modeling methodology and model status
  • Suite overview
  • Emerging extensions
  • Model unification
  • Addendum selected model details
  • References and further information

20
Emerging Extensions
  • COCOMO-Dependent Extensions
  • COQUALMO software quality
  • iDAVE software dependability
  • COPLIMO product line investment
  • CORADMO rapid application software development
  • COPROMO productivity improvement
  • Emerging Independent Extensions
  • COCOTS software commercial off the shelf
  • COSYSMO systems engineering
  • COSOSIMO systems of systems
  • Dynamic COCOMO dynamic vs. static modeling

21
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

22
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
23
COQUALMO Defect Removal Rating Scales
24
COQUALMO Defect Removal Estimates - Nominal
Defect Introduction Rates
Delivered Defects / KSLOC
Composite Defect Removal Rating
25
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

26
iDAVE Operational Concept
27
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

28
COPLIMO Operational Concept
COPLIMO
  • 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
  • As functions of
  • products, years in
  • life cycle
  • Non-product line effort
  • Product line investment (effort)
  • Product line savings (ROI)

29
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

30
Where, What How
  • Where is CORADMO along the USC-CSSE Cost
    Estimating Modeling Methodology
  • CORADMO drivers
  • Illustrated need for COPSEMO

31
USC-CSSE Cost Estimating 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
32
CORADMO Factors
  • Reuse and Very High Level Languages
  • Development Process Reengineering and
    Streamlining
  • Collaboration Efficiency
  • Architecture/Risk Resolution
  • Prepositioning Assets
  • RAD Capability and Experience

33
CORADMO Driver ExampleArchitecture / Risk
Resolution (RESL)
  • Same as COCOMO II RESL rating scale
  • Enables parallel construction
  • Assumes higher level of staffing available and
    used
  • Otherwise no schedule compression

34
MBASE/RUP Concurrent Activities
35
RUP Instructional ICM for Sw Phase
Distributions
36
COPSEMO Distributes Effort Schedule
37
COPSEMO Demo
  • Done live in Class based on CSCI 577a
  • See CSCI 577a Tutorials (soon) for update

38
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 1990s projects for
    current-practice baseline
  • Extensions for Rapid Application Development
    formulated

39
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

40
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
Volatility via COCOMOII
Glue Code
41
COCOMO vs. COCOTS Cost Sources

42
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
Replace or Dismantle
Transition to Operation
Oper Test Eval
Develop
43
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
44
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

45
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

46
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
47
Agenda
  • COCOMO II refresher
  • Modeling methodology and model status
  • Suite overview
  • Emerging extensions
  • Model unification
  • Addendum selected model details
  • References and further information

48
Model Unification 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

49
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

50
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

51
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

52
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

53
Issue 4 Assumptions of each model
Model Life Cycle Stages
COCOMO II COCOTS COSYSMO COSOSIMO
54
Integration of Life Cycle Stages
55
Vision for COINCOMO
56
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)

57
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

58
Additional Analysis in Progress
  • Cost Drivers
  • Scale Factors

59
Long Term Vision
60
Agenda
  • COCOMO II refresher
  • Modeling methodology and model status
  • Suite overview
  • Emerging extensions
  • Model unification
  • Addendum selected model details
  • COCOTS
  • COPLIMO
  • COSYSMO
  • COSOSIMO
  • References and further information

61
COTS Software Integration Lifecycle
  • COTS Software Integration Lifecycle
  • 1) Qualify COTS product
  • 2) Perform system requirements
  • 3) Administer COTS software acquisition
  • 4) Prototype the system including COTS software
  • 5) Fully integrate COTS software and interface
    code
  • 6) Test completed prototype

62
COTS Integration Sources of Effort
  • COTS Assessment (pre- and post- commitment)
  • Of functionality, performance, interoperability,
    etc.
  • COTS Tailoring and Tuning
  • Effects of platform, other COTS products
  • Glue Code Development
  • Similar to other Cost Xpert estimation
  • Application Volatility Due to COTS
  • COTS volatility, shortfalls, learning curve
  • Added Application VV Effort
  • COTS option and stress testing
  • Debugging complications, incorrect fixes

63
Traditional vs. COTS Cost Sources
  • LCO/
  • Reqts.
  • Review
  • LCA/
  • Design Review
  • IOC/
  • Beta Test

3) COTS/Application Glue Code Development and
Test
1) COTS Assessment
2) COTS Tailoring
Staffing
Application Code Development
4) Increased Application Effort due to COTS
Volatility
Time
64
Current Scope of COTS Model
  • COTS model covers
  • assessment
  • tailoring
  • glue code development and integration
  • impact of new releases (volatility)
  • It does not cover
  • cost of re-engineering business processes
  • vendor management
  • licenses
  • training (for COTS integrators or end users)
  • COTS platform or tool experience or maturity
  • Covered by PLEX, LTEX, PVOL, TOOL environmental
    factors

65
Assessment Effort Inputs
  • Initial Filtering of COTS products
  • estimate of the total number of candidate COTS
    components to be filtered
  • More detailed assessment of specific candidates
    against attributes that are important
  • class(es) of COTS components to be assessed
  • for each class,
  • number assessed
  • attributes considered

66
Assessment Submodel
Initial Filtering Effort (IFE)
)
(
)
(
S
Average Filtering Effort for product class
COTS Candidates in class filtered
Over all classes
Detailed Assessment Effort (DAE)
)
(
)
(
S
Average Assessment Effort for product class
COTS Candidates in class detailed assessed
Over all classes, by project domain
Qualified by assessment attributes most
associated with that class
Final Project Assessment Effort (FPAE) IFE DAE
67
Assessment Attributes
68
Tailoring Effort Inputs
  • COTS tailoring - activities required to prepare
    or initialize a component for use in a specific
    system
  • Tailoring includes
  • parameter specification
  • script writing
  • GUI screen specification
  • Report specification
  • Security/Access Protocol initialization and set
    up
  • For each class of COTS component,
  • rate the complexity of tailoring for each of the
    above activities

69
Tailoring Submodel
where
TCQr,class Tailoring Complexity Qualifier,
calibrated within a class, for each of
five possible ratings from Very Low to Very
High, and with the
TCQNOMINAL 1.0
70
Tailoring Complexity Table
71
Glue Code Inputs
  • Definition of glue code
  • code needed to facilitate data or information
    exchange between the COTS component and the
    system into which it is being integrated
  • code needed to provide required functionality
    missing in the COTS component AND which depends
    on or must interact with the COTS component
  • Estimate of the total delivered lines of glue
    code
  • Estimate of glue code rework due to COTS
    volatility or requirements volatility

72
Glue Code Inputs (continued)
  • Integration Personnel
  • Integrator experience with product (VL - VH)
  • Integrator personnel capability (VL - VH)
  • Integrator experience with COTS integration
    process (L - VH)
  • Integrator personnel continuity (VL - VH)
  • COTS Component
  • COTS product maturity (VL - VH)
  • COTS supplier product extension willingness (L -
    VH)
  • COTS product interface complexity (L - VH)
  • COTS supplier product support (L - VH)
  • COTS supplier provided training and documentation
    (VL - VH)

73
Glue Code Inputs (continued)
  • Application/System
  • Constraints on system/subsystem reliability (L -
    VH)
  • Constraints on system/subsystem technical
    performance (N-VH)
  • System portability (N - VH)
  • Application architectural engineering (VL - VH)

74
Glue Code Submodel
  • A - a linear scaling constant
  • Size - of the glue code in SLOC or FP
  • Breakage - of the glue code due to change in
  • requirements and/or COTS volatility
  • Effort Multipliers - 13 parameters, each with
    settings
  • ranging VL to VH
  • B - an architectural scale factor with settings
    VL to VH

75
Glue Code Cost Drivers
76
Volatility Inputs
  • Captures impact of new COTS releases on the
    custom/new application effort
  • Inputs
  • Estimate of new development effort (derived via
    Cost Xpert - traditional)
  • Percentage of new development rework due to
  • requirements changes
  • COTS volatility
  • Note This submodel is being revised

77
Volatility Submodel
Approximate Model Detailed Model with Cost
Xpert Parameters BRAK COTS application
code breakage due to COTS volatility BRAK
application code breakage otherwise S
Cost Xpert scale factor EAF
Effort Adjustment Factor (product of
effort multipliers)

78
Total COTS Integration Cost Estimate
xTotal Integration Effort (in Person-Months)
Assessment Effort Tailoring Effort Glue
Code Effort Volatility Effort where
Assessment Effort Filtering Effort Final
Selection Effort Total integration Cost
(Total Integration Effort) (/Person-Month)
79
Agenda
  • COCOMO II refresher
  • Modeling methodology and model status
  • Suite overview
  • Emerging extensions
  • Model unification
  • Addendum selected model details
  • COCOTS
  • COPLIMO
  • COSYSMO
  • COSOSIMO
  • References and further information

80
COPLIMO Background
  • Benefits vs. Costs of product line
  • Does product line pay off?
  • Traditional product line cost estimation models
    mostly underestimate the ROI for product lines by
    focusing only on development savings
  • Apply RCWR surcharge to entire product not only
    to the reused portions
  • If life cycle costs are considered, high payoff
    comes from a smaller code base to undergo
    maintenance
  • COPLIMO life cycle model
  • Addresses the shortfalls with a representative
    set of parameters based on experience in aircraft
    and spacecraft product line domains
  • Based on COCOMO II parameters calibrated to 161
    projects, empirical data on nonlinear reuse
    effects

81
COPLIMO Model Overview
  • Based on COCOMO II software cost model
  • Statistically calibrated to 161 projects,
    representing 18 diverse organizations
  • Based on standard software reuse economic terms
  • RCWR Relative Cost of Writing for Reuse
  • RCR Relative Cost of Reuse
  • Avoids investment overestimation, savings
    underestimation
  • Avoids RCWR for non-reused components
  • Includes savings from smaller life-cycle code
    base
  • Provides experience-based default parameter
    values
  • Simple Excel spreadsheet model
  • Easy to modify, extend, interoperate

82
COPLIMO - RCWR
  • Development for Reuse (RUSE)
  • In COCOMO II database, 11 out of 161 projects
    rated as VH for RUSE, and 1 rated as XH
  • Productivity Range of RUSE
  • Highest rating / Lowest rating 1.24/0.95 1.31
  • And two other contributing variables
  • Required Reliability (RELY)
  • Degree of Documentation (DOCU)

83
COPLIMO RCWR (Cont.)
  • Required Reliability (RELY)
  • Constraints At least Nominal for Nominal and
    High RUSE ratings, at least High for Very High
    and Extra High RUSE ratings
  • Degree of Documentation (DOCU)
  • Constraint No more than one level below the RUSE
    rating

84
COPLIMO RCR
  • Reused, or Black Box (unmodified code) RCR model
  • Assessment and Assimilation (AA) factor
  • Adapted, or White Box (modified code) RCR model
  • AA
  • Non-Linear Model

85
Basic COPLIMO Development Cost Model (1)
  • Simplifying assumptions about uniformity and
    stability
  • Every product roughly the same size (PSIZE)
  • Roughly the same fractions of product-specific
    (PFRAC), adapted (AFRAC), and reused (RFRAC)
    software
  • Inputs and outputs

86
Basic COPLIMO Development Cost Model (2)
  • RCR parameters
  • RCWR
  • RCWR RUSE DOCU RELY
  • 1 product development effort
  • Non-PL Effort for developing N similar products
  • PMNR (N) N ? A? (PSIZE)B ? ? (EM)
  • Where PSIZE is the general software product size,
    A and B are the COCOMO II calibration coefficient
    and scale factor, and ? (EM) is the product of
    the effort multipliers for the COCOMO II cost
    drivers
  • PL Effort (the first product)
  • PMR (1) PMNR (1) PFRAC RCWR(AFRACRFRAC)
  • Note RCWR not applied to non-reused portion,
    where many other models overestimate RCWR

87
(No Transcript)
88
Basic COPLIMO Annualized Life Cycle Cost Model
  • Annual Change Traffic (ACT)
  • Relative fraction of a products software that is
    modified per year
  • Simplifying assumption Constant-ACT
  • Life cycle effort without reuse
  • N complete products undergo maintenance
  • Life cycle effort with reuse
  • PFRAC maintenance for N instances
  • RFRAC maintenance for 1 instance
  • AFRAC maintenance for 1 instance and N-1 variants

89
(No Transcript)
90
(No Transcript)
91
Discussions
  • Software product line payoffs are significant
    esp. across life cycle
  • This does not mean any attempt at product line
    reuse will generate large savings
  • Challenges
  • Technical
  • Domain engineering and product line architecting
  • Management and Culture
  • People unwilling to corporate
  • Not invented here attitudes
  • Success factor empowered product line manager

92
Conclusions
  • Software product line payoffs are significant
    esp. across life cycle
  • COPLIMO avoids investment overestimation
    savings underestimation
  • COPLIMO helps to determine whether and when it
    pays to launch a product line
  • COPLIMO enables assessment of situation-dependenci
    es, hence lead to better product line decisions.
  • Future work
  • Support for more sensitivity analysis
  • Model refinement and calibration
  • Integration with other COCOMO II family models,
    such as COCOTS

93
COPLIMO Backup Charts
94
COPLIMO RCR
  • Reused, or Black Box (unmodified code) RCR model
  • Assessment and
  • Assimilation (AA) factor
  • Adapted, or White Box (modified code) RCR model
  • AA
  • Non-Linear Model

95
Guidelines for Quantifying Adapted Software
96
Basic COPLIMO Development Cost Model (3)
  • Determining RCR
  • Equiv. size of product- specific portion
  • Equiv. size of reused portion
  • Equiv. size of adapted portion
  • Total EKSLOC
  • Effort
  • ROI (PL Effort Savings for K products - PL
    Reuse Investment) / PL Reuse Investment

PMR (N) N ? A? (EKSIZE)B ? ? (EM)
97
Basic COPLIMO Annualized Life Cycle Cost Model
(1)
  • Annual Change Traffic (ACT)
  • Relative fraction of a products software that is
    modified per year
  • Life cycle effort without reuse
  • Annual maintained software
  • L times maintenance effort
  • Life cycle effort with reuse
  • Three categories of annual maintenance and AMSIZE

98
Agenda
  • COCOMO II refresher
  • Modeling methodology and model status
  • Suite overview
  • Emerging extensions
  • Model unification
  • Addendum selected model details
  • COCOTS
  • COPLIMO
  • COSYSMO
  • COSOSIMO
  • References and further information

99
COSYSMO Introduction
  • 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
Replace or Dismantle
Transition to Operation
Oper Test Eval
Develop
100
How is Systems Engineering Defined?
  • EIA/ANSI 632
  • Processes for Engineering a System
  • Acquisition and Supply
  • Supply Process
  • Acquisition Process
  • Technical Management
  • Planning Process
  • Assessment Process
  • Control Process
  • System Design
  • Requirements Definition Process
  • Solution Definition Process
  • Product Realization
  • Implementation Process
  • Transition to Use Process
  • Technical Evaluation
  • Systems Analysis Process
  • Requirements Validation Process
  • System Verification Process
  • End Products Validation Process

101
COSYSMO Operational Concept
Requirements Interfaces Scenarios
Algorithms 3 adjustment factors
Size Drivers
COSYSMO
Effort
Effort Multipliers
  • Application factors
  • 8 factors
  • Team factors
  • 6 factors

Calibration
102
Model Form
Where PMNS effort in Person Months (Nominal
Schedule) A calibration constant derived from
historical project data k REQ, IF, ALG,
SCN wx weight for easy, nominal, or
difficult size driver quantity of k
size driver E represents diseconomy of scale
(currently equals 1) EM effort multiplier for
the jth cost driver. The geometric product
results in an overall effort adjustment factor to
the nominal effort.
103
14 Cost Drivers (Effort Multipliers)
Application Factors (8)
  1. Requirements understanding
  2. Architecture understanding
  3. Level of service requirements
  4. Migration complexity
  5. Technology Maturity
  6. Documentation Match to Life Cycle Needs
  7. and Diversity of Installations/Platforms
  8. of Recursive Levels in the Design

104
14 Cost Drivers (continued)
Team Factors (6)
  1. Stakeholder team cohesion
  2. Personnel/team capability
  3. Personnel experience/continuity
  4. Process maturity
  5. Multisite coordination
  6. Tool support

105
Agenda
  • COCOMO II refresher
  • Modeling methodology and model status
  • Suite overview
  • Emerging extensions
  • Model unification
  • Addendum selected model details
  • COCOTS
  • COPLIMO
  • COSYSMO
  • COSOSIMO
  • References and further information

106
How Much Effort to Integrate a System of Systems?
System of Systems ? person-years (PY)
Sensing 500 PY
Vehicles 500 PY
Common 400 PY
Infrastructure 600 PY
Command Control 1000 PY
  • Systems developed by system contractors
  • Total effort 3000 person-years
  • System of systems integration functions
  • SoS abstraction, architecting, source selection,
    systems acquisition, integration, test, change
    management effort
  • How much to budget for integration?
  • What factors make budget higher or lower?
  • How to develop and validate an estimation model?

107
Constructive System-of-System Integration Cost
Model (COSOSIMO)
  • Parametric model to estimate the effort
    associated with the definition and integration of
    software-intensive system of systems components
  • Includes at least one size driver and 6
    exponential scale factors related to effort
  • Targets input parameters that can be determined
    in early phases
  • Goal is to have zero overlap with COCOMO II and
    COSYSMO

108
COSOSIMO Operational Concept
Size Drivers
  • Interface-related eKSLOC
  • Number of logical interfaces at SoS level
  • Number of components
  • Number of operational scenarios

COSOSIMO
SoS Definition and Integration Effort
Exponential Scale Factors
  • Integration simplicity
  • Integration risk resolution
  • Integration stability
  • Component readiness
  • Integration capability
  • Integration processes

Calibration
  • Each size driver weighted by
  • Complexity
  • Volatility
  • Degree of COTS/reuse

109
COSOSIMO Model Equations
  • Two level model that
  • First determines integration effort
  • for first level subsystems.
  • Then, using subsystem integration
  • effort and SoS characteristics,
  • determines SoS integration effort

SOS
Level 0
Level 1
Sm
S2
S1

S11
S12
S1n
S21
S22
S2n
Sm1
Sm2
Smn



110
COSOSIMO Model Parameters
  • IPM Integration effort in Person Months
  • Si The ith subsystem within the SoS
  • A Constant derived from historical project data
  • Size Determined by computing the weighted
    average of the size driver(s)
  • ni Number of Subsystem level 2 components
    comprising the ith subsystem
  • m Number of Subsystem level 1 components
    comprising the SoS
  • Bi Effort exponent for the ith subsystem based
    on the subsystems 6 exponential scale factors.
    The sum of the scale factors results in an
    overall exponential effort adjustment factor to
    the nominal effort.
  • B0 Effort exponent for the SoS based on the SOS
    6 exponential scale factors. The sum of the scale
    factors results in an overall exponential effort
    adjustment factor to the nominal effort.

111
Agenda
  • COCOMO II refresher
  • Modeling methodology and model status
  • Suite overview
  • Emerging extensions
  • Model unification
  • Addendum selected model details
  • COCOTS
  • COPLIMO
  • COSYSMO
  • COSOSIMO
  • References and further information

112
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
  • B. Boehm, C. Abts, W. Brown, S. Chulani, B.
    Clark, E. Horowitz, R. Madachy, D. Reifer, B.
    Steece, 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
  • 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.
  • Boehm B, Valerdi R Lane J, Brown W, COCOMO Suite
    Methodology and Evolution, Crosstalk, 2005
  • Yang Y, Boehm B, Madachy R, COPLIMO A
    Product-Line Investment Analysis Model,
    Proceedings of the Eighteenth International Forum
    on COCOMO and Software Cost Modeling, USC, Los
    Angeles, CA, October 2003

113
Further Information
  • Main COCOMO website at USC http//sunset.usc.edu/
    research/COCOMOII
  • COCOMO information at USC (213) 740-6470
  • COCOMO email cocomo-info_at_sunset.usc.edu
Write a Comment
User Comments (0)
About PowerShow.com