1 / 21

Schopenhauers Proof For Software: Pessimistic Bias In the NOSTROMO Tool U

mala
Download Presentation

Schopenhauers Proof For Software: Pessimistic Bias In the NOSTROMO Tool U

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. Schopenhauer's Proof For Software: Pessimistic Bias In the NOSTROMO Tool (U) Dan Strickland Dynetics Program Software Support daniel.strickland@dynetics.com

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

    3. 3

    4. 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

    5. 5 Boehm Horn Curve (U)

    6. 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”

    7. 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

    8. 8 Three Historical Projects – Percentage Size Growth (U) Projects new code size grew 90-180% from original estimates Projects ESLOC size grew 40-120% 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

    9. 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

    10. 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 = 0.9666) 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

    11. 11 Original NOSTROMO Concept (U)

    12. 12 New NOSTROMO Concept (U)

    13. 13 Distributions of Uncertainty (U)

    14. 14 NOSTROMO Application (U) Microsoft Excel 2002 worksheet with attached macros and Visual Basic code Currently on version 0.3.15 (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 500-2000 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

    15. 15 NOSTROMO Input Sheet – Notional Data (U)

    16. 16 NOSTROMO Pessimism Worksheet (U)

    17. 17 NOSTROMO Outputs – 5000 SLOC (U)

    18. 18 NOSTROMO Outputs – 500000 SLOC (U)

    19. 19 Demonstration

    20. 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)

    21. 21 Conclusion (U) 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

More Related