Zen in the Art of Cost Estimation

Slides:



Advertisements
Similar presentations
Chapter 10 Schedule Your Schedule. Copyright 2004 by Pearson Education, Inc. Identifying And Scheduling Tasks The schedule from the Software Development.
Advertisements

Example © 2012 Lockheed Martin Corporation. All Rights Reserved. October 2012 Proxy Estimation Costing for Systems (PECS) Reggie Cole Lockheed Martin Senior.
COSYSMO 2.0 Workshop Summary (held Monday, March 17 th 2008) USC CSSE Annual Research Review March 18, 2008 Jared Fortune.
The Comparison of the Software Cost Estimating Methods
Working Group Meeting (Outbrief) Ricardo Valerdi, Indrajeet Dixit, Garry Roedler Tuesday.
March 2002 COSYSMO: COnstructive SYStems Engineering Cost MOdel Ricardo Valerdi USC Annual Research Review March 11, 2002.
University of Southern California Center for Software Engineering CSE USC COSYSMO: Constructive Systems Engineering Cost Model Barry Boehm, USC CSE Annual.
11/08/06Copyright 2006, RCI1 CONIPMO Workshop Out-brief 21 st International Forum on COCOMO and Software Cost Modeling Donald J. Reifer Reifer Consultants,
Some Experience With COSYSMOR At Lockheed Martin
1 COSYSMO 3.0: Future Research Directions Jared Fortune University of Southern California 2009 COCOMO Forum Massachusetts Institute of Technology.
University of Southern California Center for Software Engineering CSE USC ©USC-CSE 10/23/01 1 COSYSMO Portion The COCOMO II Suite of Software Cost Estimation.
Extensions of COSYSMO to Represent Reuse 21 st International Forum on COCOMO and Software Cost Modeling November 9, 2006 Ricardo ValerdiJohn Gaffney Garry.
COSYSMO Reuse Extension 22 nd International Forum on COCOMO and Systems/Software Cost Modeling November 2, 2007 Ricardo ValerdiGan Wang Garry RoedlerJohn.
1 Systems Engineering Reuse Principles Jared Fortune, USC Ricardo Valerdi, MIT COSYSMO COCOMO Forum 2010 Los Angeles, CA.
1 Results of Reuse Survey Jared Fortune, USC Ricardo Valerdi, MIT Gan Wang, BAE COSYSMO COCOMO Forum 2008 Los Angeles, CA.
COSYSMO Reuse Extension 22 nd International Forum on COCOMO and Systems/Software Cost Modeling November 2, 2007 Ricardo ValerdiGan Wang Garry RoedlerJohn.
System-of-Systems Cost Modeling: COSOSIMO July 2005 Workshop Results Jo Ann Lane University of Southern California Center for Software Engineering.
1 Discussion on Reuse Framework Jared Fortune, USC Ricardo Valerdi, MIT COSYSMO COCOMO Forum 2008 Los Angeles, CA.
Estimating System of Systems Engineering (SoSE) Effort Jo Ann Lane, USC Symposium on Complex Systems Engineering January 11-12, 2007.
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,
Iterative development and The Unified process
Karolina Muszyńska Based on
1 COSYSMO 2.0: A Cost Model and Framework for Systems Engineering Reuse Jared Fortune University of Southern California Ricardo Valerdi Massachusetts Institute.
COSOSIMO* Workshop Outbrief 14 March 2006 Jo Ann Lane University of Southern California Center for Software Engineering CSE.
©2006 BAE Systems. Practical Implementation of COSYSMO Reuse Extension Gan Wang, Aaron Ankrum, Cort Millar, Alex Shernoff, Ricardo Valerdi.
Towards COSYSMO 2.0: Update on Reuse Jared Fortune, USC Ricardo Valerdi, MIT USC ARR 2009 Los Angeles, CA.
COSYSMO Workshop Outbrief CSSE Annual Research Review Los Angeles, CA Mon March 16 & Tues March 17, 2009 Ricardo Valerdi.
Copyright © 2001, Software Productivity Consortium NFP, Inc. SOFTWARE PRODUCTIVITY CONSORTIUM SOFTWARE PRODUCTIVITY CONSORTIUM COSYSMO Overview INCOSE.
ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. Unification of systems and software engineering cost models.
Thirteenth Lecture Hour 8:30 – 9:20 am, Sunday, September 16 Software Management Disciplines Process Automation (from Part III, Chapter 12 of Royce’ book)
Chapter © 2012 Pearson Education, Inc. Publishing as Prentice Hall.
1 System Architecture Measurement. 2 Continuation of NDIA Measurements Task Goal of last year’s task was to: Identify a set of leading indicators that.
Database System Development Lifecycle 1.  Main components of the Infn System  What is Database System Development Life Cycle (DSDLC)  Phases of the.
9/17/2002 COSYSMO Usage Experience Panel: What is Happening at Lockheed Martin Garry Roedler, Lockheed Martin Engineering Process Improvement Center
University of Southern California Center for Software Engineering C S E USC Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6 Barry.
Gan Wang 22 October th International Forum on COCOMO® and Systems/Software Cost Modeling in conjunction with the Practical Software and Systems.
Design Process … and some design inspiration. Course ReCap To make you notice interfaces, good and bad – You’ll never look at doors the same way again.
Information Technology Investment Management (ITIM) Solomon Negash, Ph.D.
Lecture №1 Role of science in modern society. Role of science in modern society.
2-5 November 2010 University of Southern California Los Angeles CA Systems Engineering Desk Reference An Aid for Cost Estimators Sherry Stukes Jet Propulsion.
Overview of Addressing Risk with COSYSMO Garry Roedler & John Gaffney Lockheed Martin March 17, 2008.
(8) Potential required for planning with management Top-Down Estimating Method: Top-down estimating method is also called Macro Model. Using it, estimation.
Decision Support and Business Intelligence Systems (9 th Ed., Prentice Hall) Chapter 12: Artificial Intelligence and Expert Systems.
1 Agile COCOMO II: A Tool for Software Cost Estimating by Analogy Cyrus Fakharzadeh Barry Boehm Gunjan Sharman SCEA 2002 Presentation University of Southern.
INFORMATION MANAGEMENT: THE NEXUS OF BUSINESS AND IT CHAPTER © 2015 Pearson Education, Inc. Publishing as Prentice Hall.
Project Cost Management
Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6
Decision Support and Business Intelligence Systems
CS4311 Spring 2011 Process Improvement Dr
Multivariate Analysis - Introduction
Chapter 18 Maintaining Information Systems
Presented by Munezero Immaculee Joselyne PhD in Software Engineering
Managing the System PPT SOURCE : Shari L. Pfleeger Joann M. Atlee.
IEEE Std 1074: Standard for Software Lifecycle
Software Processes (a)
Software Product Lines
Software Engineering Lecture 09 & 10.
Using COCOMO for Software Decisions - from COCOMO II Book, Section 2
COSYSMO Delphi Round 2 Results
Towards COSYSMO 2.0: Update on Reuse
Informatics 121 Software Design I
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.
Automated Analysis and Code Generation for Domain-Specific Models
Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6
University of Southern California Center for Software Engineering
COSYSMO: Constructive Systems Engineering Cost Model
Some Important Skills Every Software Testers Should Have
Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6
Qi Li,Qing Wang,Ye Yang and Mingshu Li
Generalized Reuse Model for COSYSMO Workshop Outbrief
Presentation transcript:

Zen in the Art of Cost Estimation October 2008 23rd International Forum on COCOMO and Systems/Software Cost Modeling USC Ricardo Valerdi, Ph.D. Dan Ligett Massachusetts Institute of Technology Softstar

Acknowledgements Doug Hubbard, Indrajeet Dixit, Marilee Wheaton, Tony Hart, Roger Smith, and Lacey Edwards Eberhardt Rechtin was inspiration for paper The lessons of Barry Boehm

Outline Zen and cost estimation Rechtin’s heuristics Criteria for developing heuristics Four categories of heuristics (Qty. of heuristics) Development (5) Calibration (6) Usage (16) Estimation (4)

Zen Means “wisdom-meditation” Popularized in the West by German philosophy professor Herrigel (1948) in his book Zen in the Art of Archery Through years of practice, an activity becomes effortless both mentally and physically More than 200 books follow this idea… Zen and the Art of Motorcycle Maintenance (1974) an ordinary task, such as fixing your motorcycle, can have a spiritual dimension

How do we capture wisdom from cost estimation experience? Western Zen Emphasizes experiential wisdom De-emphasizes theoretical knowledge Ensō is Japanese for “circle” but also refers to “eternal truth” How do we capture wisdom from cost estimation experience?

Experiential Closed Loop Model Development Heuristics experience lead to Model Calibration Heuristics Rechtin’s Systems Architecting Heuristics COSYSMO Model COSYSMO Tool inspired implemented in Model Usage Heuristics Cost Estimation Heuristics confirmed

Elements of Successful Systems Architects Know the engineering fundamentals on which each architecture is based Common sense, derived from specific engineering fundamentals and the experience of other architects, is needed to reduce the search to practical dimensions Experience and judgment are necessary Hands-on system problem solving is mandatory Acquire the insights gained from experience in the design laboratories on the job Rechtin, E. 1991. Systems Architecting: Creating & Building Complex Systems, Upper Saddle River: Prentice Hall.

Systems Architecting Heuristic Cost Driver Success is defined by the beholder (understand his or her requirements) not by the architect Number of System Requirements The greatest leverage in systems architecting is at the interfaces Number of Major Interfaces One person’s architecture is another person’s system is another person’s component Architecture Understanding There will always be friction on the “illity” boundary Level of Service Requirements If you don’t understand the existing system you can’t be sure you are re-architecting a better one Migration complexity “Proven” and “State of the Art” are mutually exclusive qualities Technology Maturity Amid a wash of paper, a small number of documents become critical pivots around which every project manager revolves Documentation to Match Life Cycle Needs Organize personnel tasks to minimize the time individuals spend interfacing # and Diversity of Installations & Platforms A strong coherent constituency is essential Stakeholder Team Cohesion

Criteria for Developing Heuristics Agreement among experts that the heuristic is useful and correct Heuristic must stand the test of time Heuristic must be resilient across different scenarios Heuristic must demonstrate value by reoccurring more than once Not be considered obvious by everybody, particularly people who are new to the field

Won’t give exact definition of ‘Heuristic’... Approximate Informal Rule of thumb Common sense Intuitive Satisfactory Simplification Determined by experience

Four Categories of Heuristics Model Development Model Calibration Usage Estimation

Model Development Heuristics Heuristic #1: More parameters increase the explanatory power of the model, but too many parameters make the model too complex to use and difficult to calibrate. Heuristic #2: Break the problem and analysis into phases over time; the right amount of granularity is important. Heuristic #3: Let available data drive the application boundaries of the model. Heuristic #4: Design the rating scale according to the phenomenon being modeled. Heuristic #5: Some system characteristics are more likely to be cost penalties than cost savings.

Development-related Heuristic Heuristic #5: Some system characteristics are more likely to be cost penalties than cost savings. Migration Complexity Nominal High Very High Extra High Legacy contractor Self; legacy system is well documented. Original team largely available Self; original development team not available; most documentation available Different contractor; limited Original contractor out of business; no Effect of legacy system on new system Everything is new; legacy system is completely replaced or non- existent Migration is restricted to integration only Migration is related to integration and development to integration, development, architecture and design

Model Calibration Heuristics Heuristic #6: All calibrations are local. Heuristic #7: Calibrations fix chronic errors in over- or underestimation. Heuristic #8: Be skeptical of data that you did not collect. Heuristic #9: For every parameter in the model, 5 data points are required for the calibration. Heuristic #10: Don’t do more analysis than the data is worth. Heuristic #11: You need less data than you think, you have more data than you think.

Calibration-related Heuristic Heuristic #6: All calibrations are local. Before local calibration After local calibration

Usage Heuristics Heuristic #12: A model is not reality. Heuristic #13: All models are wrong, but some of them are useful. Heuristic #14: Begin with the end in mind. Heuristic #15: Requirements are king. Heuristic #16: Not all requirements are created equal. Heuristic #17: Reuse is not free.

Usage Heuristics II Heuristic #18: Operational Scenarios may come first, but requirements will ultimately describe the system. Heuristic #19: Don't double dip. Heuristic #20: Find your sea level. Heuristic #21: Nominal is the norm. Heuristic #22: If you're estimating a large project, personnel capability is Nominal. Heuristic #23: Most of your off-Nominal cost drivers should match your last project.

Usage Heuristics III Heuristic #24: If you're going to sin, sin consistently. Heuristic #25: Use a combination of models to estimate total system cost. Heuristic #26: Avoid overlap between models. Heuristic #27: Estimate using multiple methods (analogy, parametric, etc.)

Usage-related Heuristic Heuristic #17: Reuse is not free. Example: System requirements New 1.0 Modified vs. New Threshold Modified 0.65 Deleted Adopted 0.51 Reuse weight 0.43 Managed 0.15

Estimation Heuristics Heuristic #28: Estimate early and often. Heuristic #29: Experts all disagree forever. Bound the options they are given to evaluate. Heuristic #30: Models are optimistic. Heuristic #31: People are generally optimistic.

Estimating-related Heuristic Heuristic #30: Models are optimistic. Heuristic #31: People are generally optimistic. Koehler, D. J., Harvey, N. (1997). Confidence judgments by actors and observers. Journal of Behavioral Decision Making. 10, 221-242.

Conclusions Surviving the test of time is a sign of quality The collection of heuristics obtained from experiences with developing, calibrating, and using cost models provides important insights