COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Making.

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

Carnegie Mellon University Software Engineering Institute CERT® Knowledgebase Copyright © 1997 Carnegie Mellon University VU#14202 UNIX rlogin with stack.
PROJECT RISK MANAGEMENT
© 2013 Carnegie Mellon University UFO: From Underapproximations to Overapproximations and Back! Arie Gurfinkel (SEI/CMU) with Aws Albarghouthi and Marsha.
Course: e-Governance Project Lifecycle Day 1
© 2011 Carnegie Mellon University System of Systems V&V John B. Goodenough October 19, 2011.
OPSM 639, C. Akkan1 Defining Risk Risk is –the undesirable events, their chances of occurring and their consequences. Some risk can be identified before.
© 2013 Carnegie Mellon University Academy for Software Engineering Education and Training, 2013 Session Architect: Tony Cowling Session Chair: Nancy Mead.
2013 COCOMO Forum Stoddard, 24 October 2013 © 2013 Carnegie Mellon University Harvesting Reference Points for Cost Estimation: A Step in the SEI’s Cost.
© Carnegie Mellon University The CERT Insider Threat Center.
Chapter 26 Estimation for Software Projects
© 2011 Carnegie Mellon University Should-Cost: A Use for Parametric Estimates Additional uses for estimation tools Presenters:Bob Ferguson (SEMA) Date:November.
© 2011 Carnegie Mellon University QUELCE: Quantifying Uncertainty in Early Lifecycle Cost Estimation Presenters:Dave Zubrow PhD Bob Ferguson (SEMA) Date:November.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Pittsburgh, PA Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department of Defense.
200209–CSSA0001 – 16/27/ :25 PM CSSA Cepeda Systems & Software Analysis, Inc. GENERIC.
Software Process and Product Metrics
Chapter 23 – Project planning Part 2. Estimation techniques  Organizations need to make software effort and cost estimates. There are two types of technique.
Ipek Ozkaya, COCOMO Forum © 2012 Carnegie Mellon University Affordability and the Value of Architecting Ipek Ozkaya Research, Technology.
What is Business Analysis Planning & Monitoring?
S/W Project Management
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
Conditions and Terms of Use
Chapter 6 : Software Metrics
Lecture 7. Review of Lecture 6 Project Scheduling: The process of defining project activities, determining their sequence, estimating their duration Scheduling.
Managing Project Resources. Project Resources Human Resources Project stakeholders: – Customers – Project team members – Support staff Systems analyst.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Lecture 17: Chapter 26 Estimation for Software Projects Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman.
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki The Project.
Management & Development of Complex Projects Course Code MS Project Management Perform Qualitative Risk Analysis Lecture # 25.
ISM 5316 Week 3 Learning Objectives You should be able to: u Define and list issues and steps in Project Integration u List and describe the components.
Project Life Cycle.
Managing CMMI® as a Project
AMERICA’S ARMY: THE STRENGTH OF THE NATION Mort Anvari 1 Cost Risk and Uncertainty Analysis MORS Special Meeting | September.
Welcome to Session 3 – Project Management Process Overview
Chapter 3 Project Management Chapter 3 Project Management Organising, planning and scheduling software projects.
Search Engine Optimization © HiTech Institute. All rights reserved. Slide 1 What is Solution Assessment & Validation?
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 26 Slide 1 Software cost estimation 2.
Practical Investment Assurance Framework PIAF Copyright © 2009 Group Joy Pty. Ltd. All rights reserved. Recommended for C- Level Executives.
 Copyright ProcessVelocity, LLP Slides intended for informational purposes only. CMM and Capability Maturity Model are registered in the U.S. Patent.
Primer Briefing “Brand Name or Equal” Purchase Descriptions Ask a Professor - # Date:
BSBPMG501A Manage Project Integrative Processes Manage Project Integrative Processes Project Integration Processes – Part 1 Diploma of Project Management.
Author Software Engineering Institute
The COCOMO model An empirical model based on project experience. Well-documented, ‘independent’ model which is not tied to a specific software vendor.
© 2015 Carnegie Mellon University COCOMO 2015 November 17, 2015 Distribution Statement A: Approved for Public Release; Distribution is Unlimited Causal.
State of Georgia Release Management Training
Software Engineering (CSI 321) Software Process: A Generic View 1.
SOFTWARE PROJECT MANAGEMENT
Company LOGO. Company LOGO PE, PMP, PgMP, PME, MCT, PRINCE2 Practitioner.
1 CERT BFF: From Start To PoC June 09, 2016 © 2016 Carnegie Mellon University This material has been approved for public release and unlimited distribution.
Information Technology Planning
Secure Software Workforce Development Panel Session
THE FAMU-CIS ALUMNI SYSTEM
Chapter 33 Estimation for Software Projects
Project Cost Management
Introduction to Project Management Chapter 7 Managing Project Resources Information Systems Project Management: A Process and Team Approach, 1e Fuller/Valacich/George.
Michael Spiegel, Esq Timothy Shimeall, Ph.D.
ISA 201 Intermediate Information Systems Acquisition
Software Engineering (CSI 321)
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Metrics-Focused Analysis of Network Flow Data
Constructive Cost Model
QUELCE: Quantifying Uncertainty in Early Lifecycle Cost Estimation
Dynamic Cyber Training with Moodle
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.
Chapter 33 Estimation for Software Projects
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Chapter 26 Estimation for Software Projects.
Project Management Method and PMI ® PMBOK ® Roles
Presentation transcript:

COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Making Connections to Existing CERs with QUELCE* COCOMO Forum November 2015 Bob Ferguson *Quantifying Uncertainty in Early LifeCycle Estimation

2 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Copyright 2015 Carnegie Mellon University This material is based upon work funded and supported by the Department of Defense under Contract No. FA C-0003 with Carnegie Mellon University for the operation of the Software Engineering Institute, a federally funded research and development center. Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the United States Department of Defense. References herein to any specific commercial product, process, or service by trade name, trade mark, manufacturer, or otherwise, does not necessarily constitute or imply its endorsement, recommendation, or favoring by Carnegie Mellon University or its Software Engineering Institute. NO WARRANTY. THIS CARNEGIE MELLON UNIVERSITY AND SOFTWARE ENGINEERING INSTITUTE MATERIAL IS FURNISHED ON AN “AS-IS” BASIS. CARNEGIE MELLON UNIVERSITY MAKES NO WARRANTIES OF ANY KIND, EITHER EXPRESSED OR IMPLIED, AS TO ANY MATTER INCLUDING, BUT NOT LIMITED TO, WARRANTY OF FITNESS FOR PURPOSE OR MERCHANTABILITY, EXCLUSIVITY, OR RESULTS OBTAINED FROM USE OF THE MATERIAL. CARNEGIE MELLON UNIVERSITY DOES NOT MAKE ANY WARRANTY OF ANY KIND WITH RESPECT TO FREEDOM FROM PATENT, TRADEMARK, OR COPYRIGHT INFRINGEMENT. [Distribution Statement A] This material has been approved for public release and unlimited distribution. Please see Copyright notice for non-US Government use and distribution. This material may be reproduced in its entirety, without modification, and freely distributed in written or electronic form without requesting formal permission. Permission is required for any other use. Requests for permission should be directed to the Software Engineering Institute at Carnegie Mellon® is registered in the U.S. Patent and Trademark Office by Carnegie Mellon University. DM

3 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Session Agenda Overview of QUELCE CERs 1 in Estimation Connecting the QUELCE BBN 2 to CERs – Glue Nodes Summary 1 Cost Estimating Relationships 2 Bayesian Belief Network

4 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited QUELCE QUELCE is a method for analyzing the effects of changing assumptions and other risks inherent in product development. Rather than focusing on the consequences of each risk, the method tries to analyze the cascading effects of multiple changes. The current presentation describes ways to connect the QUELCE probability network (BBN) to many different cost estimation relationships.

5 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited QUELCE Intended to Inform CER Inputs (Example) Acquisition Environment A.1 Acquisition Category (ACAT) Status A.2 Governance, Policies, and Standards A.3 External Interdependencies / Coordination A.4 External Stakeholders A.5 External Events, Funding A.6 Other: Acquisition Environment A.7 Capability Definition Acquisition Management B.1 Acquisition Strategy B.2 Contracting B.3 Management Structure B.4 Program Scope, Requirements B.5 Budget B.6 Schedule B.7 Staffing B.8 Facilities, Support Technology, and Equipment B.9 Program Information Management B.10 Program-Contractor Performance B.11 Other: Acquisition Management Technical Solution C.1 Conceptual Design / Specification C.2 System Architecture and Design C.3 Production and Construction C.4 Certification and Accreditation C.5 Deployment, Operations, and Support C.6 Technology Maturity / Readiness C.7 Estimated Complexity / Difficulty C.8 Supply Chain Products C.9 Other: Engineering Solution / Work Products Need to map QUELCE change drivers (from the left) to the CER input parameters (on the right)

6 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Modeling Uncertainty Complexity Reduction 1. Use QUELCE Repository to Populate Driver State Matrix 3. Develop BBN Model and Assign Conditional Probabilities to BBN Model 4. Calculate Cost Factor Distributions for Program Execution Scenarios 5. Monte Carlo Simulation to Compute Cost Distribution 2. Evaluate Cause and Effect Relationships and Reduce Explosion via Dependency Structure Matrix Overview of QUELCE Method Legend: QUELCE Change Driver Repository 1. Driver State Matrix 2. Dependency Structure Matrix 3. BBN Model 4. Cost Factor Distributions by Scenario of Change 5. Monte Carlo with Cost Estimation Tools SRDR DAES SARS

7 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited CERs in Estimation CAPE recommends four cost estimation methods: Analogy: (early in program lifecycle -> MS A) Parametric (Statistical) - CERs : (early in program lifecycle -> MS B) Engineering (“bottoms up”): (MS C and later) Actual Costs: (LRIP and later) Different Types of Cost Estimation Relationships (CERs) Elements of scope – things we build Required process elements associated to scope Required purchases Scope Estimate of volume, weight, size, capacity based on required deliverable characteristics. This may be LOC, Function Points, requirements, etc… Product characteristics (quality attributes) such as speed of performance Quantity of deliverable Required Process Elements Associated to Scope Certifications

8 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Methods Employed in CERs Scope Estimates CER is a parametric model - an equation used to estimate a given cost element using an established relationship with one or more independent variables. Analogy to past projects can be used to bound regression parameters. Expert judgment recommendations based on experience and data. Required Processes Associated to Scope Built from the scope estimates by using internal history and a proportional formula. Some of the required processes will be covered by a parametric tool. Other Required Processes Typically based on assigning a resource cost for duration of schedule or duration of development for a specific element of scope. Purchases Fixed cost based on count of need.

9 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited What Are Glue Nodes? Definition A glue node is a way to connect the output from the BBN in step 3 of the QUELCE method to the CERs for your estimation model. Rationale Glue nodes are used to incorporate the front end uncertainty and scenario analyses afforded by QUELCE in a practical manner by mapping the output of the BBN into existing parameters in the CER. Example The process elements of scope are uncertain based on need for innovation, product complexity, etc. Hence, we attempt to identify the related nodes in the model. Those nodes are connected to a glue node. The probability distribution is calculated as the joint probability distribution of the parent nodes. The glue nodes are mapped to selected parameters of the CER.

10 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited BBN Model with three Glue Nodes Product Challenge Program Challenge Scope (Size)

11 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited How to Use Glue Nodes Each element of scope is likely to require different glue nodes Schedule The overall schedule will drive significant costs not associated to a specific scope, so different CERs are employed. Schedule will be specific to a lifecycle. Use The BBN must be connected to the selected CERs via glue nodes. The glue node embodies the joint probability of several other BBN nodes. The glue nodes will be specific to the CER. The BBN itself usually remains the same across different CERs. BBN Analysis Bayesia and AgenaRisk are example tools that support this function. It is easy to add the needed joint probability distributions.

12 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited COCOMO II Example We used 3 glue nodes Size – Mike Ross code growth provides a useful size range – Median and a high percentile value are calculated Product Challenge – We would like to think of product domain as providing a critical combination such as real-time-embedded very high reliability – Also novelty or invention adds to complexity Program Challenge – Factors associated to contractor skill, program office flexibility, and number of contractors

13 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited COCOMO II Example - Glue Nodes COCOMO parameter mapping -- Select parameters for “Product Challenge” and “Program Challenge.” Range is limited for each of the selected parameters. Map BBN glue node values to COCOMO parameter values. Some parameter scales had to be reverse ordered so that the effect had the appropriate direction Mapped COCOMO value BBN Outputs

14 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Product Challenge Factors COCOMO Parameter XLVLLNHVHEH Scale FactorsPREC FLEX RESL 2.53 TEAM PMAT Effort MultipliersPERS RCPX PDIF PREX FCIL RUSE SCED Italicized values are derived from the BBN; corresponding COCOMO values are directly below the BBN values.

15 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Program Challenge Factors COCOMO Parameter XLVLLNHVHEH Scale FactorsPREC FLEX RESL Nominal 2.53 TEAM Joint Norm PMAT12345 reversedvalues Effort MultipliersPERS fixedrange not modeled RCPX PDIF PREX fixed ranges FCIL RUSE SCED reversedvalues Italicized values are derived from the BBN; corresponding COCOMO values are directly below the BBN values.

16 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Monte Carlo Modeling Mapped COCOMO value BBN Outputs Each CER parameter is assigned a distribution based on the Glue node distribution Monte Carlo simulation then enables a distribution of cost using the CER with input distributions

17 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Summary Change Driver Scenarios modeled to inform CER inputs leading to cost distributions

18 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Contact Information Robert Ferguson Senior Member of Technical Staff Software Solutions Division, SEAP Telephone: U.S. Mail Software Engineering Institute Customer Relations 4500 Fifth Avenue Pittsburgh, PA USA Web Customer Relations Telephone: SEI Phone: SEI Fax:

19 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited BACKUP SLIDES

20 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Change Drivers Definition: A change driver is any assumption or decision that has the potential to change. Decisions: Selection of suppliers and contractors including test facilities Selection of technology or component Assumptions: A technology, currently at TRL 6, will mature sufficiently by Milestone C. A KPP goal (key performance parameter) can be achieved (KPP goals for software defined radios were not achieved). Scope and feature definitions are fixed by Milestone B.

21 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Change Drivers and Dependency Structure Matrix “Change Drivers” The specific assumptions and risks identified by program subject matter experts (SME) SMEs are asked to make estimates of frequency of change The Dependency Structure Matrix (DSM) Relates changes by asking whether a second change event would be a consequence of an earlier one. The matrix tends to be very large and must be reduced and reorganized into a triangular matrix in order to create the probability network. SEI has an automated tool that makes this process much easier. It now takes about 30 minutes or less.

22 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Modeling Schedule Impacts QUELCE Addresses Schedule Slip Use lifecycle synchronization points such as PDR and CDR. Delays are common and usually have identifiable causes that have been modeled in the BBN. The critical concern for schedule is whether specific change events occur that may cause schedule delays. Synchronization Concerns A critical dependency during the lifecycle is the need to synchronize development teams and tasks in order to do any form of product validation. Without this validation exercise, no forecast of delivery is trustworthy. Schedule forecasts of deliverables are essential to the accuracy of the cost estimate.

23 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Schedule Example: Causes of Schedule Delay Supply Chain Obsolete parts Change of supplier Technology Readiness and Manufacturing Readiness e.g. GN (gallium nitride) is a potential replacement for Gas (gallium arsenide). Both electrical characteristics and manufacturing problems still need study. Software will interact with electrical characteristics. Contractor – Program disputes Approval of engineering change request CDRL review delays Limited availability of specific resources – Test equipment and facility Funding Delays … several others that are familiar to experienced program managers

24 COCOMO Forum 2015 Bob Ferguson © 2015 Carnegie Mellon University Distribution Statement A: Approved for Public Release; Distribution is Unlimited Bayesian Belief Network Directed Graph A directed graph is constructed from the triangular matrix. Each node gets a probability of occurrence and a probability of change effect from each parent node. Probabilities are generated by SMEs and by data from past programs. Stability of the BBN Our expectation is the BBN should change rarely during most programs. New risks or assumptions not tested would add a node. As time passes, more and more nodes would be set to zero expectation of change. BBN probabilities would consistently narrow over the course of time.