Follow-on book to Dr. Barry Boehm's classic Software Cost Estimation, this book will show professional developers how to use the COCOMO (Cost Comparison Model) II model developed by Dr. Boehm at USC to generate end-to-end cost analysis figures for software development projects.
"synopsis" may belong to another edition of this title.
"We are becoming a software company" is an increasingly repeated phrase in organizations as diverse as finance, transportation, aerospace, electronics, and manufacturing firms. Competitive advantage increasingly depends on developing software for smart, tailorable products and services, and on the ability to develop and adapt these products and services more rapidly than competitors' adaptation times. These trends highlight the need for strong capabilities to accurately estimate software cost and schedules, and to support tradeoff, risk, sensitivity, and business case analyses for software decisions.
Concurrently, a new generation of software processes and products is changing the way organizations develop software. These new approaches—evolutionary, risk-driven, and collaborative software processes; fourth-generation languages and application generators; commercial off-the-shelf (COTS) and reuse-driven software approaches; fast-track software development approaches; software process maturity initiatives—lead to significant benefits in terms of improved software quality and reduced software cost, risk, and cycle time.
However, although some of the existing software cost models have initiatives addressing aspects of these issues, these new approaches have not to date been strongly matched by complementary new models for estimating software costs and schedules. This makes it difficult for organizations to conduct effective planning, analysis, and control of projects using the new approaches.
These concerns have led the authors of this book to formulate a new version of the Constructive Cost Model (COCOMO) for software effort, cost and schedule estimation. The original COCOMO 81 Boehm 1981 and its specialized Ada COCOMO successor Boehm and Royce 1989 were reasonably well matched to the classes of software projects that they modeled: largely custom, built-to-specification software Miyazaki and Mori 1985; Goudy 1987. Although Ada COCOMO added a capability for estimating the costs and schedules for incremental software development, COCOMO 81 encountered increasing difficulty in estimating the costs of software created via spiral or evolutionary development models, or of software developed largely via commercial off-the-shelf (COTS) applications-composition capabilities.Software Estimation State of the Practice
A number of commercial software estimation models continue to pass the market test for value added to users. And quite a few organizations do a good job of software project planning, estimating, and control. However, a very large number of organizations do not: in the 1995 Standish Group study, over 53% of the software projects were overrun by more than 50% in both budget and schedule Standish 1995.
Some recent collections of software failure case studies provide more detail on the reasons for such overruns. Table P1 summarizes the results from six such projects. The first three are from Flowers 1996; the second three are from Glass 1998.Model Clashes and MBASE
We have analyzed the projects in Table P1, and have found that many of their problems result from model clashes Boehm-Port 1999b. Model clashes involve incompatibilities among the primary models being used to define and manage the project. These include product models (requirements, architecture, design, etc.); process models (waterfall, spiral, maturity models, etc.); property models (cost, schedule, performance, etc.), and success models (business case, stakeholder win-win, IKIWISI: I'll know it when I see it, etc.).
Table P1 Software Overrun Case Studies
First; Last Estimate
Status at Completion
PROMS (Royalty collection) 12; 21+ 22; 46 Cancelled, Month 28
London Ambulance 1.5; 6+ 7;17+ Cancelled, Month 17
London Stock Exchange 60-75; 150 19; 70 Cancelled, Month 36
Confirm (Travel reservations) 56; 160+ 45; 60+ Cancelled, Month 48
FAA Advanced Automation System 3700; 7000+ 48; 96 Cancelled, Month 70
Master Net (Banking) 22; 80+ 9; 48+ Cancelled, Month 48
The projects in Table P1 all had a number of model clashes contributing to their failure. Several model clashes involved cost and schedule property models. For example, the London Ambulance project established a $2.25M cost baseline from misreading a consultant's report giving a best-possible cost if an (unavailable) packaged product solution could be found. The low bidder's $1.5M bid was based on a very sketchy build-from-scratch product model.It uses stakeholder success models as the critical project drivers, and a stakeholder win-win variant of the spiral model to determine a compatible set of product, process, property, and success models for the system. It also integrates software engineering with system engineering, and provides a strong framework for transitioning to the new Integrated Capability Maturity Model (CMM I).MBASE and COCOMO II
Our research on MBASE includes research on success models (win-win; expectations management); process models (WinWin Spiral Model, anchor points, requirements negotiation); product models (domain models, software architectures); and property models (primarily COCOMO II and its extensions). The concurrent research on these component models helps to strengthen their relationships and to ground them in software practices. For example, our anchor point process research began with an effort to define a set of common life-cycle milestones upon which to base COCOMO II cost and schedule estimates. In collaboration with Rational, Inc., we have integrated the MBASE phases and milestones with those of the Rational Unified Process, and have provided MBASE/RUP phase and activity distribution estimators for COCOMO II in Appendix A.
Also, we try to apply MBASE to our own projects. Thus, in scoping COCOMO II, we used the MBASE principles of identifying stakeholders, gathering their objectives in using software estimation models, and determining their principal needs for improvement over the existing COCOMO 81 capability. Thus, Chapter 1 of this book begins with a summary of COCOMO II user objectives, followed by a set of COCOMO II model objectives in terms of desired improvements over COCOMO 81, followed by a set of COCOMO II development and evolution strategies for achieving the objectives.
One of the stakeholder objectives was to avoid basing COCOMO II on a single process model such as the waterfall model assumed in COCOMO 81. Thus, we have developed interpretations of COCOMO II to cover the waterfall model, MBASE/RUP, and incremental development. Content of Book Chapters
Chapter 1 provides the overall context and framework for COCOMO II, including its model of future software practices and resulting choice of a three-stage model tailorable to the major future software practices. Chapter 2 presents the specific definitions of COCOMO II quantities, estimating equations, cost driver and scale factor definitions and rating scales, and guidance in interpreting the definitions in special situations.
The final section of Chapter 2 shows how to use COCOMO II to perform quick manual analyses for a number of the objectives established in Chapter 1: making investment decisions, performing tradeoff and risk analyses, tailoring models to project practices.
Chapter 3 shows how you can use the USC COCOMO II tool to perform more extensive cost estimates and tradeoff analyses, using two representative examples: a transaction processing system and an aircraft radar system.
Chapter 4 summarizes the COCOMO II Bayesian calibration process and results, and provides guidelines for organizations to produce their own calibrated version of the model.
Chapter 5 describes some emerging extensions of the central COCOMO II model. The Applications Composition model is still considered to be an emerging extension, as its calibration and counting rules are not yet robust. Others address the problems of estimating the cost of software COTS integration (COCOTS); phase distribution of schedule and effort (COPSEMO); rapid application development effort and schedule adjustments (CORADMO); quality in terms of delivered defect density (COQUALMO); and the effects of applying software productivity strategies (COPROMO).
Chapter 6 projects future software trends and how they are likely to affect software cost estimation and COCOMO II.
Six appendices provide A) COCOMO II definitions, assumptions, and phase/activity distribution estimates, B) an incremental development estimation model, C) data collection forms for COCOMO II and emerging extensions to better calibrate the model to your organization, D) information on the USC-CSE COCOMO II and other Affiliate programs, E) a Software Reference Manual for the USC COCOMO II tool, and forms and guidelines for COCOMO II data collection, and F) information on the content and use of the accompanying CD-ROM.
This CD provides you a current copy of a COCOMO II estimating software package developed by USC-CSE, and demonstration copies of three commercial COCOMO II packages. We have also put the examples used within the book as files on the CD so that you can generate the results we've come up with using the package. This is important because it shows you how to effectively employ the package--and the COCOMO II model--to develop estimates, make tradeoffs and perform various kinds of cost analyses.
The CD also provides you with a number of additional resources. It contains briefings, reports, manuals and amplifying details on the COCOMO II package so that you will understand its history and how it was derived. Our goal is to update the CD every two years as we publish updates to this book.Mapping of Chapters onto Reader Interests
If you are a software manager, analyst, or developer wishing to make and use software estimates, read Chapters 1, 2, and 3, and Appendix E in concert with use of the USC COCOMO II tool.
If you are a software estimation specialist for your organization, read the entire book.
If you are a software metrics and models researcher, read Chapters 1, 2, 4, 5, 6 and Appendices A, B, and C.
If you want a general understanding of COCOMO II and its uses, read Chapters 1, 2, and 3.Relation to 1981 Software Engineering Economics Book
About 30% of the 1981 Software Engineering Economics book Boehm 1981 is superseded by the contents of this book. Here is a chapter-by-chapter assessment of the 1981 book as it relates to the contents of this COCOMO II book—remember, the chapters listed below are those found in the original 1981 book:
Chapters 1 and 2. These chapters are still timely and useful as a motivation for the human-economics approach to software engineering.
Chapter 3. The GOALS approach has evolved into MBASE and the stakeholder win-win approach. The material here and in Appendix B is good for background and examples, but not for operational guidance.
Chapter 4. COCOMO II has been structured to produce cost and schedule estimates consistent with the Waterfall Model milestones in this chapter. The Work Breakdown Structure framework is also still applicable.
Chapters 5-9. The material on Basic and Intermediate COCOMO 81 has been replaced by the COCOMO II Applications Composition, Early Design, and Post-Architecture series of models. Portions of Chapters 6 and 7 on Waterfall-model phase and activity distributions are still relevant.
Chapters 10-20. The material on software microeconomics is still valid as a framework for using COCOMO II estimates.
Chapters 21 and 22. The seven-step approach and comparison of software estimation techniques are still valid. The COCOMO II book complements this material by providing example-based guidance on using COCOMO II for various estimation, tradeoff analysis and life-cycle estimation purposes (in Chapters 2 and 3).
Chapter 23. This material is specific to COCOMO 81. Including phase-sensitive cost drivers is a downstream COCOMO II goal.
Chapters 24-27. Some of the cost driver experience discussions are dated (Turnaround Time, Tool Use, Modern Programming Practices, Schedule stretchout effects). The others are still useful. We plan to provide updates and coverage of the new cost drivers in some future editions.
Chapter 28. Personnel Continuity and Documentation are now COCOMO II cost drivers. Their effects were significant in the latest COCOMO II data analysis. Requirements Volatility is now being treated as a size modifier via the breakage parameter, REVL. Other parts of the chapter are largely specific to COCOMO 81.
Chapter 29. The material in this chapter is largely superseded by Chapter 4 of the COCOMO II book.
Chapter 30. The maintenance data trends are still relevant. The maintenance model for COCOMO II has been updated to include the Software Understanding and Personnel Unfamiliarity factors.
Chapter 31. The material on estimating conversion, computer, installation, training and documentation costs is largely out of date. The business case in Section 31.8 is still highly useful.
Chapter 32. The planning and control techniques are still valid. Earned value techniques are now more frequently used for software. The primary trend not captured is the use of other progress tracking metrics such as those in the Practical Software Measurement handbook McGarry et al. 1998
Chapter 33. The coverage of COTS and Very High Level Languages was very good for 1981, but much more is known now; see the COCOTS discussion in Section 5.4 of this book. The discussions of product, platform, and people productivity factors are still useful. COCOMO II has more process productivity options in its scale factors, and a stronger treatment of reuse.
Appendix A. Superseded by current Appendix C.
Appendix B. Good for background, as discussed for Chapter 3. Bottom Line
Most of the 1981 book is still useful and relevant. The parts that are mostly outdated or superseded by this book are Chapters 5-9, 23, 28-29, 31 (except Section 31.8), and Appendices A and B.From the Back Cover:
Don't become a statistic–take control of your software projects and plan for success!
Success in all types of organization depends increasingly on the development of customized software solutions, yet more than half of software projects now in the works will exceed both their schedules and their budgets by more than 50%.
While some types of overruns remain unpredictable, most can be avoided by sound modeling. COCOMO II provides you with a thorough rework of the classic COCOMO model to address modern software processes and construction techniques along with representative examples of applying the models to key software decision situations. It was calibrated and validated using innovative statistical techniques to fit both expert judgment and 161 carefully collected project data points. The book also introduces emerging COCOMO II extensions for cost and schedule estimation of COTS integration and rapid development. You'll also:
Software engineers, managers, and students will all find Software Cost Estimation with COCOMO II an invaluable guide to developing and managing successful software projects on time and under budget.
"About this title" may belong to another edition of this title.
Book Description Prentice Hall, 2000. Paperback. Book Condition: New. Bookseller Inventory # SONG0137025769
Book Description Prentice Hall. Book Condition: New. Brand New. Bookseller Inventory # 0137025769
Book Description Prentice Hall. PAPERBACK. Book Condition: New. 0137025769 New Condition. Bookseller Inventory # NEW6.0056813
Book Description Pearson Education (US), United States, 2009. Paperback. Book Condition: New. Language: English . This book usually ship within 10-15 business days and we will endeavor to dispatch orders quicker than this where possible. Brand New Book. Follow-on book to Dr. Barry Boehm s classic Software Cost Estimation, this book will show professional developers how to use the COCOMO (Cost Comparison Model) II model developed by Dr. Boehm at USC to generate end-to-end cost analysis figures for software development projects. Bookseller Inventory # BTE9780137025763
Book Description Prentice Hall, 2000. Paperback. Book Condition: New. Bookseller Inventory # P110137025769
Book Description Prentice Hall, 2000. Paperback. Book Condition: New. 1. Bookseller Inventory # DADAX0137025769
Book Description Prentice Hall, 2000. Paperback. Book Condition: New. book. Bookseller Inventory # 0137025769
Book Description Prentice Hall, 2000. Book Condition: New. Brand new! Please provide a physical shipping address. Bookseller Inventory # 9780137025763
Book Description 2000. Paperback. Book Condition: New. Paperback. Follow-on book to Dr. Barry Boehm's classic Software Cost Estimation, this book will show professional developers how to use the COCOMO (Cost Comparison Model) II model devel.Shipping may be from our Sydney, NSW warehouse or from our UK or US warehouse, depending on stock availability. 544 pages. 0.889. Bookseller Inventory # 9780137025763
Book Description Financial Times Prentice Hall, 2009. Book Condition: New. Bookseller Inventory # TV9780137025763