Top Banner
©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi
21

©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Dec 22, 2015

Download

Documents

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: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

©2006 BAE Systems.

Practical Implementation of COSYSMO Reuse Extension

Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi

Page 2: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Agenda

• Background

• Industry Definition

• BAE Systems Implementation

• Lessons Learned and Recommendations

Page 3: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

What Is the Problem?

• Everything has a legacy

• In particular, most of the systems we build and programs we execute are based on legacy systems, architecture, and experience

– Rarely are we building something completely new from the “clean slate”.

• Academic COSYSMO assumes all size drivers (Req, Int, Alg, Scn) are new, which is inadequate in estimating the systems we build today

• Therefore, we must consider the impact of reuse on systems engineering size

• We anticipate this will improve the model’s accuracy since reuse plays a significant role in today’s systems

Page 4: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

COSYSMO at BAE Systems

• BAE Systems E&IS OG has developed an internal systems estimating tool based on COSYSMO

– Collected 55 past program data points across lines of business and major sites

– Developed platform-specific calibrations

• Problem encountered: Academic COSYSMO could not provide the correlation and convergence required to create meaningful calibrations

– One of the big issues was driver reuse

• We worked with key stakeholders and developed the industry definition of COSYSMO Reuse

• We developed an internal implementation/instantiation of the reuse extension

Page 5: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Industry Definition

Page 6: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Reuse Categories

1. New: Items that are completely new.

2. Adopted: Items that are incorporated unmodified.

3. Modified: Items that are reused but are tailored.

4. Deleted: Items that are removed from a system.

Page 7: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Driver Counting Framework

Adopted ModifiedNew Deleted

Easy

Nominal

Difficult# System Requirements

# System Interfaces

# System Algorithms

# Operational Scenarios

Page 8: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Application of Reuse at BAE Systems

Page 9: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Implementation Strategy

• Be consistent with industry definition– By further instantiating and refining the verbiage so as to avoid any potential

conflicts and inconsistencies

• Provide a clear and consistent operational guideline for driver counting and classification

– By defining unambiguous verbiage of the reuse definition

• Establish clear boundaries between categories to ensure easy separation and consistency

– Steps rather than ramps

– Delineated by common concepts

Page 10: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Approach

• Define two (orthogonal) dimensions of classification framework to enable finer grain estimation of the size drivers:

– Reuse by Process: SE activities

– Level of Difficulty by Relative Effort: easy, nominal, difficult

Page 11: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Reuse Categories at BAE Systems

1. New: Items that are completely new

2. Managed: Items that are incorporated and require no added SE effort other than technical management

3. Adopted: Items that are incorporated unmodified but require verification and validation

4. Modified: Items that are incorporated but require tailoring or interface changes, and verification and validation

5. Deleted: Items that are removed from a legacy system, which require design analysis, tailoring or interface changes, and verification and validation

Notes:• New items are generally unprecedented• Those items that are inherited but require architecture or implementation

changes should be counted as New

Page 12: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Added Categories “Managed”

• We found, in particular, significant number of requirements require “technical management” level of effort only

– They are still part of the system deliverables

– They are still to be “sold off” to customers

– They are not free

• Applied for– Proven elements from previous iterations/spirals

– Subcontract/teammate provided turn-key components

Page 13: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Where: PMNS = effort in Person Hours/Months (Nominal Schedule)

A = calibration constant derived from historical project data k = {REQ, IF, ALG, SCN}r = {New, Managed, Adopted, Modified, Deleted}wr = weight for defined levels of size driver reuse

wx = weight for “easy”, “nominal”, or “difficult” size driver

Фx = quantity of “k” size driver

E = represents diseconomy of scaleCEM = composite effort multiplier

Extended COSYSMO Relationship

CEMwwwwAPME

kkdkdknknkeke

rrNS

)( ,,,,,,

Page 14: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Driver Classification Guideline

New Managed Adopted Modified Deleted

Easy

Nominal

Difficult

Second Pass

Order of Classification

• Separate the two dimensions:

Apply reuse in terms of Process (activity)

Apply levels of difficulty in term of Relative Effort

First Pass

Page 15: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Define Reuse Weights Based on Activities

Page 16: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Data Before Reuse Application

Page 17: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Same Data After Reuse Application

Page 18: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Excellent Correlation Achieved for Similar Programs

PRED(30)

PRED(25)

PRED(20)

Page 19: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Application Lessons Learned

• Modified category, in particular, covers a wide range• The intent of the modified category is to capture those elements that

involve tailoring changes only, with no changes to the internal architecture

• If you modify everything, you should classify it as New• Consistency is the key

– Between data points– Between calibration data and new estimate

• What do we do for consistency?– Asked for a sample nominal requirement– Compare the productivity metric with peer programs– Graphical aids are helpful, e.g.,

Page 20: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Recommendations

• Reuse weights are meant to be defined ones only. Once they are defined, you should stick with it and apply to all programs

– If you have to change them, apply to all program data

• Recommendation: industry should have a recommended value range for all reuse categories

– To better communicate BOEs

Page 21: ©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.

Gan Wang

[email protected]

703-668-4259

Contact

Ricardo Valerdi

[email protected]

213-440-4378