Top Banner
1 ESD web seminar ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. [email protected] Unification of systems and software engineering cost models
30

ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. [email protected] Unification of systems and software engineering cost models.

Dec 27, 2015

Download

Documents

Marjorie Pope
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

1ESD web seminar

ESD Web SeminarFebruary 23, 2007

Ricardo Valerdi, [email protected]

Unification of systems and software engineering

cost models

Page 2: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

2ESD web seminar

• MIT Lean Aerospace Initiative• USC CSSE Corporate Affiliate Program• Lockheed Martin, BAE Systems, Northrop Grumman,

SAIC, Raytheon, General Dynamics, L-3 Communications, Boeing

• INCOSE– Measurement Working Group– Corporate Advisory Board

• Practical Software & Systems Measurement (US Army)• US Air Force Space & Missile Systems Center

Cost Modeling Development Support

Page 3: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

3ESD web seminar

• Cost estimation 101

• COCOMO & COSYSMO

• Activities & Phases

• Integration issues

• Next steps

Roadmap

Page 4: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

4ESD web seminar

My Purpose in Life

To help people reason about their

economic decisions related to

software and systems engineering

Page 5: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

5ESD web seminar

Cost Estimation Approaches1. Parametric cost modeling

– historical data

2. Expert judgment – Grey beards

3. Analogy – Compare with completed projects

4. Parkinson's Law – determined by available resources rather than by objective

assessment

5. Pricing to win – whatever the customer has available

6. Top- down estimation – decompose logical function

7. Bottom- up estimation– Roll up

Page 6: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

6ESD web seminar

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)

Page 7: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

7ESD web seminar

COCOMO II COSYSMO

Estimates Software development Systems engineering

Estimates size via Thousands of Software Lines of Code (KSLOC), Function Points, or Application Points

Requirements, Interfaces, Algorithms, and Operational Scenarios

Life cycle phases MBASE/RUP Phases: (1) Inception, (2) elaboration, (3) construction, and (4) transition

ISO/IEC 15288 Phases: (1) Conceptualize, (2) Develop, (3) Operation, Test, and Evaluation, (4) Transition to Operation, (5) Operate Maintain or Enhance, and (6) Replace or dismantle.

Form of the model 1 size factor, 5 scale factors, and 18 effort multipliers

4 size factors, 1 scale factor, 14 effort multiplier

Represents diseconomy of scale through

Five scale factors One exponential system factor

Page 8: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

8ESD web seminar

COCOMO II• COCOMO is the most widely used, thoroughly

documented and calibrated software cost model

• COCOMO - the “COnstructive COst MOdel”– COCOMO II is the update to COCOMO 1981– ongoing research with annual calibrations

made available • Originally developed by Dr. Barry Boehm and

published in 1981 book Software Engineering Economics

• COCOMO II described in Software Cost Estimation with COCOMO II (Prentice Hall 2000)

Page 9: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

9ESD web seminar

COCOMO II Phases & ModesRational Unified Process (RUP)• Inception

• Elaboration• Construction• Transition

Modes• Early design• Post-architecture

Page 10: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

10ESD web seminar

COCOMO Parametric Cost Estimating Relationship

Where: A = constant derived from historical project data Size = software size measured in SLOC, FPs, or APs SF = scale factorEM = effort multiplier

Page 11: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

11ESD web seminar

Software Sizing• Alternative #1: Lines of Code

– High Order Language LOC– Source LOC– Delivered SLOC

• Not a uniform metric• Productivity across languages (backfire ratios)

• Alternative #2: Function-based metrics– Function points– Application points

Page 12: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

12ESD web seminar

Scale Factors

Page 13: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

13ESD web seminar

Effort Multipliers• Product attributes

– Required software reliability (RELY)– Database size (DATA)– Documentation match to life-cycle needs (DOCU)– Product complexity (CPLX)– Required Reusability (RUSE)

Page 14: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

14ESD web seminar

Effort Multipliers (cont.)• Platform attributes

– Execution time constraint (TIME)– Main storage constraint (STOR)– Platform volatility (PVOL)

• Personnel attributes– Analyst capabilities (ACAP)– Applications experience (AEXP)– Programmer capabilities (PCAP)– Platform experience (PEXP)– Programming language experience (LEXP)– Personnel Continuity (PCON)

Page 15: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

15ESD web seminar

Effort Multipliers (cont.)• Project attributes

– Use of software tools (TOOL)

– Multisite Development (SITE) – Required Development Schedule (SCED)

Page 16: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

16ESD web seminar

COCOMO

SizeDrivers

EffortMultipliers

Effort

Calibration

SLOC; orFunction Points; orApplication Points

- Product attributes- Platform attributes- Personnel attributes- Project attributes

COCOMO Operational Concept

ScheduleScale Factors

Page 17: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

17ESD web seminar

Historical Overview of COCOMO Suite of Models

COQUALMO1998

COCOMO 811981

COPROMO1998

COSoSIMO2004

Legend:Model has been calibrated with historical project data and expert (Delphi) dataModel is derived from COCOMO IIModel has been calibrated with expert (Delphi) data

COCOTS2000

COSYSMO2002

CORADMO1999

iDAVE2003

COPLIMO2003

COPSEMO1998

COCOMO II2000

DBA COCOMO2004

COINCOMO2004

SecurityExtension 2004

Costing SecureSystem 2004

Software Cost Models

Software Extensions

Other IndependentEstimation Models

Dates indicate the time that the first paper was published for the model

Page 18: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

18ESD web seminar

COSYSMO Scope• Addresses first four phases of the system

engineering lifecycle (per ISO/IEC 15288)

• Considers standard Systems Engineering Work Breakdown Structure tasks (per EIA/ANSI 632)

Conceptualize DevelopOper Test & Eval

Transition to Operation

Operate, Maintain, or Enhance

Replace orDismantle

Page 19: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

19ESD web seminar

COSYSMO

SizeDrivers

EffortMultipliers

Effort

Calibration

# Requirements# Interfaces# Scenarios# Algorithms

+3 Volatility Factors

- Application factors-8 factors

- Team factors-6 factors

WBS guided by EIA/ANSI 632

Page 20: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

20ESD web seminar

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 driverE = represents diseconomy of scaleEM = effort multiplier for the jth cost driver. The geometric product results in an

overall effort adjustment factor to the nominal effort.

x

Model Form

14

1,,,,,, )(

jj

E

kkdkdknknkekeNS EMwwwAPM

Page 21: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

21ESD web seminar

4 Size Drivers1. Number of System Requirements

2. Number of System Interfaces

3. Number of System Specific Algorithms

4. Number of Operational Scenarios

Weighted by complexity, volatility, and degree of reuse

Page 22: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

22ESD web seminar

14 Cost Drivers

1. Requirements understanding

2. Architecture understanding

3. Level of service requirements

4. Migration complexity

5. Technology Risk

6. Documentation Match to Life Cycle Needs

7. # and Diversity of Installations/Platforms

8. # of Recursive Levels in the Design

Application Factors (8)

Page 23: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

23ESD web seminar

14 Cost Drivers (cont.)

1. Stakeholder team cohesion

2. Personnel/team capability

3. Personnel experience/continuity

4. Process capability

5. Multisite coordination

6. Tool support

Team Factors (6)

Page 24: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

ESD web seminar

5 Fundamental Processes for Engineering a System

Source: EIA/ANSI 632 Processes for Engineering a System (1999)

Page 25: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

25ESD web seminar

ISO/IEC 15288

Conceptualize DevelopTransition to

Operation

Operate,Maintain,

or Enhance

Replace or Dismantle

EIA

/AN

SI 6

32

Acquisition & Supply

Technical Management

System Design

Product Realization

Technical Evaluation

Operational Test &

Evaluation

SE Effort Profiling

Page 26: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

26ESD web seminar

Integration Issues

For each individual model as well as the unified model:1. Objectives & Strategies

2. Inputs/scope of work

3. Output/scope of estimate

4. Assumptions of each model

5. Stakeholders for each model

6. Counting Rules

7. Data sources for calibration

Page 27: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

27ESD web seminar

COCOMO II/COSYSMO Overlap• COCOMO II is designed to estimate the software effort associated

with the analysis of software requirements and the design, implementation, and test of software.

• COSYSMO estimates the system engineering effort associated with the development of the software system concept, overall software system design, implementation and test.

• Key to understanding the overlap is deciding which activities are considered “system engineering” and which are considered “software engineering/development” and how each estimation model handles these activities.

• Phases– ISO 15288 vs. MBASE/RUP

• Activities– EIA 632 vs. MBASE/RUP

Page 28: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

28ESD web seminar

The numbers in the cells represent the typical percentage of effort spent on each activity during a certain phase of the software development life cycle as defined by COCOMO II. Each column adds up to 100 percent.

Page 29: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

29ESD web seminar

Other ModelsModel Name Owner/Developer

Constructive Cost Model USC

PRICE-Hardware PRICE Systems

PRICE-Software PRICE Systems

Raytheon SE Resource Forecasting Tool Raytheon

SEER-Hardware Galorath

SEER-Software Engineering Model Galorath

Small Satellite Cost Model The Aerospace Corp.

Unmanned Satellite Cost Model Los Angeles Air Force Base

Hardware domain Software domain

Page 30: ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. rvalerdi@mit.edu Unification of systems and software engineering cost models.

30ESD web seminar

ContactRicardo Valerdi

[email protected]

(617) 253-8583

www.valerdi.com/cosysmo