UNCLASSIFIED Schopenhauer's Proof For Software: Pessimistic Bias In the NOSTROMO Tool (U) Dan Strickland Dynetics Program Software Support

Slides:



Advertisements
Similar presentations
Forecasting Models With Linear Trend. Linear Trend Model If a modeled is hypothesized that has only linear trend and random effects, it will be of the.
Advertisements

On Representing Uncertainty In Some COCOMO Model Family Parameters October 27, 2004 John Gaffney Fellow, Software & Systems.
Early Effort Estimation of Business Data-processing Enhancements CS 689 November 30, 2000 By Kurt Detamore.
Simulation Operations -- Prof. Juran.
Full Monte Cost and Schedule Risk Analysis
Software Cost Estimation Main issues:  What factors determine cost/effort?  How to relate effort to development time?
COCOMO Suite Model Unification Tool Ray Madachy 23rd International Forum on COCOMO and Systems/Software Cost Modeling October 27, 2008.
1 Risk in the MOLINO André de Palma UCP & Ecole Nationale des Ponts et Chaussée Lætitia Andrieu CERMICS-ENPC Nathalie Picard University of Cergy-Pontoise.
University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 Ray Madachy, Ricardo Valerdi USC Center for Systems and Software.
©2006 BAE Systems. COSYSMO Application At BAE Systems Gan Wang COSYSMO Workshop 23 rd International Forum on COCOMO and Systems/Software Cost Modeling.
Some Experience With COSYSMOR At Lockheed Martin
University of Southern California Center for Systems and Software Engineering An Investigation on Domain-Based Effort Distribution Thomas Tan 26 th International.
1 COSYSMO 3.0: Future Research Directions Jared Fortune University of Southern California 2009 COCOMO Forum Massachusetts Institute of Technology.
Statistics for Managers Using Microsoft Excel, 4e © 2004 Prentice-Hall, Inc. Chap 7-1 Chapter 7 Confidence Interval Estimation Statistics for Managers.
Introduction Wilson Rosa, AFCAA CSSE Annual Research Review March 8, 2010.
System-of-Systems Cost Modeling: COSOSIMO July 2005 Workshop Results Jo Ann Lane University of Southern California Center for Software Engineering.
An employee-owned company Extensions of Auto-Generated Code and NOSTROMO Methodologies (U) Pam McDonaldSandra GilesDan Strickland THAAD Project OfficeTHAAD.
Expert COSYSMO Update Raymond Madachy USC-CSSE Annual Research Review March 17, 2009.
T T02-04 Histogram (User Selected Classes) Purpose Allows the analyst to analyze quantitative data by summarizing it in sorted format, scattergram.
An employee owned company Investigating the Default Behavior of Requirements Evolution in COCOMO II Dan Strickland Dynetics, Inc.
Statistics for Managers Using Microsoft Excel, 5e © 2008 Pearson Prentice-Hall, Inc.Chap 8-1 Statistics for Managers Using Microsoft® Excel 5th Edition.
Monte Carlo Simulation in Excel Jake Blanchard Spring 2010 Uncertainty Analysis for Engineers1.
Monté Carlo Simulation MGS 3100 – Chapter 9. Simulation Defined A computer-based model used to run experiments on a real system.  Typically done on a.
Introduction to ModelingMonte Carlo Simulation Expensive Not always practical Time consuming Impossible for all situations Can be complex Cons Pros Experience.
Monte Carlo Simulation 1.  Simulations where random values are used but the explicit passage of time is not modeled Static simulation  Introduction.
Statistics for Managers Using Microsoft Excel, 4e © 2004 Prentice-Hall, Inc. Chap 7-1 Chapter 7 Confidence Interval Estimation Statistics for Managers.
Statistics for Managers Using Microsoft Excel, 4e © 2004 Prentice-Hall, Inc. Chap 7-1 Chapter 7 Confidence Interval Estimation Statistics for Managers.
Information System Economics Software Project Cost Estimation.
1 Doing Statistics for Business Doing Statistics for Business Data, Inference, and Decision Making Marilyn K. Pelosi Theresa M. Sandifer Chapter 11 Regression.
Identifying Input Distributions 1. Fit Distribution to Historical Data 2. Forecast Future Performance and Uncertainty ◦ Assume Distribution Shape and Forecast.
BIOSTAT - 2 The final averages for the last 200 students who took this course are Are you worried?
By: Mitchell Kattengell and Ryan Anderson DecisionTools Suite Overview 100% within excel – supports Excel 2000 and higher. Support parallel processing-
Week 5 – Special Topics. Risk Management Best Practices.
597 APPLICATIONS OF PARAMETERIZATION OF VARIABLES FOR MONTE-CARLO RISK ANALYSIS Teaching Note (MS-Excel)
Analysis and Visualization Approaches to Assess UDU Capability Presented at MBSW May 2015 Jeff Hofer, Adam Rauk 1.
Estimation Why estimate? What to estimate? When to estimate?
Quantitative Skills 1: Graphing
The AIE Monte Carlo Tool The AIE Monte Carlo tool is an Excel spreadsheet and a set of supporting macros. It is the main tool used in AIE analysis of a.
IV&V Facility PI: Katerina Goseva – Popstojanova Students: Sunil Kamavaram & Olaolu Adekunle Lane Department of Computer Science and Electrical Engineering.
The AIE Monte Carlo Tool The AIE Monte Carlo tool is an Excel spreadsheet and a set of supporting macros. It is the main tool used in AIE analysis of a.
Two Approaches to Calculating Correlated Reserve Indications Across Multiple Lines of Business Gerald Kirschner Classic Solutions Casualty Loss Reserve.
Personal Estimation with PROBE CS3300 Fall Code Size Estimation Wide Band Delphi (Boehm) Give the team the specs to study Discuss the project goals.
Contemporary Engineering Economics, 6 th edition Park Copyright © 2016 by Pearson Education, Inc. All Rights Reserved Risk Simulation Lecture No. 40 Chapter.
Statistics for Managers Using Microsoft Excel, 5e © 2008 Pearson Prentice-Hall, Inc.Chap 8-1 Statistics for Managers Using Microsoft® Excel 5th Edition.
AMERICA’S ARMY: THE STRENGTH OF THE NATION Mort Anvari 1 Cost Risk and Uncertainty Analysis MORS Special Meeting | September.
Delivering Integrated, Sustainable, Water Resources Solutions Monte Carlo Simulation Robert C. Patev North Atlantic Division – Regional Technical Specialist.
Outline of Chapter 9: Using Simulation to Solve Decision Problems Real world decisions are often too complex to be analyzed effectively using influence.
Simulation is the process of studying the behavior of a real system by using a model that replicates the behavior of the system under different scenarios.
ETM 607 – Input Modeling General Idea of Input Modeling Data Collection Identifying Distributions Parameter estimation Goodness of Fit tests Selecting.
University of Southern California Center for Systems and Software Engineering COCOMO Suite Toolset Ray Madachy, NPS Winsor Brown, USC.
Monte Carlo Process Risk Analysis for Water Resources Planning and Management Institute for Water Resources 2008.
Simulation is the process of studying the behavior of a real system by using a model that replicates the system under different scenarios. A simulation.
Function Points Synthetic measure of program size used to estimate size early in the project Easier (than lines of code) to calculate from requirements.
Summarizing Risk Analysis Results To quantify the risk of an output variable, 3 properties must be estimated: A measure of central tendency (e.g. µ ) A.
UNCLASSIFIED Approved for Public Release 07-MDA-2965 (26 OCT 07) Load Bearing Walls: Early Sizing Estimation In The NOSTROMO Tool (U) Dan Strickland Dynetics.
CP – Cost Analytics and Parametric Estimation Directorate UNCLASSIFIED Approved for Public Release 15-MDA-8479 (10 November 15) My Dad Is Bigger Than Your.
1 Reggie Cole Lockheed Martin Senior Fellow Garry Roedler Lockheed Martin Fellow
Statistics for Managers Using Microsoft Excel, 5e © 2008 Pearson Prentice-Hall, Inc.Chap 8-1 Statistics for Managers Using Microsoft® Excel 5th Edition.
Cost Estimation Cost Estimation “The most unsuccessful three years in the education of cost estimators appears to be fifth-grade arithmetic. »Norman.
11/04/091 Some Topics Concerning The COSYSMOR Model/Tool John E. Gaffney, Jr Center For Process Improvement Excellence.
Chapter 6: Descriptive Statistics. Learning Objectives Describe statistical measures used in descriptive statistics Compute measures of central tendency.
Spreadsheet Applications for Construction Cost Estimating BY CHARLES NICKEL, P.E. (225)
1 Bank Risk: Does Size Matter? David E. Allen Akhmad R. Kramadibrata Robert J. Powell Abhay K. Singh School of Accounting, Finance and Economics, ECU.
COCOMO Software Cost Estimating Model Lab 4 Demonstrator : Bandar Al Khalil.
Best in Market Pricing. What is Best in Market Pricing ? An extension of parametric modeling for negotiating lowest pricing for a statement of work consisting.
Supply Chain Management for Non Supply Chain Management Professionals
Constructive Cost Model
Monte Carlo Simulation Managing uncertainty in complex environments.
Personal Software Process Software Estimation
Software Cost Estimation
Presentation transcript:

UNCLASSIFIED Schopenhauer's Proof For Software: Pessimistic Bias In the NOSTROMO Tool (U) Dan Strickland Dynetics Program Software Support Ashley Mathis THAAD Project Office System Software Engineering

UNCLASSIFIED 2 Overview (U) Background Pessimism in Code Size NOSTROMO Tool NOSTROMO Demo

UNCLASSIFIED 3

4 Background (U) In 2003, TPO and Dynetics presented a methodology on using Monte Carlo simulation and uncertainty in COCOMO II to estimate risk in estimates In 2004, TPO and Dynetics presented updated methodologies to include Auto-Generated Code and other updates to NOSTROMO A new methodology for estimating pessimistic size growth has been incorporated into NOSTROMO

UNCLASSIFIED 5 Boehm Horn Curve (U) [Ref (1) - SOFTWARE COST ESTIMATION WITH COCOMO II (P 10) - BOEHM 2000] Size (and effort) should converge over time relative to development phase During Concept of Operation, estimates can be 50% to 200% of the actual final size Some types of software are always on the “bottom” part of the curve – always growing in size

UNCLASSIFIED 6 Code Size Growth (U) Code size estimates (and subsequent cost/schedule estimates) are required long before software requirements are baselined and finalized Code estimates grow to any number of factors: Requirements Volatility Auto-Generated Code Poor Estimating Techniques Many large, complex programs exhibit constant code size growth outside the boundaries of the “horn curve” We define pessimism as extending the boundaries of the expected code size growth to historical limits with only growth potential – “things can only get worse”

UNCLASSIFIED 7 Three Historical Projects – Size Growth (U) Three projects that have completed development or are very near completion Graphs represent code size estimates over time for new code and subsequent Effective SLOC Graphs show growth realization in new and ESLOC growth over time

UNCLASSIFIED 8 Three Historical Projects – Percentage Size Growth (U) Projects new code size grew % from original estimates Projects ESLOC size grew % from original estimates Programs exhibited extensive growth after Critical Design Review (CDR) – during Coding and Unit Testing Percentage growth is outside of the boundaries expected by the horn curve

UNCLASSIFIED 9 Pessimism Curve (U) Plot the data points of the three projects in the same manner as the relative size of the horn curve Assume that the “ceiling” for Pessimism is the final size x and the “floor” encompasses the most extreme data points Where data is unavailable, use the horn curve values and some extrapolation if necessary * ** * Value taken from horn curve – no like value in data ** Value extrapolated – average of previous and subsequent phases

UNCLASSIFIED 10 Smoothed Pessimism Curve (U) Mapping the points of the pessimism curve against the horn curve show an exponential curve of greater growth potential Using MS_Excel, we added an exponential trendline to smooth the pessimism curve and identify a formula for use (R-squared value = ) Using the smoothed curve, we can calculate the ranges for our pessimism curve as tied to development phase We used this new range (inverted) as boundary conditions for size in NOSTROMO NOSTROMO uses a triangle distribution between high and low boundaries for size

UNCLASSIFIED 11 Original NOSTROMO Concept (U) NOSTROMO first takes normal COCOMO II inputs NOSTROMO accounts for uncertainty in the settings NOSTROMO uses Monte Carlo to simulate hundreds of COCOMO II estimates using the inputs and uncertainties NEWT – NOSTROMO Entry Writing Tool – a Delphi polling tool that captures Uncertainty NEWT DATA PAGE REPORTS NOSTROMO Notional Obscurity STatistical Risk Observation MOdel

UNCLASSIFIED 12 New NOSTROMO Concept (U) NEWT DATA PAGE REPORTS NOSTROMO DEFAULT UNCERTAINTY COMBINATION AGC CALCULATOR NOSTROMO offers: multiple methods for inputting Uncertainty combination of subcomponents more reporting capability AGC methodology Pessimistic SLOC estimation PESSIMISM

UNCLASSIFIED 13 Distributions of Uncertainty (U) Setting n-1 Setting n Setting n+1 Level 1 - Certain Level 2 - Low Uncertainty - Normal Level 3 - Medium Uncertainty - Triangle Level 4 - High Uncertainty - Uniform NOSTROMO assumes ceiling and floor limits of the highest and lowest default values for each COCOMO II Scale Factor and Cost Driver NOSTROMO changes the distribution and sets the high and low points based on the level of uncertainty with each factor

UNCLASSIFIED 14 NOSTROMO Application (U) Microsoft Excel 2002 worksheet with attached macros and Visual Basic code Currently on version (as of 10/19/06) Does not use outside applications for Monte Carlo simulation (standard random number generation from Visual basic) Limited testing performed on a proof-of-concept application Suggest limiting Monte Carlo run size to runs Generates two pages of output – Data and Charts Data page contains all outputs from Monte Carlo simulation, charting data, and histograms Charts page contains Confidence Intervals for output of COCOMO II and Putnam models, charts, and histograms NOSTROMO – Data Sheet and CM Control Sheet are Developer pages and should not be removed

UNCLASSIFIED 15 NOSTROMO Input Sheet – Notional Data (U) Software Item Name Scale Factors Code Size Cost Drivers Iterations Putnam Productivity Function Buttons Conditional Formatting Pessimism Toggle Pessimism toggle automatically sets the Requirements Evolution and Volatility to 0% to avoid double counting

UNCLASSIFIED 16 NOSTROMO Pessimism Worksheet (U) Allows the user to develop their own relative size numbers for Pessimism and use in NOSTROMO

UNCLASSIFIED 17 NOSTROMO Outputs – 5000 SLOC (U) 5000 SLOC – Nominal REVL – No Pessimism 5000 SLOC – Pessimism On Pessimism accounts for an 18% increase in Size in the 50 th Percentile NOSTROMO Run

UNCLASSIFIED 18 NOSTROMO Outputs – SLOC (U) 500 KSLOC – Nominal REVL – No Pessimism 500 KSLOC – Pessimism On Pessimism accounts for a 20% increase in Size in the 50 th Percentile NOSTROMO Run

UNCLASSIFIED 19 Demonstration

UNCLASSIFIED 20 Future NOSTROMO Additions and Efforts (U) Addition of Exception Conditions from Ray Madachy’s Expert COCOMO Transition to an application environment (MS-Access or.NET) Expansion of the NOSTROMO tool to address other COCOMO Family models with uncertainties  COSYSMO – especially relevant in development of complex DoD systems  COSOSIMO – System of Systems models are becoming increasingly prevalent in DoD efforts Expansion of the NOSTROMO methodology and tool into Readiness Level models  Software Readiness Levels (SWRL)  Technology Program Management Model (TPMM)

UNCLASSIFIED 21 Conclusion (U) Analysis of size growth potential gives valuable insight into the true risks of software development Software size in many development environments has a tendency to grow, even late into the project development Software estimates need to address any pessimistic growth potentials and software estimators have an obligation to report the risks associated with developments that continue to grow in size New NOSTROMO methodology incorporates pessimistic sizing data to predict the worst-case scenario