The COCOMO II Estimating Model Suite



Similar documents
CSSE 372 Software Project Management: Software Estimation With COCOMO-II

MTAT Software Economics. Lecture 5: Software Cost Estimation

COCOMO (Constructive Cost Model)

Software cost estimation. Predicting the resources required for a software development process

COCOMO II Model Definition Manual

COCOMO-SCORM Interactive Courseware Project Cost Modeling

Cost Estimation Driven Software Development Process

COCOMO II Model Definition Manual

A QUALITY-BASED COST ESTIMATION MODEL FOR THE PRODUCT LINE LIFE CYCLE

University of Southern California COCOMO Reference Manual

Effect of Schedule Compression on Project Effort

REVIC 11: Converting the REVIC Model to COCOMO I1

Software cost estimation

Topics. Project plan development. The theme. Planning documents. Sections in a typical project plan. Maciaszek, Liong - PSE Chapter 4

Incorporating Data Mining Techniques on Software Cost Estimation: Validation and Improvement

Cost Models for Future Software Life Cycle Processes: COCOMO 2.0 *

This past year, electronic commerce

Chapter 23 Software Cost Estimation

Cost Estimation for Secure Software & Systems

Software cost estimation

Dr. Barry W. Boehm USC Center for Software Engineering

Modern Tools to Support DoD Software Intensive System of Systems Cost Estimation

USC COCOMO. Reference Manual. University of Southern California

Comparative Analysis of COCOMO II, SEER-SEM and True-S Software Cost Models

COCOMO II and Big Data

E-COCOMO: The Extended COst Constructive MOdel for Cleanroom Software Engineering

SOFTWARE COST DRIVERS AND COST ESTIMATION IN NIGERIA ASIEGBU B, C AND AHAIWE, J

Extending Change Impact Analysis Approach for Change Effort Estimation in the Software Development Phase

Knowledge-Based Systems Engineering Risk Assessment

Project Plan. Online Book Store. Version 1.0. Vamsi Krishna Mummaneni. CIS 895 MSE Project KSU. Major Professor. Dr.Torben Amtoft

Software cost estimation

Assessing Quality Processes with ODC COQUALMO

2 Evaluation of the Cost Estimation Models: Case Study of Task Manager Application. Equations

Cost Estimation Strategies COST ESTIMATION GUIDELINES

Software Migration Project Cost Estimation using COCOMO II and Enterprise Architecture Modeling

Project Plan 1.0 Airline Reservation System

CISC 322 Software Architecture

Web Development: Estimating Quick-to-Market Software

Finally, Article 4, Creating the Project Plan describes how to use your insight into project cost and schedule to create a complete project plan.

IMPROVED SIZE AND EFFORT ESTIMATION MODELS FOR SOFTWARE MAINTENANCE. Vu Nguyen

Keywords Software Cost; Effort Estimation, Constructive Cost Model-II (COCOMO-II), Hybrid Model, Functional Link Artificial Neural Network (FLANN).

Simulation for Business Value and Software Process/Product Tradeoff Decisions

AN ENHANCED MODEL TO ESTIMATE EFFORT, PERFORMANCE AND COST OF THE SOFTWARE PROJECTS

CS Homework 4 p. 1. CS Homework 4. To become more familiar with top-down effort estimation models, especially COCOMO 81 and COCOMO II.

Software Intensive Systems Cost and Schedule Estimation

Towards a Methodology to Estimate Cost of Object- Oriented Software Development Projects

Software Development Cost and Time Forecasting Using a High Performance Artificial Neural Network Model

Software Engineering. Dilbert on Project Planning. Overview CS / COE Reading: chapter 3 in textbook Requirements documents due 9/20

Software Engineering. Reading. Effort estimation CS / COE Finish chapter 3 Start chapter 5

Fuzzy Expert-COCOMO Risk Assessment and Effort Contingency Model in Software Project Management

Module 11. Software Project Planning. Version 2 CSE IIT, Kharagpur

Software Cost Estimation: A Tool for Object Oriented Console Applications

1) Analyze Software Requirements 2) Evaluate and Select COTS solution(s)

An Intelligent Approach to Software Cost Prediction

Safety critical software and development productivity

A DIFFERENT KIND OF PROJECT MANAGEMENT

A Comparative Evaluation of Effort Estimation Methods in the Software Life Cycle

A HYBRID FUZZY-ANN APPROACH FOR SOFTWARE EFFORT ESTIMATION

Extending CMMI Level 4/5 Organizational Metrics Beyond Software Development

Software Cost Estimation Metrics Manual for Defense Systems

Improving Software Development Economics Part I: Current Trends

Software Cost Estimating. Acknowledgments

Current and Future Challenges for Software Cost Estimation and Data Collection

Tracking Software Progress

Software project cost estimation using AI techniques

Software effort estimation and risk analysis A Survey Poonam kaushal Poonamkaushal14@gmail.com

A DIFFERENT KIND OF PROJECT MANAGEMENT: AVOID SURPRISES

Literature Survey on Algorithmic Methods for Software Development Cost Estimation

Software Development Cost Estimation Approaches A Survey 1. Barry Boehm, Chris Abts. University of Southern California. Los Angeles, CA

Network Security Project Management: A Security Policy-based Approach

Software Cost Estimation

The 10 Step Software Estimation Process For Successful Software Planning, Measurement and Control

The software maintenance project effort estimation model based on function points

Best Practices for the Acquisition of COTS-Based Software Systems (CBSS): Experiences from the Space Systems Domain

10 Keys to Successful Software Projects: An Executive Guide

A Comparison of Calibrated Equations for Software Development Effort Estimation

Fuzzy Logic based framework for Software Development Effort Estimation

Cost Drivers of a Parametric Cost Estimation Model for Data Mining Projects (DMCOMO)

Transcription:

The COCOMO II Estimating Model Suite Barry Boehm, Chris Abts, Jongmoon Baik, Winsor Brown, Sunita Chulani, Cyrus Fakharzadeh, Ellis Horowitz and Donald Reifer Center for Software Engineering University of Southern California Abstract: The Center for Software Engineering at the University of Southern California is researching the issues that impact the way industry will estimate costs during the next millennium. The results of this research are being used to develop the following standalone models which eventually will be integrated into and become part of the COCOMO II estimating model suite:! COCOTS (COstructive COTS) - The Center is actively researching estimating issues associated with using commercial off-the-shelf (COTS) software. Such costs include those associated with evaluating candidate packages, tailoring the packages so they can be used productively, developing glue code to bind these packages into an application and integrating and testing the completed system.! COQUALMO (COnstructive QUALity MOdel) The Center is also researching the issues associated with tradeoffs between cost, schedule and quality. Such tradeoffs are being represented as a function of software defect introduction and removal phenomena. Balance between the latent defect rates and the desire to ship must be accommodated.! CORADMO (COnstructive Rapid Application Development MOdel) In addition, the Center is investigating techniques that can be used to reduce software development cycle time. Five classes of strategies whose implementation can dramatically impact schedule time (and related costs) have been identified. These strategies revolve around more than just adding people to the effort.! COSSEMO (COnstructive Staged Schedule and Effort MOdel) The Center is also looking at the issues associated with how costs are distributed when different paradigms are used to develop software. Rollup of parallel builds and the impact of different ways of staging the development are being examined.! COPROMO (COnstructive PROductivity improvement Model) Finally, the Center is researching ways to use models to determine optimal investment strategies. Such models determine the return on investment by calculating the productivity increases associated with the use of new technologies. This paper will summarize each of these research areas and could act as an opener for a session on software estimating. The focus of this presentation will be on how each of these efforts addresses issues that software managers will face as they develop software estimates during the next decade.

Biography - Donald J. Reifer Donald J. Reifer is one of the leading figures in the fields of software engineering and management with over 30 years of progressive experience in both industry and government. From 1993 to 1995, Reifer managed the DoD Software Initiatives Office under an Intergovernmental Personnel Act (IPA) assignment with the Defense Information Systems Agency (DISA). As part of this assignment, he acted as Director of the DoD Software Reuse Initiative and Chief of the Ada Joint Program Office. Previously with TRW, Reifer served as the Deputy Program Manager for their Global Positioning Satellite efforts. While with the Aerospace Corporation, he managed all of the software efforts for the Space Transportation System (Space Shuttle). Currently, as President of Reifer Consultants, Inc., Reifer advises executives in Fortune 500 companies in the areas of software investment and improvement strategies. Reifer is known for both his business and practical problem solving skills. He is also the father of the SoftCost family of software cost estimating models. For the past 20 years, Reifer has been a successful software entrepreneur, consultant, teacher and author. He has published over 100 papers and 5 books including his popular IEEE Software Management Tutorial (5th Edition) and his newest text Practical Software Reuse. Reifer is a senior member of the IEEE, an Advisory Editor of the Journal of Systems and Software and a visiting associate at the University of Southern California. Reifer s many honors and awards include the Secretary of Defense s Medal for Outstanding Public Service, the NASA Exceptional Service Medal, the DISA Recognition Award, the Frieman Award, the DMA Recognition Award, membership in Who s Who, the Hughes Aircraft Company fellowship and membership in the Eta Kappa Nu, Omicron Delta Kappa and Alpha Sigma Mu honorary societies. Donald J. Reifer President and Chief Technical Officer Reifer Consultants, Inc. Voice: 310-530-4493 P.O. Box 4046 Fax: 310-530-4297 Torrance, CA 90510-4046 Email: d.reifer@ieee.org

USC C S E University of Southern California Center for Software Engineering THE COCOMO II ESTIMATING MODEL SUITE B. Boehm, C. Abts, J. Baik, W. Brown, S. Chulani, C. Fakharzadeh, E. Horowitz and D. Reifer Center for Software Engineering University of Southern California 4/05/99 (c) 1999 USC-CSE 1

PURPOSE OF PRESENTATION Provide you with an overview of the research underway at USC in the area of cost estimation Focus on issues being examined and results Highlight the COCOMO model suite Discuss what we ve learned and how it will influence estimating techniques in the future Solicit your help in collecting data to further refine the model suite we are building 4/05/99 (c) 1999 USC-CSE 2

A LITTLE ABOUT USC/CSE Center is a recognized national resource Center researches issues that its affiliates deem are important to them Cost and process modeling Architecture Knowledge management Center conducts focused workshops Affiliates (26) include: Boeing EDS FAA Litton Lucent Technologies Northrop Grumman TRW U.S. Air Force Eighteen others 4/05/99 (c) 1999 USC-CSE 3

SOME BACKGROUND ON COCOMO II Update to the popular COCOMO model Addresses tomorrow s issues today Calibrated using expert opinion and project data; none over 5 years old Model is public domain Developed openly and published widely Major enhancements incorporated into model Support new paradigms Tuned to current issues and experiences Refreshed periodically & continuously improved Public package available from USC http://sunset.usc.edu/ 4/05/99 (c) 1999 USC-CSE 4

MORE BACKGROUND COCOMO II is copyrighted by USC/CSE But, anyone can develop, use or commercialize their own tools based upon the openly available model definitions and parameters Currently, a fully compliant COSTAR version of COCOMO II is available Other packages are reportedly being developed In addition, a COCOMO II book containing a CD will be published at the end of this year 4/05/99 (c) 1999 USC-CSE 5

MAJOR MODEL CHANGES Three models instead of one Application Composition Early Design Post-Architecture Three modes replaced by five scale factors Sizing via object points, function points and SLOC s (not DSI) Effort multipliers changed LEXP, MODP, TURN, VIRT & VEXP replaced DOCU, LTEX, PCON, PEXP, PVOL, RUSE & SITE added ACAP, AEXP, CPLX, PCAP & TOOL updated Requirements volatility replaced by Breakage 4/05/99 (c) 1999 USC-CSE 6

MODELS VERSUS PACKAGES Models Mathematical Represent some realworld process Estimate resources via: Past experience Expert judgement Statistical projection Accuracy of estimates depends on calibration Packages Software which mechanizes models Hide the mathematics and underlying details Make models easy to use and manipulate Typically integrate several models so they work together 4/05/99 (c) 1999 USC-CSE 7

THE USC COCOMO II ESTIMATING PACKAGE Sizing Models Reuse Models Risk and Tradeoff Models COCOMO II Calibration Models Scheduling and Allocation Models 4/05/99 (c) 1999 USC-CSE 8

WE CONTINUE TO SHOOT AT A MOVING TARGET New process models 10X Quality Need for improved accuracy CAIV Emphasis on improvement COTS/GOTS/ROTS New tools and languages 4/05/99 (c) 1999 USC-CSE 9

ESTIMATING ISSUES - SIZING COCOMO II model has been criticized by FP community because it is SLOC based Backfires FP s to develop SLOC estimates used to drive the model While each camp has valid arguments, both metrics seem to work in practice Irresponsible to criticize SLOC s when FP s have many known problems (don t throw stones) 4/05/99 (c) 1999 USC-CSE 10

ESTIMATING ISSUES - CALIBRATION Accuracy of the model is a function of calibration The more good data, the better COCOMO II originally calibrated via Delphi exercise Calibration refined using regression techniques Moved to Bayesian approach and plan to update calibration every 2 years 4/05/99 (c) 1999 USC-CSE 11

THE 1999 CALIBRATION Nominal person-months = A*(SIZE)**B B = 0.91 + 0.01Γ (exponent driver ratings) B ranges from 0.91 to 1.23 Five drivers; ratings from 0.00 to 7.07 Exponent drivers: Precedentedness - Process maturity Development flexibility - Team cohesion Architecture/risk resolution 4/05/99 (c) 1999 USC-CSE 12

CALIBRATION RESULTS COCOMO 81 Basic version (no cost drivers): within 30% of actual costs, 29% of the time Intermediate version: within 20% of actual costs, 68% of the time COCOMO II.1997 Before stratification: within 20% of actual costs, 46% of the time After stratification: within 20% of actual costs, 49% of the time 4/05/99 (c) 1999 USC-CSE 13

MORE ON ACCURACY Provisional COCOMO II.1999 calibration uses a Bayesian mathematical formulation COCOMO II.1999 Before stratification: within 20% of actual costs, 63% of the time After stratification: within 20% of actual costs, 70% of the time Dramatic improvement results & both experts and project data are taken into account 4/05/99 (c) 1999 USC-CSE 14

ESTIMATING ISSUES - UPWARD COMPATIBILITY Many thousands of project files exist for COCOMO 81 COCOMO II needs to be sensitive to past user needs Several multipliers retained for that purpose File conversion not always a simple task Published Rosetta Stone in CrossTalk for that purpose 4/05/99 (c) 1999 USC-CSE 15

ESTIMATING ISSUES - REUSE COCOMO II addresses: Design for Reuse - adds a new effort multiplier, RUSE, which looks at degree of sharing across organizations Design with Reuse - uses a new nonlinear reuse model which looks at what it takes to understand and assimilate a new software asset by rating the following loading factors: SU - Software Understanding UNFM - Programmer unfamiliarity AA - assessment and assimilation 4/05/99 (c) 1999 USC-CSE 16

THE REUSE EQUATIONS ESLOC = ASLOC [AA + AAF(1 + 0.02(SU)(UNFM))] AAF < 0.5 100 ESLOC = ASLOC [AA + AAF + (SU)(UNFM)] AAF > 0.5 100 Where: AAF = 0.4 (DM) + 0.3 (CM) + 0.3 (IM) SU = Software Understanding (zero when DM = 0 & CM = 0) UNFM = Programmer Unfamiliarity AA = Assessment and Assimilation ASLOC = Adapted SLOC ESLOC = Equivalent new SLOC 4/05/99 (c) 1999 USC-CSE 17

ESTIMATING ISSUES -COTS COTS/GOTS/ROTS issues How do you best estimate the costs? To which variables is cost sensitive? How do you handle adaptation, glue code and wrappers? Many questions, few answers COCOTS - COnstructive COTS estimating model COTS research initially sponsored by the USAF and now by the FAA and DoD 4/05/99 (c) 1999 USC-CSE 18

COCOTS - A WORK IN PROGRESS Uses the SEI framework to separate concerns COTS-based versus COTS-intensive estimates Sums the costs across three activities Total Effort = Ε activities + Volatility Effects Assessment - function of no. of COTS candidates Tailoring - function of complexity of effort Glue code development and testing - put it together VE - adds effort to handle COTS volatility 4/05/99 (c) 1999 USC-CSE 19

ESTIMATING ISSUES - PROCESS MATURITY COCOMO II treats process maturity as a scale factor: Effort = AΑ EM i (Size) Γ SF In his thesis, Dr. Brad Clark shows a productivity gain of from 12 to 23% per CMM level jump based on 112 projects Current ratings (161 projects) show a 4 to 11% rise per level 4/05/99 (c) 1999 USC-CSE 20

ESTIMATING ISSUES - QUALITY TRADE-OFF S? Quality issues: How do defect introduction and removal approaches impact cost? What is the cost effectiveness of different defect removal techniques? Again, many questions raised, some answers forthcoming COQUALMO (COnstructive QUALity MOdel) Examine defect introduction and removal impacts on resources 4/05/99 (c) 1999 USC-CSE 21

COQUALMO - INITIAL RESULTS ARE PROMISING Determine the cost effectiveness via Delphi of the following techniques in defect removal Automated analysis techniques Peer reviews (of many varieties) Execution testing techniques and tools Look at the cost as a function of both defect introduction and removal pipelines Rate the COCOMO effort multipliers and collect data to validate projections 4/05/99 (c) 1999 USC-CSE 22

ESTIMATING ISSUES - RAD COCOMO allocations reflect the waterfall model Not reasonable for today s projects For commercial firms, modeling factors that impact time-to-market is more important than cost CORADMO (COnstructive Rapid Application Develop MOdel) looks at both the impacts of RAD and improving the classical COCOMO scheduling model 4/05/99 (c) 1999 USC-CSE 23

MORE ON THE RAD ISSUES Classic equation is of the form: 3 Months = B Person-Months Use of the formula typically results in schedule overestimates in small projects Other issues include: Rollup - Impact of compression Learning curves - Degree of parallelism 4/05/99 (c) 1999 USC-CSE 24

KEY CORADMO CONCEPTS Examine RAD Opportunity Tree tradeoffs Reduce time taken per task (more parallelism) Eliminate tasks (increase reuse/generation) Reduce backtracking (early error elimination) Look at RAD effort and schedule by stage taking into account the following five factors: Reuse, VHLL s (RVHL) - Collaboration (CLAB) Architecture/Risk (RESL) - Preposition Assets (PPOS) Development Process Reengineering (DPRS) 4/05/99 (c) 1999 USC-CSE 25

ESTIMATING ISSUES -TOOLS Definition of tool rating scheme needs to be clearer Can then assess impact or determine ROI New COCOMO tool rating scheme under development Completeness of activity coverage Degree of tool integration Tool maturity & user support 4/05/99 (c) 1999 USC-CSE 26

ESTIMATING ISSUES - PRODUCTIVITY IMPROVEMENT Asked to assess impact of KBSA by AFRL Used COCOMO II model and extensions to form a technology assessment framework Performed parametric analysis to determine the impact of several improvement strategies on cost/schedule based upon medium- and long-term trends 4/05/99 (c) 1999 USC-CSE 27

NET RESULT - COCOMO ESTIMATING MODEL SUITE Sizing Models Allocation Models Risk and Tradeoff Models Reuse Models COCOMO II Calibration Models COQUALMO COPROMO OTHERS COCOTS CORADMO Research topics 4/05/99 (c) 1999 USC-CSE 28

IN SUMMARY We ve provided you with an overview of the estimation-oriented research underway at USC Focus on issues being examined and results We ve discussed what we ve learned and how it will influence future estimating techniques Two more talks will be delivered by other members of the USC COCOMO II project team We ve hopefully entertained you and provided you something of substance to take home 4/05/99 (c) 1999 USC-CSE 29

IN CONCLUSION I m pleased that there still are many issues to work in the field of software estimating We at USC are trying to address them via the COCOMO model suite You can help us (and the community) by participating in our efforts and supplying us data, data and more data 4/05/99 (c) 1999 USC-CSE 30