1 COSYSMO 2.0: A Cost Model and Framework for Systems Engineering Reuse Jared Fortune University of Southern California Ricardo Valerdi Massachusetts Institute.

Slides:



Advertisements
Similar presentations
COST ESTIMATION TECHNIQUES AND COCOMO. Cost Estimation Techniques 1-)Algorithmic cost modelling 2-)Expert judgement 3-)Estimation by analogy 4)-Parkinsons.
Advertisements

1 Requirements and the Software Lifecycle The traditional software process models Waterfall model Spiral model The iterative approach Chapter 3.
Lecture # 2 : Process Models
Chapter 2 The Software Process
©2006 OLC 1 Process Management: The Foundation for Achieving Organizational Excellence Process Management Implementation Worldwide.
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
COSYSMO 2.0 Workshop Summary (held Monday, March 17 th 2008) USC CSSE Annual Research Review March 18, 2008 Jared Fortune.
1 The Cost of Organizational Structures and Interfaces prepared for Ground System Architectures Workshop by Darryl W. Webb Business and Operations Analysis.
University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 Ray Madachy, Ricardo Valerdi USC Center for Systems and Software.
March 2002 COSYSMO: COnstructive SYStems Engineering Cost MOdel Ricardo Valerdi USC Annual Research Review March 11, 2002.
COSYSMO Workshop Jared Fortune, USC USC ARR 2010 Los Angeles, CA.
1 COSYSMO 3.0: Future Research Directions Jared Fortune University of Southern California 2009 COCOMO Forum Massachusetts Institute of Technology.
COSYSMO Reuse Extension 22 nd International Forum on COCOMO and Systems/Software Cost Modeling November 2, 2007 Ricardo ValerdiGan Wang Garry RoedlerJohn.
Affiliate Feedback and Discussion 1. Future Research: COSYSMO Updated data collection effort Quantifying the effect of schedule Harmonizing across software.
1 Systems Engineering Reuse Principles Jared Fortune, USC Ricardo Valerdi, MIT COSYSMO COCOMO Forum 2010 Los Angeles, CA.
©2011 Rolls-Royce plc The information in this document is the property of Rolls-Royce plc and may not be copied or communicated to a third party, or used.
1 Results of Reuse Survey Jared Fortune, USC Ricardo Valerdi, MIT Gan Wang, BAE COSYSMO COCOMO Forum 2008 Los Angeles, CA.
Business Driven Enterprise Architecture Assessment Methodology Josh Arceneaux August 16, 2011.
Introduction Wilson Rosa, AFCAA CSSE Annual Research Review March 8, 2010.
1 CORADMO in 2001: A RAD Odyssey Cyrus Fakharzadeh 16th International Forum on COCOMO and Software Cost Modeling University of Southern.
COSYSMO Reuse Extension 22 nd International Forum on COCOMO and Systems/Software Cost Modeling November 2, 2007 Ricardo ValerdiGan Wang Garry RoedlerJohn.
Fundamentals of Information Systems, Second Edition
System-of-Systems Cost Modeling: COSOSIMO July 2005 Workshop Results Jo Ann Lane University of Southern California Center for Software Engineering.
University of Southern California Center for Systems and Software Engineering 1 November 2010 Mauricio Peña Dr. Ricardo Valerdi CHARACTERIZING THE IMPACT.
1 Discussion on Reuse Framework Jared Fortune, USC Ricardo Valerdi, MIT COSYSMO COCOMO Forum 2008 Los Angeles, CA.
Expert COSYSMO Update Raymond Madachy USC-CSSE Annual Research Review March 17, 2009.
Systems Engineering Reuse: A Report on the State of the Practice Jared Fortune, USC Ricardo Valerdi, MIT Gan Wang, BAE Systems COCOMO Forum 2008 Los Angeles,
University of Southern California Center for Systems and Software Engineering © 2009, USC-CSSE 1 Reuse and Maintenance Estimation Vu Nguyen March 17, 2009.
Iterative development and The Unified process
COSYSMO Reuse Extension COSYSMO Workshop – USC CSSE Annual Research Review March 17, 2008 Ricardo ValerdiGan Wang Garry RoedlerJohn Rieff Jared Fortune.
©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Towards COSYSMO 2.0: Update on Reuse Jared Fortune, USC Ricardo Valerdi, MIT USC ARR 2009 Los Angeles, CA.
Generalized Reuse Model for COSYSMO
Capability Maturity Model
RUP Fundamentals - Instructor Notes
THE PROTOTYPING MODEL The prototyping model begins with requirements gathering. Developer and customer meet and define the overall objectives for the software.
N By: Md Rezaul Huda Reza n
THE REGIONAL MUNICIPALITY OF YORK Information Technology Strategy & 5 Year Plan.
Federal Agency Update - A Public Real Estate Symposium Las Vegas, Nevada January 26, 2010 Procedures Guide for Right of Way Cost Estimation and Cost Management.
Gan Wang BAE Systems Ricardo Valerdi University of Arizona Garry J. Roedler Lockheed Martin Mauricio Pena Boeing Systems Engineering Reuse Delphi – Workshop.
University of Southern California Center for Systems and Software Engineering COSATMO/COSYSMO Workshop Jim Alstad, USC-CSSE Gan Wang, BAE Systems Garry.
NMP EO-1 TECHNOLOGY WORKSHOP Section 2 Meeting Objectives.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
9/17/2002 COSYSMO Usage Experience Panel: What is Happening at Lockheed Martin Garry Roedler, Lockheed Martin Engineering Process Improvement Center
Assessing the influence on processes when evolving the software architecture By Larsson S, Wall A, Wallin P Parul Patel.
Software Engineering - I
Gan Wang 22 October th International Forum on COCOMO® and Systems/Software Cost Modeling in conjunction with the Practical Software and Systems.
Systems Analysis and Design in a Changing World, Fourth Edition
Enabling Reuse-Based Software Development of Large-Scale Systems IEEE Transactions on Software Engineering, Volume 31, Issue 6, June 2005 Richard W. Selby,
Chapter 3: Software Project Management Metrics
Cmpe 589 Spring 2006 Lecture 2. Software Engineering Definition –A strategy for producing high quality software.
1 Planning a Software Project. 2 Defining the Problem Defining the problem 1.Develop a definitive statement of the problem to be solved. Include a description.
Estimating “Size” of Software There are many ways to estimate the volume or size of software. ( understanding requirements is key to this activity ) –We.
The COCOMO model An empirical model based on project experience. Well-documented, ‘independent’ model which is not tied to a specific software vendor.
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
ANALYSIS PHASE OF BUSINESS SYSTEM DEVELOPMENT METHODOLOGY.
11/04/091 Some Topics Concerning The COSYSMOR Model/Tool John E. Gaffney, Jr Center For Process Improvement Excellence.
ESD.71 Engineering Systems for Analysis Real Options for Integrating Unmanned Aircraft into the National Airspace System Luke Cropsey 30 November 2007.
Project Cost Management
The Five Secrets of Project Scheduling A PMO Approach
Measuring Data Quality and Compilation of Metadata
Usability Techniques Lecture 13.
Towards COSYSMO 2.0: Update on Reuse
COCOMO 2 COCOMO 81 was developed with the assumption that a waterfall process would be used and that all software would be developed from scratch. Since.
Capability Maturity Model
Vijay Rachamadugu and David Snyder September 7, 2006
Capability Maturity Model
Generalized Reuse Model for COSYSMO Workshop Outbrief
Presentation transcript:

1 COSYSMO 2.0: A Cost Model and Framework for Systems Engineering Reuse Jared Fortune University of Southern California Ricardo Valerdi Massachusetts Institute of Technology 2009 COCOMO Forum Massachusetts Institute of Technology

Outline Introduction –Research Question and Hypotheses Methodology –Research Approach Research Products –COSYSMO 2.0 –Reuse Framework Results –Model Validation –Framework Validation Conclusion –Future Research Areas 2

Need to Estimate Effect of Systems Engineering Reuse Practitioners noted large errors between model estimates and actuals –Variations discovered to be attributable to programs with reuse Systems engineering reuse –The utilization of systems engineering products from previous efforts –Ex: architectures, requirements, test plans, interfaces –Means of reducing cost, schedule, and/or risk Current version COSYSMO assumes all systems engineering products will be “built from scratch” –Unable to account for the impact of systems engineering reuse …COSYSMO 2.0 3

Reuse is a Universal Concept 4

Academic Perspective Literature Review Results 1.Reuse is done for the purpose of economic benefit, intending to shorten schedule, reduce cost, and/or increase performance. 2.Reuse is not free, upfront investment is required. 3.Hardware, software, processes, and knowledge are all reusable products. 4.Reuse needs to be planned from the conceptualization phase of system development. 5.Reuse is as much of an organizational issue as it is a technical one. 6.The benefits of reuse are limited to related domains and do not scale linearly. 5

Practitioner Perspective 6 Industry Survey Results 1.Requirements reuse is only performed occasionally, but has the largest benefit associated with it. 2.Reuse occurs more frequently early in the life cycle than later. 3.Cost savings is the most promoted benefit for reuse, but benefits also exist in risk, schedule, and performance. 4.Experienced personnel is a key factor for successful reuse.

Research Evolution Previous Hypotheses 1.Each COSYSMO size driver can be further decomposed into New, Modified, Adopted, Managed, and Deleted categories of reuse each with corresponding rating scales and weights, and function as statistically significant predictors of equivalent size from the systems engineering standpoint. 2.Two additional COSYSMO cost drivers, Reuse Understanding and Artifact Unfamiliarity, capture the important organizational, personnel, process, and project factors that lead to the accurate estimation of systems engineering effort for systems that involve reuse. 7 Updated to six Categories Focused on capturing reuse in size drivers

Research Question What technical and organizational characteristics drive the amount of reduced or added systems engineering effort due to systems engineering product reuse? 8

Hypothesis #1 The requirements size driver can be further decomposed into New, Design for Reuse, Modified, Adopted, Managed, and Deleted categories of reuse, each with corresponding definitions and weights, and function as a good predictor of equivalent size from a systems engineering standpoint. 9

Hypothesis #2 By comparing the normative and descriptive models for managing systems engineering reuse, the systems engineering reuse framework provides a prescriptive model for enabling organizations to take advantage of reuse in systems engineering. 10

Hypothesis #3 The COSYSMO 2.0 model and the associated systems engineering reuse framework help organizations think differently about systems engineering reuse, and its associated costs and benefits. 11

Mixed-Methods Research Approach 12

COSYSMO 2.0 Operational Concept 13

Model Form 14

Reuse Categories CategorySub-CategoryDefinition I) NewProducts that are completely new i) Designed for Reuse Products that require an additional upfront investment to improve the potential reusability II) ModifiedProducts that are inherited, but are tailored ii) DeletedProducts that are removed from the system III) AdoptedProducts that are incorporated unmodified (a.k.a. “black box” reuse) iii) ManagedProducts that are incorporated unmodified and with minimal testing 15

Reuse Category Weights 16

Example COSYSMO 2.0 Estimate Estimated as Person-Months by COSYSMO (without reuse) …a 30.4% difference

COSYSMO Calibration Data Set Analysis (1) Data set used to calibrate and validate the COSYSMO tool when it was published in 2005 Immature form of reuse data was collected –Reported amount of reuse in the system –Ex: If a responder reported the project had 100 nominal requirements and that 20 of those 100 requirements where reused, they would report 20% of the nominal requirements were reused –No consistent definition of term Results indicated potential for overestimation of effort –42 projects in the data set –54% reported some amount of reuse in one of the four size drivers –13% reported some amount of reuse in all of the size drivers.

In most cases, COSYSMO is capable of estimating the effort of a systems engineering project within 30% of the actual, 50% of the time – PRED(.30)=50% Experimental model created to test hypothesis that a single reuse category is inadequate –Experimental model utilized one reuse category instead of six –Category weights varied parametrically from 0.0 to 1.5 –Estimation power of one versus no reuse categories were compared Experimental model (one category) consistently performed worse than standard COSYSMO (no reuse categories) –Supports the conclusion that a single reuse category is inadequate, multiple reuse categories are required COSYSMO Calibration Data Set Analysis (2)

COSYSMO 2.0 Implementation Results Across 44 projects at 1 diversified organization Using COSYSMO: –PRED(.30) = 14% –PRED(.40) = 20% –PRED(.50) = 20% –R 2 = 0.50 Using COSYSMO 2.0: –PRED(.30) = 34% –PRED(.40) = 50% –PRED(.50) = 57% –R 2 = 0.72 Result: 36 of 44 (82%) estimates improved 20

Reuse Framework 21

Reuse Framework Interview Results Conducted interviews and mini-case studies with five systems engineering organizations –BAE Systems U.S., BAE Systems U.K., Boeing, British Petroleum (BP), and Rolls-Royce “Applicable and valuable to organizations at multiple levels of reuse maturity.” Organization A “A valid and reasonable illustration of the reuse process.” Organization B 22

Research makes SE’s think differently about reuse (1) “Systems Engineers are frequently tasked to leverage previously developed systems engineering products for the benefit of future projects. The inclusion of reuse in COSYSMO has an inherent value by adding clarity to project characterization and measurement refinement to the estimation of systems engineering cost.” Marilee Wheaton, Systems Engineering Division, The Aerospace Corporation "Metrics-based estimates do account for the cost of systems engineering or systems engineering reuse very well. The parametric nature of COSYSMO 2.0, as COCOMO did for software reuse, improves fidelity and confidence in estimates of systems engineering reuse and provides systems engineers with valuable feedback on reuse decisions.” Allan McQuarrie, Leveraged Technology & Products, BAE Systems 23

“The benefits of the COSYSMO reuse model are significant, including improving the accuracy of COSYSMO and demonstrating its validity across a wider set of systems engineering projects. The reuse model fundamentally enables the development of the Total Engineering Estimation Model and Process (TEEMaP) estimating model, an implementation of COSYSMO, to achieve high degrees of estimation accuracy and robustness. TEEMaP is now widely used in different Lines of Businesses.” Gan Wang, Electronics and Integrated Systems, BAE Systems 24 Research makes SE’s think differently about reuse (2)

Threats to Validity Mostly Controllable Construct Validity –Minimized COSYSMO overlap –Identified products for reuse Result Convergence –Utilized mixed-methods approach Internal Validity –Iterated definitions at multiple COSYSMO workshops –Collected multiple Delphi results Generalizability –Validated model with multiple projects –Validated framework with interviews at multiple organizations 25 Mostly Uncontrollable Limited Visibility in Data Analysis –Performed using inputs and guidance from this research Relied on Subjective Inputs –Utilized experts familiar with COSYSMO research Increased Number of User Inputs –Created 3 prime & 3 sub-categories to address needs raised in discussions

Contributions Identification of needs and gaps in the research of systems engineering reuse –Literature review Definition and characterization of systems engineering reuse –Reuse categories Improvement of the COSYSMO tool to account for systems engineering reuse –COSYSMO 2.0 Documentation of heuristics for systems engineering reuse –Reuse framework Systems engineers will think about their responsibilities differently –COSYSMO 2.0 and reuse framework 26

27 Academic COSYSMO 2.0 (without reuse)

28 Academic COSYSMO 2.0 (with reuse)

Future Areas of Research Tailoring COSYSMO 2.0 to individual organizations –Developing industry and local calibrations Exploring a range of weights for the reuse categories –Evaluating effect of variation within categories Identifying reuse opportunities and mismatches –Extending development of Expert COSYSMO Quantifying the effect of reuse on risk and schedule –Supporting development of new COSYSMO extensions Harmonizing reuse across hardware, software, and systems engineering –Continuing efforts to integrate COCOMO and COSYSMO 29