University of Southern California Center for Systems and Software Engineering Next-Generation Software Sizing and Costing Metrics Workshop Report Wilson.

Slides:



Advertisements
Similar presentations
Systems Engineering From a Life Cycle Perspective John Groenenboom Director Engineering – Mesa Boeing Rotorcraft Dec 12, 2007.
Advertisements

Cost as a Business Driver 1 John Brown C Eng MIEE mr_ Software Cost Estimation.
Incremental Commitment Spiral Model, Expedited Engineering, and Kanban Jo Ann Lane and Alexey Tregubov USC CSSE Rich Turner Stevens University.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Software Process Models
CS487 Software Engineering Omar Aldawud
Software Engineering CSE470: Process 15 Software Engineering Phases Definition: What? Development: How? Maintenance: Managing change Umbrella Activities:
A Sizing Framework for DoD Software Cost Analysis Raymond Madachy, NPS Barry Boehm, Brad Clark and Don Reifer, USC Wilson Rosa, AFCAA
University of Southern California Center for Systems and Software Engineering Next Generation Estimation Methods and Management Metrics: Working Group.
Cocomo II Constructive Cost Model [Boehm] Sybren Deelstra.
USC 21 st International Forum on Systems, Software, and COCOMO Cost Modeling Nov 2006 University of Southern California Center for Software Engineering.
University of Southern California Center for Software Engineering CSE USC System Dynamics Modeling of a Spiral Hybrid Process Ray Madachy, Barry Boehm,
University of Southern California Center for Software Engineering CSE USC COSYSMO: Constructive Systems Engineering Cost Model Barry Boehm, USC CSE Annual.
Software Engineering. How many lines of code? Average CS1004 assignment: 200 lines Average CS4115 project: 5000 lines Corporate e-commerce project: 80,000.
University of Southern California Center for Systems and Software Engineering Productivity Data Analysis and Issues Brad Clark, Thomas Tan USC CSSE Annual.
DoD Systems and Software Engineering A Strategy for Enhanced Systems Engineering Kristen Baldwin Acting Director, Systems and Software Engineering Office.
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
University of Southern California Center for Systems and Software Engineering An Investigation on Domain-Based Effort Distribution Thomas Tan 26 th International.
Software Engineering.
University of Southern California Center for Systems and Software Engineering Integrating Systems and Software Engineering (IS&SE) with the Incremental.
University of Southern California Center for Systems and Software Engineering Next Generation Estimation Methods and Management Metrics: Working Group.
I n t e g r i t y - S e r v i c e - E x c e l l e n c e Headquarters U.S. Air Force Next-Generation Systems and Software Cost Estimation Wilson Rosa Technical.
Chapter 1 Assuming the Role of the Systems Analyst
May 11, 2004CS WPI1 CS 562 Advanced SW Engineering Lecture #5 Tuesday, May 11, 2004.
I n t e g r i t y - S e r v i c e - E x c e l l e n c e Headquarters U.S. Air Force Next-Generation Systems and Software Cost Estimation Wilson Rosa Technical.
University of Southern California Center for Systems and Software Engineering Building Cost Estimating Relationships for Acquisition Decision Support Brad.
Introduction Wilson Rosa, AFCAA CSSE Annual Research Review March 8, 2010.
University of Southern California Center for Systems and Software Engineering Assessing the IDPD Factor: Quality Management Platform Project Thomas Tan.
USC 21 st International Forum on Systems, Software, and COCOMO Cost Modeling Nov 2006 University of Southern California Center for Software Engineering.
University of Southern California Center for Systems and Software Engineering Software Cost Estimation Metrics Manual 26 th International Forum on COCOMO.
University of Southern California Center for Systems and Software Engineering AFCAA Database and Metrics Manual Ray Madachy, Brad Clark, Barry Boehm, Thomas.
SRDR Data Analysis Workshop Summary Brad Clark Ray Madachy Thomas Tan 25th International Forum on COCOMO and Systems/Software Cost Modeling November 5,
COSYSMO Reuse Extension COSYSMO Workshop – USC CSSE Annual Research Review March 17, 2008 Ricardo ValerdiGan Wang Garry RoedlerJohn Rieff Jared Fortune.
University of Southern California Center for Systems and Software Engineering © 2009, USC-CSSE 1 An Analysis of Changes in Productivity and COCOMO Cost.
Improving ERP Cost Estimating
COCOMO-SCORM: Cost Estimation for SCORM Course Development
Dillon: CSE470: SE, Process1 Software Engineering Phases l Definition: What? l Development: How? l Maintenance: Managing change l Umbrella Activities:
1 Process Engineering A Systems Approach to Process Improvement Jeffrey L. Dutton Jacobs Sverdrup Advanced Systems Group Engineering Performance Improvement.
Chapter 3: Software Maintenance Process Omar Meqdadi SE 3860 Lecture 3 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Chapter 6 : Software Metrics
Product Development Chapter 6. Definitions needed: Verification: The process of evaluating compliance to regulations, standards, or specifications.
Principles of Information Systems, Sixth Edition Systems Design, Implementation, Maintenance, and Review Chapter 13.
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
MD Digital Government Summit, June 26, Maryland Project Management Oversight & System Development Life Cycle (SDLC) Robert Krauss MD Digital Government.
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.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Introduction to Software Project Estimation I (Condensed) Barry Schrag Software Engineering Consultant MCSD, MCAD, MCDBA Bellevue.
Lecture 2 –Approaches to Systems Development Method 10/9/15 1.
March 2004 At A Glance NASA’s GSFC GMSEC architecture provides a scalable, extensible ground and flight system approach for future missions. Benefits Simplifies.
Cmpe 589 Spring 2006 Lecture 2. Software Engineering Definition –A strategy for producing high quality software.
Lecture 4 – XP and Agile 17/9/15. Plan-driven and agile development Plan-driven development A plan-driven approach to software engineering is based around.
Principles of Information Systems, Sixth Edition 1 Systems Design, Implementation, Maintenance, and Review Chapter 13.
Estimating “Size” of Software There are many ways to estimate the volume or size of software. ( understanding requirements is key to this activity ) –We.
Effort Estimation In WBS,one can estimate effort (micro-level) but needed to know: –Size of the deliverable –Productivity of resource in producing that.
Proposed Metrics Definition Highlights Raymond Madachy Naval Postgraduate School CSSE Annual Research Review March 8, 2010.
University of Southern California Center for Systems and Software Engineering Reducing Estimation Uncertainty with Continuous Assessment: Tracking the.
University of Southern California Center for Systems and Software Engineering Software Metrics Unification and Productivity Domain Workshop Summary Brad.
University of Southern California Center for Systems and Software Engineering Current and Future Challenges for Software Cost Estimation and Data Collection.
+ Incremental Development Productivity Decline Ramin Moazeni, Daniel Link.
Lectures 2 & 3: Software Process Models Neelam Gupta.
Chapter 1 Assuming the Role of the Systems Analyst.
Advanced Software Engineering Dr. Cheng
Managing the Project Lifecycle
Productivity Data Analysis and Issues
Tutorial: Software Cost Estimation Tools – COCOMO II and COCOTS
SLOC and Size Reporting
Software Metrics “How do we measure the software?”
Ramin Moazeni Winsor Brown Barry Boehm
Center for Software and Systems Engineering,
Presentation transcript:

University of Southern California Center for Systems and Software Engineering Next-Generation Software Sizing and Costing Metrics Workshop Report Wilson Rosa, Barry Boehm, Ray Madachy, Brad Clark USC CSSE Annual Research Review March 9, 2010

University of Southern California Center for Systems and Software Engineering USC CSSE Annual Research Review - Mar Topics AFCAA Study Overview Current and Future Challenges for Software Cost Estimation and Data Collection Proposed Metrics Definition Highlights Productivity Data Analysis and Issues for Discussion This work is sponsored by the Air Force Cost Analysis Agency

University of Southern California Center for Systems and Software Engineering Project Background Goal is to improve the quality and consistency of estimating methods across cost agencies and program offices through guidance, standardization, and knowledge sharing. Project led by the Air Force Cost Analysis Agency (AFCAA) working with service cost agencies, and assisted by University of Southern California and Naval Postgraduate School We will publish the AFCAA Software Cost Estimation Metrics Manual to help analysts and decision makers develop accurate, easy and quick software cost estimates for avionics, space, ground, and shipboard platforms. 3USC CSSE Annual Research Review - Mar 2010

University of Southern California Center for Systems and Software Engineering AFCAA Software Cost Estimation Metrics Manual Chapter 1: Software Estimation Principles Chapter 2: Product Sizing Chapter 3: Product Growth Chapter 4: Effective SLOC Chapter 5: Historical Productivity Chapter 6: Model Calibration Chapter 7: Calibrated SLIM-ESTIMATE Chapter 8: Cost Risk and Uncertainty Metrics Chapter 9: Data Normalization Chapter 10: Software Resource Data Report Chapter 11: Software Maintenance Chapter 12: Lessons Learned Chapter 1: Software Estimation Principles Chapter 2: Product Sizing Chapter 3: Product Growth Chapter 4: Effective SLOC Chapter 5: Historical Productivity Chapter 6: Model Calibration Chapter 7: Calibrated SLIM-ESTIMATE Chapter 8: Cost Risk and Uncertainty Metrics Chapter 9: Data Normalization Chapter 10: Software Resource Data Report Chapter 11: Software Maintenance Chapter 12: Lessons Learned 4USC CSSE Annual Research Review - Mar 2010

University of Southern California Center for Systems and Software Engineering Stakeholder Communities Research is collaborative across heterogeneous stakeholder communities who have helped us in refining our data definition framework, domain taxonomy and providing us project data. –Government agencies –Tool Vendors –Industry –Academia SLIM-Estimate ™ TruePlanning ® by PRICE Systems 5USC CSSE Annual Research Review - Mar 2010

University of Southern California Center for Systems and Software Engineering Current and Future DoD Cost Estimation Challenges Emergent requirements –Cannot prespecify requirements, cost, schedule, EVMS –Need to estimate and track early concurrent engineering Rapid change –Long acquisition cycles breed obsolescence –DoD Inst emphasis on evolutionary acquisition Net-centric systems of systems –Incomplete visibility and control of elements Model, COTS, service-based, Brownfield systems –New phenomenology, counting rules Always-on, never-fail systems –Need to balance agility and high assurance 6USC CSSE Annual Research Review - Mar 2010

University of Southern California Center for Systems and Software Engineering Rapid Change Creates a Late Cone of Uncertainty – Need evolutionary/incremental vs. one-shot development Uncertainties in competition, technology, organizations, mission priorities 7USC CSSE Annual Research Review - Mar 2010

University of Southern California Center for Systems and Software Engineering Incremental Development Productivity Decline (IDPD) Example: Site Defense BMD Software –5 builds, 7 years, $100M; operational and support software –Build 1 productivity over 300 LOC/person month –Build 5 productivity under 150 LOC/PM Including Build 1-4 breakage, integration, rework 318% change in requirements across all builds IDPD factor = 20% productivity decrease per build –Similar trends in later unprecedented systems –Not unique to DoD: key source of Windows Vista delays Maintenance of full non-COTS SLOC, not ESLOC –Build 1: 200 KSLOC new; 200K = 240K ESLOC –Build 2: 400 KSLOC of Build 1 software to maintain, integrate USC CSSE Annual Research Review - Mar 20108

9 SRDR Data Source

University of Southern California Center for Systems and Software Engineering Proposed Metrics Definition Highlights Data quality and standardization issues –No reporting of equivalent “new” code size inputs: Design Modified, Code Modified, Integration Testing Modified, Software Understandability, Programmer Unfamiliarity –No common SLOC reporting – logical, physical, etc. –No standard definitions – Application Domain, Build, Increment, Spiral,… –No common effort reporting – analysis, design, code, test, CM, QA,… –No reporting of quality measures – defect density, defect containment, etc. 10USC CSSE Annual Research Review - Mar 2010

University of Southern California Center for Systems and Software Engineering Proposed Metrics Definition Highlights Limited empirical research within DoD on other contributors to productivity besides effort and size: –Operating Environment, Application Domain, and Product Complexity –Personnel Capability –Required Reliability –Quality – Defect Density, Defect Containment –Integrating code from previous deliveries – Builds, Spirals, Increments, etc. –Converting to Equivalent SLOC Reported code sizes for Modified, Unmodified/Reused add no value to a cost estimate unless they translate into equivalent “new” SLOC This research and the resulting Cost Metrics Manual will discuss and address these issues 11USC CSSE Annual Research Review - Mar 2010

University of Southern California Center for Systems and Software Engineering USC CSSE Annual Research Review - Mar SRDR Data Notes: SRDR: Software Resources Data Report Missing Domains: Internet, Maintenance and Diagnostics, Spacecraft bus

University of Southern California Center for Systems and Software Engineering Data Analysis Issues USC CSSE Annual Research Review - Mar Preliminary Results - Do Not Use! PM=15*(EKSLOC) 0.62

University of Southern California Center for Systems and Software Engineering Sizing Issues -1 USC CSSE Annual Research Review - Mar NCSS to Logical SLOC Conversion Ada: 45% C/C++: 61% C#: 61% Java: 72%

University of Southern California Center for Systems and Software Engineering Sizing Issues -2 No Modified Code parameters –Percent Design Modified (DM) –Percent Code Modified (CM) –Percent Integration and Test Modified (IM) –Software Understanding (SU) –Programmer Unfamiliarity (UNFM) Program interviews provided parameters for some records USC CSSE Annual Research Review - Mar

University of Southern California Center for Systems and Software Engineering Effort Issues Missing effort reporting for different lifecycle phases –Software requirements analysis (REQ) –Software architectural design (ARCH) –Software coding and testing (CODE) –Software integration (INT) –Software qualification testing (QT) –Software management, CM, QA, etc. (Other – very inconsistent) USC CSSE Annual Research Review - Mar

Application DomainsVery EasyEasyNominalChallengingVery Challenging Business Systems Large biz system Trillion $/day transaction Internet Simple web pages Web application (shopping) Mega-web application Tools and Tool Systems Verification toolsSafety critical Scientific Systems Offline data reduction Large dataset Simulation and Modeling Low fidelity simulator Physical phenomenon Test and Evaluation Usual Distributed debugging TrainingSet of screens Simulation network Command and Control Taxi-cab dispatch SOS (C4ISR) Mission Management Usual Multi-level security and safety Weapon Delivery and Control Weapon spaceSafety Communications Noise, anomalies handling Radio Safety/Security Frequency- hopping Application Domain Issues 17USC CSSE Annual Research Review - Mar 2010

University of Southern California Center for Systems and Software Engineering Proposed SRDR Changes -1 Current SRDRProposed Modifications Application Types (3.7.1 – 17)Reorganize around Operating Environments and Application Domains Add Mission Criticality (add reliability and complexity in a single rating scale) Revisit detailed definitions of the Application Domains Software and External Interface Requirements Add anticipated requirements volatility to , 2 Use percentage of requirements change as volatility input (SRR baseline) Personnel Experience & Turnover Add to Expand years of experience rating scale to 12 years Amount of New (>25%) Modified (<25% mod) Code Add DM, CM, IM, SU, & UNFM factors for modified code Incorporate DM-CM-IM questionnaire Add IM for Reused code Definitions for code types Count at the level it will be maintained USC CSSE Annual Research Review - Mar

University of Southern California Center for Systems and Software Engineering Proposed SRDR Changes -2 Current SRDRProposed Modifications Deleted CodeReport deleted code counts Project- or CSCI-level dataSpecify the level of data reporting All Other Direct Software Engineering Development Effort (4.7): Project Management IV&V Configuration Management Quality Control Problem Resolution Library Management Process Improvement Measurement Training Documentation Data Conversion Customer-run Acceptance Test Software Delivery, Installation & Deployment Break into: Management functions Configuration / Environment functions Assessment functions Organization functions (e.g. user & maintainer documentation, measurement, training, process improvement, etc.) USC CSSE Annual Research Review - Mar

University of Southern California Center for Systems and Software Engineering Concluding Remarks Goal is to publish a manual to help analysts develop quick software estimates using empirical metrics from recent programs Additional information is crucial for improving data quality across DoD We want your input on Productivity Domains and Data Definitions Looking for collaborators Looking for peer-reviewers Need more data 20USC CSSE Annual Research Review - Mar 2010