Anda di halaman 1dari 32

CrossTalk

April 2000 The Journal of Defense Software Engineering Vol. 13 No. 4

COST
ESTIMATION
Cost Estimation
Future Trends, Implications in Software Cost Estimation Models
4 A major team effort was recently completed to re-engineer the original Constructive Cost Model (COCOMO)
for software cost and schedule estimation into a new model, COCOMO II.
by Barry W. Boehm, Chris Abts, Jongmoon Baik, A. Winsor Brown, Sunita Chulani,
Brad Clark, Ellis Horowitz, Ray Madachy, Don Reifer, and Bert Steece.

Software Estimation: Challenges and Research


9 This article reviews challenges of software estimation, and research under way to address them.
by Dr. Richard D. Stutzke

Does Calibration Improve Predictive Accuracy?


14 Many sophisticated parametric models exist; however, their predictive accuracy is questionable.
by Daniel V. Ferrens and David S. Christensen
On the Cover:
18 Top 10 CrossTalk Authors—1999 Cover artist Mark
Driscoll is a design-
er and technical
Reducing Bias in Software Project Estimates
20 Biases in the estimating process contribute to poor estimates. How can they be reduced?
illustrator with a
background in
by David Peeters and George Dewey architecture and
museum exhibit
Software Engineering Technology design. He is one of
the principals of
Case Study: Automated Materiel Tracking System Driscoll Design Inc.
25 The Automated Materiel Tracking System is a Web-based solution for real-time tracking of in Salt Lake City.
materiel transferred between Air Force Materiel Command divisions and Defense Logistics Agencies.
by Jim Restel

Open Forum
Requirements Management as a Matter of Communication
28 Requirements specification must be supplemented by basic dialogue, including stated missions,
problem management, and understandable formalism for the system’s structure and behavior.
by Ingmar Ogren

Departments CrossTalk
SPONSOR H. Bruce Allgood
Article Submissions : We welcome articles of interest to the
defense software community. Articles must be approved by
the CROSSTALK editorial board prior to publication. Please fol-
low the Guidelines for CROSSTALK Authors, available upon
request. We do not pay for submissions. Articles published in
PUBLISHER Reuel S. Alder
3 From the Publisher
ASSOCIATE Lynn Silver
CROSSTALK remain the property of the authors and may be
submitted to other publications.
Reprints and Permissions: Requests for reprints must be
PUBLISHER
requested from the author or the copyright holder. Please
13 Coming Events MANAGING E DITOR Kathy Gurchiek
coordinate your request with CROSST ALK.
Trademarks and Endorsements: This DoD journal is an
ASSOCIATE authorized publication for members of the Department of
13 E-mail Update Announcement E DITOR /LAYOUT Matthew Welker Defense. Contents of C ROSSTALK are not necessarily the
official views of, or endorsed by, the government, the
Department of Defense, or the Software Technology
ASSOCIATE Support Center. All product names referenced in this issue
13 Quote Marks E DITOR /FEATURES Heather Winward are trademarks of their companies.
Coming Events : We often list conferences, seminars, sym-
VOICE 801-775-5555
posiums, etc., that are of interest to our readers. There is
27 DoD Conference Announcements
F AX
E-MAIL
801-777-8069
crosstalk.staff@hill.af.mil
no fee for this service, but we must receive the information
at least 90 days before registration. Send an announcement
STSC ONLINE http://www.stsc.hill.af.mil to the CROSSTALK Editorial Department.
CROSSTALK ONLINE http://www.stsc.hill.af.mil/ STSC Online Services: at http://www.stsc.hill.af.mil.
30 Cost Estimation Web Sites Crosstalk/crostalk.html Call 801-777-7026, e-mail randy.schreifels@hill.af.mil.
Back Issues Available: The STSC sometimes has extra
CRSIP ONLINE http://www.crsip.hill.af.mil
copies of back issues of CROSSTALK available free of charge.
31 Subscription Request Form
Subscriptions : Send correspondence concerning
subscriptions and changes of address to the follow-
ing address. You may use the form on page 31.
The Software Technology Support Center was established
at Ogden Air Logistics Center (AFMC) by Headquarters
U.S. Air Force to help Air Force software organizations
Ogden ALC/TISE identify, evaluate, and adopt technologies to improve the
31 BACK TALK 7278 Fourth Street
Hill AFB, Utah 84056-5205
quality of their software products, efficiency in producing
them, and their ability to accurately predict the cost and
schedule of their delivery.

2 CROSSTALK The Journal of Defense Software Engineering April 2000


From the Publisher

Making an Educated Guess

What does estimation mean? Having spent 30 years as an engineer and manager
in the electronics and software marketplace, I thought, "Oh, that's easy! You simply
guess how long it is going to take you to do this job, based on your last experience
with the same or a similar job, and then double that guess."
Two things are clear with this oft-used algorithm. The first is that to have any
kind of chance to be in the ballpark, you need some knowledge or historical precedence for hav-
ing done something similar in the not-too-distant past. The second is a realization that the accu-
racy of any such estimate is not very good.
If your business success does not rely on the accuracy of this type of estimate, this algorithm
will probably continue to be used. Only when a business' existence and success rely on some-
thing a little more accurate is it likely a little more effort will be applied to make cost estimates
more realistic and reliable.
As readers will find in this month's C ROSS TALK , cost estimation has become an essential fea-
ture of any successful software business development or sustainment venture. However, as quot-
ed in Reducing Bias in Software Project Estimates by David Peeters and George Dewey on page
20, some still believe that "software estimating is definitely a black art." The authors note that a
large percentage of software projects continue to finish behind schedule and over budget. The
article discusses some ways to identify and reduce biases in software cost estimation to help
make estimates more accurate.
The dramatic increase in the quantity and complexity of software that drives so many of
today's defense and consumer products is also a major driver in the need to develop more robust
estimation methodologies and tools. Barry Boehm and his co-authors write in Future Trends,
Implications in Software Cost Estimation Models on page 4 that software development trends have
turned from the Waterfall process model toward evolutionary, incremental, and spiral models. It
was found that the very useful Constructive Cost Model (COCOMO) estimation techniques
required some significant changes to keep pace with the changing nature of this software develop-
ment evolution. Product line management approaches to software reuse, and graphic user inter-
face builder tools that made traditional-size metrics such as source lines of code inappropriate are
examples of new software design methods that required new techniques. This article also discusses
how continuing development extensions are being made to COCOMO II to address emerging
trends such as Rapid Application Development and commercial-off-the-shelf integration.
We hope that readers will find these and the other articles in this month's CROSS T ALK to be
valuable resources as they continually improve their organization's ability to accurately predict
project schedule and cost.

H. Bruce Allgood
Deputy Computer Resources Support Improvement Program Director

CROSS TALK welcomes Bruce Allgood, Deputy of the Computer Resources Support Improvement Program
(CRSIP) at Hill Air Force Base, Utah. Allgood replaces Lt. Col. Joseph Jarzombek (retired) as the CRSIP
sponsor of our journal. As a member of the Air Force Software Technology Support Center, Allgood has
supported software process improvement efforts throughout the Air Force and the Department of Defense.
He also represents the Air Force Materiel Command on the Practical Software Measurement Technical
Steering Group (PSM), the Office of the Secretary of Defense's Software Collaboration Team, and is a cer-
tified PSM trainer. He spent 20 years in various management and development roles at leading commer-
cial electronics and software corporations, including 11 years at IBM, two years at Hughes Aircraft, and
five years at Hewlett Packard. Allgood received his bachelor's degree in electrical engineering from the
University of Utah and a master's degree in electrical engineering from Colorado State University.

April 2000 http://www.stsc.hill.af.mil 3


Cost Estimation

Future Trends, Implications in Cost Estimation Models


The rapid pace of change in software technology requires everybody in the software business to continually rethink and update
their practices just to stay relevant and effective. This article discusses this challenge first with respect to the USC COCOMO II
software cost modeling project, and then for software-intensive organizations in general. It then presents a series of adaptive
feedback loops by which organizations can use COCOMO II-type models to help cope with the challenges of change.
A major team effort was recently completed to re-engineer MO II to converge uniformly toward perfection in understand-
the original Constructive Cost Model (COCOMO) for software ing your software applications and in accurately estimating the
cost and schedule estimation into a new model, COCOMO II. costs and schedules.
The overall COCOMO framework remained about the same, In practice, convergence toward perfection in estimation is
but significant changes were found to be necessary to keep pace not likely to be uniform. Two major phenomena are likely to
with the changing nature of software development and evolu- interrupt your progress in estimation accuracy:
tion. These trends have included a move away from the Water- 1. As your understanding increases about the nature of your
fall process model toward evolutionary, incremental, and spiral applications domain, you will also be able to improve your
models; product line management approaches to software reuse; software productivity and quality by using larger solution
applications composition capabilities; and graphic user interface components and more powerful applications definition
builder tools that made traditional size metrics such as source languages. Changing to these construction methods will
lines of code (SLOC) inappropriate. require you to revise your estimation techniques, and will
We have replaced the COCOMO development modes cause your estimation error to increase.
(organic, semidetached, embedded) by a set of scale factors 2. The overall pace of change via new technologies and
(precedentedness, development flexibility, architecture and risk paradigm shifts in the nature of software products, processes,
resolution, team cohesiveness, and process maturity). These enable organizations, and people will cause the inputs and outputs
project managers to control that which affects their project’s of software estimation models to change. Again, these
economies and diseconomies of scale. We added some multiplica- changes are likely to improve software productivity and
tive cost drivers (development for reuse, degree of documentation, quality, but cause your estimation error to increase.
multisite development); dropped the Turnaround Time cost driv-
er; merged the Modern Programming Practices cost driver into Effects of Increasing Domain Understanding
the process maturity scale factor, and changed the requirements Suppose you are entering a new applications domain,
volatility cost driver into a size factor. (e.g., control of distributed, heterogeneous, real-time automated
We changed the main size parameter from Delivered Source agents for robotics devices). Your initial software productivity in
Instructions to a user-determined mix of SLOC and function this domain is likely to be low, largely due to the effects of such
points; changed to a more detailed nonlinear model of software COCOMO II variables as precendentedness, architecture and
reuse effects; and provided a family of models (Applications risk resolution, complexity, and applications experience. In par-
Composition, Early Design, and Post-Architecture) tuned to the ticular, your understanding of the architecture for such systems
information available at different stages of the development and your ability to reuse components will be low. And your
process. We developed a Bayesian approach to calibration of unfamiliarity with the domain will cause your cost and schedule
COCOMO II to 161 projects from 18 organizations, resulting estimation errors to be relatively high.
in a model that estimates within 30 percent of the actual effort As you increase your understanding of how to build such
75 percent of the time (80 percent of the time if calibrated to systems and their components, both your productivity and your
the individual organizations’ data). A book describing the model estimation accuracy will improve. However, at some point you
is to be released in June; it will include a CD with a USC will understand enough about the domain to begin developing a
COCOMO II tool and demo versions of three commercial product line architecture and reusable components to be used in
implementations [1]. Further information about COCOMO II future products. At this point (point A in Figure 1), your pro-
is available at http://sunset.usc.edu/COCOMOII/suite.html ductivity will go up faster, as you will be reusing rather than
Rather than leaving the model as is for the next 18 years as developing more and more of the software (in COCOMO II
with the original COCOMO, we are determining extensions to terms, your equivalent SLOC will decrease for the same type of
COCOMO II to address emerging trends such as Rapid Applica- project). However, at point A, your estimation error will go up,
tion Development (RAD) and commercial off-the-shelf (COTS) as your previous cost driver ratings will be less relevant, and you
integration. This need to continually update your software esti- will be starting on the learning curve in rating your reuse
mation capabilities also holds for most organizations. This paper parameters. You will also find that reuse and product line man-
explores the reasons for this and some of the implications. agement cause significant changes in your processes [2, 3].
As you improve your understanding of how to increase pro-
Trends in Software Productivity, Estimating Accuracy ductivity and reduce estimation error in using component-based
In principle, your organization should be able to continu- development, you will often find that other organizations in the
ously measure, recalibrate, and refine models such as COCO- domain are doing so as well. Soon, some of the more general
4 CROSSTALK The Journal of Defense Software Engineering April 2000
Future Trends, Implications in Cost Estimation Models

SAIV, for example, you may specify and


design more product than you deliver
when you run out of budget or schedule.
Relative Collaborative processes (Joint Application
Productivity Development, Integrated Product Team,
etc.) require involving users, operators,
Estimation and others in product definition. Should
Error their effort be included in the estimate?
To what extent will virtual-reality distrib-
uted collaboration technology improve
software costs and schedules?
With organizations and people,
Unprece- Prece- Component- Systems of changes in organizational objectives affect
dented dented COTS VHLL Systems products, processes, and estimation accura-
based
cy. One example is the increasing emphasis
A B C D on reducing schedule (time to market) in
Time, Domain Understanding
Figure 1. Productivity and Estimation Accuracy Trends order to remain competitive, rather than
minimizing cost. Another example is the
components will be shared across organiza- your error in estimating cost and sched- effect of increasing emphasis on software
tions or offered as COTS products. With ule will be higher than for an individual quality as a competitive discriminator.
their development and maintenance costs system. This is because of uncertainties The effects of having tens of millions
amortized over more and more user organ- you will have in estimating the effort of computer-literate people will also
izations, they become cheaper to employ required to reconcile the unpredictable change the nature of software products
than some of your reusable components. incompatibilities in interfaces, priorities, and processes. Also, the increasingly criti-
Again, using these COTS products or assumptions, and usage conventions cal nature of software to an organization’s
shared components will increase your pro- among the subassembly manufacturing, competitive success creates stronger needs
ductivity rate (point B in Figure 1). factory control, and electronic commerce for integrating software estimates into
Initially, you will find it harder to predict VHLL’s and systems [4]. business-case and financial-performance
the cost and schedule of integrating het- models. Trends toward human economics
erogeneous COTS components with your Effects of Innovation, Change will affect both software products’
components and with each other, and your Other sources of innovation and required functions and user interfaces.
estimation error at point B will also go up. change may cause changes in the nature
of your software projects’ product, Estimation Accuracy:
VHLL’s and System of Systems process, organization, and people. These
may improve your organization’s overall
The Bottom Line
This scenario will generally repeat
itself at points C and D in Figure 1. At productivity, but their effect on your If only our software engineering
point C, you and/or others will know projects’ practice may again increase your domain understanding, product and
enough about how to compose domain estimation error. process technology, and organization and
components to be able to automate their In the area of product technology, people factors stayed constant, we could
composition, and to provide a domain- such changes have included changes from get uniformly better and better at esti-
specific Very High Level Language batch-processing to interactive systems, mating. But they do not stay constant,
(VHLL) with user-oriented terminology and from single mainframes to distributed and their changes are generally good for
to specify the particular application and networked systems. Other product people and organizations. The need to
desired. Productivity rates will increase technologies such as graphic user interface continually rethink and re-engineer our
(in COCOMO II terms, via the need for builders will also increase productivity, software estimation models is a necessary
much fewer source lines of code), but but estimation error increases because of price to pay for the ability to incorporate
estimation errors also initially go up. new challenges in determining what to software engineering improvements.
At point D, you will find that there count as product size.
is a demand to closely integrate your In the area of process technology, the Coping with Change: COCOMO II
VHLL-driven robotic device systems for change from waterfall to evolutionary or We are trying to ensure that COCO-
subassembly manufacturing, for example, spiral development requires rethinking MO II will be adaptive to change by try-
with other VHLL’s and application gener- the project’s endpoints and phases. ing to anticipate trends in software engi-
ators for factory control systems and elec- Incremental development, RAD, cost-as- neering practice, as discussed in the
tronic commerce systems, into a total fac- independent-variable (CAIV), or sched- Introduction. The resulting three-stage
tory system of systems. Integrating the ule-as-independent-variable (SAIV) cause set of COCOMO II models (application
systems will be more productive than further rethinking of process strategies, composition, early design, post-architec-
building a whole new factory system, but endpoints, and phases. With CAIV or ture) anticipates some dimensions of

April 2000 http://www.stsc.hill.af.mil 5


Cost Estimation

future change. Other dimensions are Software Cost Estimation with COCOMO unnoticed: via personnel changes; COTS
addressed by the new or extended cost II (COCOTS, CORADMO, Applica- product, reusable component, or tool
drivers such as process maturity, architec- tions Composition, and other models) shortfalls; requirements creep; or platform
ture and risk resolution, team cohesion, represent hypotheses of how to model the discontinuities. In such cases, COCOMO
multisite development, use of tools, and cost, schedule, and quality effects of cur- II phase and activity distributions can be
the various reuse parameters. rent and future trends in software engi- used to develop a quantitative milestone
We are also attempting to anticipate neering practice. As we gather more data, plan or an earned-value system [7] for the
future trends via our overall Model-Based we will be able to test and refine these project, which enable plan deviations to be
(System) Architecting and Software models, and to identify further models or detected, and appropriate corrective
Engineering (MBASE) project. MBASE’s extensions likely to be important for actions to be taken (Figure 3) involving
key objective is to avoid harmful model future software engineering practice. COCOMO II in project rescoping.
clashes by integrating a project’s product,
process, property, and success models [5]. Rescope
The COCOMO II suite of models is our System Objectives: No
functionality,
main effort in the property model area. performance, quality Cost,
Concurrently, we are integrating comple- Schedule,
mentary research into product models risks Yes
Project Parameters: COCOMO II Ok?
(domain, requirements, and architecture Personnel, team, sites, platform
models); process models (WinWin spiral
model, process anchor points); and suc- Corporate Parameters:
cess models (stakeholder win-win, busi- tools, processes, reuse

ness case analysis, I will know it when I


Figure 2. Using COCOMO II to Cope With Change
see it prototyping).
We have been trying to understand Coping with Required
and anticipate trends in software engineer-
Coping with Change: COCOMO II COCOMO II Model Changes
ing product, process, property, and success and Your Organization At times, unanticipated project
models via workshops with our affiliates, COCOMO II can be a useful tool changes are indications that your COCO-
via model research, and via model experi- for your organization to use in adapting MO II model needs to be recalibrated or
mentation with our annual series of digital to future change, both at the project level extended. The more management data you
library applications projects using MBASE and at the organizational level. collect on actual project costs and sched-
[6]. For example, our initial formulation ules, the better you will be able to do this
of the Constructive COTS Integration Coping with Change (see Figure 4).
Cost Model (COCOTS) was based on an During Project Definition Recalibration might be appropriate,
affiliates’ workshop on COTS integration, Figure 2 shows how COCOMO II for example, if your organization is
and our efforts to incorporate COTS can be used to help address issues of acquired by or merged into an organiza-
assessment and integration into MBASE change at the project definition level. You tion with different definitions of project
extensions of spiral process models and can enter your organization’s customary endpoints, or with different definitions of
object-oriented product models. Our values via the COCOMO II parameters, which types of employees are directly
major refinement of COCOTS into a and indicate which ones will undergo charged to the project vs. being changed to
family of four models was based on analy- change. COCOMO II will estimate how overhead. As described in Chapter 4 of
sis of COTS integration experience data these changes will affect the project’s Software Cost Estimation with COCOMO
from the MBASE digital library projects. expected cost and schedule, and will pro- II, techniques are available to recalibrate
Similarly, our formulation of the Con- vide you and your stakeholders with a COCOMO II’s base coefficients and
structive Rapid Application Development framework for rescoping the project if esti- exponents for cost and schedule estima-
Estimation Model (CORADMO) has mated cost and schedule are unsatisfactory. tion. Some COCOMO II tools such as
been based on an affiliates’ RAD work- USC COCOMO II and COSTAR, a
shop, and on integrating RAD process Coping with Change commercial product from SoftStar
models such as schedule-as-independent- During Project Execution Systems, provide such calibration features.
variable (SAIV) into MBASE. This was Frequently, changes in project objec- Extending the model will be appro-
done via RAD experimentation using the tives, priorities, available componentry, or priate if some factor assumed to be con-
digital library projects. These projects are personnel occur during project execution. stant or insignificant turns out to be a
good RAD examples, as our semester con- If these are anticipated, COCOMO II can significant cost driver. For example, the
straints require them to be fully architect- support a variant of the project definition COCOMO 81 TOOL Factor was not in
ed in 11 weeks, and fully developed and process above to converge on a stakehold- the original 1978 TRW version of
transitioned in another 12 weeks. er-satisfactory rescoping of the project. COCOMO, as previous TRW projects
Thus, the emerging extensions of A more serious case occurs when the had operated with a relatively uniform set
COCOMO II discussed in Chapter 5 of changes are unanticipated and largely of mainframe tools. The TOOL Factor
6 CROSSTALK The Journal of Defense Software Engineering April 2000
Future Trends, Implications in Cost Estimation Models

Rescope
System Objectives: No
functionality, Execute
performance, quality Cost, project
Schedule,
to next Revise
Risks
Project Parameters: Yes milestone milestones,
Personnel, team, sites, platform COCOMO II OK? plans,
Milestone resources
Results
Milestone Plans,
Corporate Parameters:
Resources No
tools, processes, reuse
Milestone Expectations OK?
Revised
Expectations
Figure 3. Using COCOMO II to Cope With Change: II Yes

was added after TRW had completed some microprocessor soft-


ware projects with unexpectedly high costs. After investigation, Done?
No
the scanty microprocessor tool support was the primary factor
Yes
that accounted for the extra project effort and cost. Subsequent
data from other organizations confirmed the validity of the End project
TOOL variable as a significant COCOMO 81 cost driver.
Similarly, several variables were added to COCOMO 81 to
development, reuse, or any of the personnel factors can also
produce COCOMO II, in response to affiliate indications of
have significant benefits that can be investigated via COCOMO
need and our confirmation via behavioral analysis.
II (See Figure 5). The cost, schedule, and quality drivers of
Proactive Organizational Change Management COCOTS and CORADMO can be used similarly.
Your organization will be much better off once it moves away An integrated capability for using COCOMO II and
from reacting to change, and toward proactive anticipation and CORADMO for evaluating the payoff of cost and schedule
management of change. This is what Level 5 of the SEI-CMM® improvement strategies is provided by the Constructive
is all about, particularly the key process areas of Technical Change Productivity Model (COPROMO) extension described in
Management and Process Change Management. Software Cost Estimation with COCOMO II. It enables you to
The COCOMO II model and parameters can help you start from a current baseline of cost and schedule drivers from
evaluate candidate change management strategies. For example, either your own organization’s data or the COCOMO II data-
investing in sufficient software tool acquisition and training to base; and to express candidate cost and schedule improvement
bring your projects’ TOOL rating from nominal to high will strategies in terms of achievable time-phased improvements in
replace a 1.0 effort multiplier by an 0.90, for a 10 percent pro- cost and schedule drivers. COPROMO will generate the result-
ductivity gain. Similar investments in improving process maturi- ing estimates and provide time histories of cost and schedule
ty, architecture and risk resolution, team cohesion, multisite improvements for each of the candidate strategies.
Figure 4. Using COCOMO II to Cope With Change: III

Rescope
System Objectives: No
functionality, Execute
performance, quality Cost,
project
Schedule,
to next Revise
Risks
Project Parameters: Yes milestone milestones,
Personnel, team, sites, platform COCOMO II OK? plans,
Milestone resources
Results
Milestone Plans,
Corporate Parameters:
Resources No
tools, processes, reuse
Milestone Expectations OK? Revised
Expectations
Yes

Accumulate
COCOMO II Done?
Recalibrate No
calibration
or extend Yes
data
COCOMO II
End project

April 2000 http://www.stsc.hill.af.mil 7


Cost Estimation

Rescope
System Objectives: No
functionality, Execute
performance, quality Cost, project
Schedule,
to next Revise
Risks
Project Parameters: Yes milestone milestones,
Personnel, team, sites, platform COCOMO II OK? plans,
Milestone resources
Results
Milestone Plans,
Corporate Parameters:
Resources No
tools, processes, reuse
Milestone Expectations OK? Revised
Expectations
Improved Yes
Corporate Cost,Schedule,
Parameters Quality Drivers
Accumulate
Evaluate COCOMO II Done?
Recalibrate No
Corporate calibration
or extend Yes
SW data
COCOMO II
Improvement
Strategies End project

Figure 5. Using COCOMO II to Cope With Change: IV

Put together, the four COCOMO II capitalizing on change rather than being a 3. Reifer, D. Practical Software Reuse, John
feedback cycles in Figure 5 can enable reactive victim of change. Wiley and Sons, 1997.
your organization to determine and 4. Maier, M. Architecting Principles for
evolve a project-level and organization- References Systems-of-Systems, Systems Engineering
level set of project analysis, management, Vol. 1 No. 4 (1998), pp. 267-284.
1. Boehm, B.; Abts, A.; Brown, W.;
and improvement strategies based on 5. Boehm, B. and Port, D. Escaping the
Chulani, S.; Clark, B.; Horowitz, E.;
your own quantitative metrics. These Software Tar Pit: Model Clashes and
Madachy R.; Reifer, D.; and Steece, B.
strategies will enable you to determine How to Avoid Them, ACM Software
Software Cost Estimation with COCOMO
appropriate objectives and approaches for Engineering Notes, Jan. 1999, pp. 36-48.
II, Prentice Hall (to appear in June 2000).
6. Boehm, B.; Egyed, A.; Port, D.; Shah, A.;
each project, to manage projects to more 2. Boehm, B.; Kellner, M. and Perry, D.
Kwan, J.; and Madachy R., A Stakeholder
successful completion, and to improve (eds.), Proceedings, ISPW 10: Process
Win-Win Approach to Software
your organization’s software productivity, Support of Software Product Lines, IEEE
Engineering Education, Annals of Software
speed, and quality by anticipating and Computer Society, 1998.
Engineering, Vol. 6(1998), pp. 295-321.
About the Authors Dr. Ellis Horowitz is professor of computer in Industrial and Systems Engineering at
Barry Boehm is the TRW science and electrical engineering at the USC in 1994.
Professor of Software University of Southern California.He is also
Chris Abts holds Bachelor’s
Engineering and Director Director of the Distance Education Network
and Master’s degrees in
of the Center for Software in the School of Engineering. He was chair-
industrial engineering and
Engineering at USC. He man of the Computer Science Department
is a research assistant/
was previously in technical at USC for nine years. He is the author of
Ph.D. Candidate at the
and management positions 10 books and more than 100 research arti-
USC Center for Software
at General Dynamics, Rand Corp., TRW, cles on computer science subjects ranging
Engineering. He has
and the Office of the Secretary of Defense from data structures, algorithms, and soft-
worked as a lead systems engineer/analyst for
as the Director of Defense Research & ware design to computer science education.
Logicon in the area of Mission Planning,
Engineering Software and Computer Dr. Raymond Madachy is including development of automated mis-
Technology Office. Besides COCOMO, he an adjunct assistant profes- sion planning tools, algorithm development,
originated the spiral model of the software sor in the computer science mission scenario analysis, and simulation
process and the stakeholder win-win and industrial and systems modeling. His research interests have been in
approach to software management and engineering departments software metrics and cost models, risk man-
requirements negotiation. and research collaborator agement, and systems architecting, including
University of Southern California with the USC Center for the development of the COCOTS COTS
Center for Software Engineering Software Engineering. He is also the manag- modeling extension to COCOMO II.
Los Angeles, Calif. 90089-0781 er of the Software Engineering Process
Voice: 213-740-8163
Information on other authors of this article
Group at Litton Guidance and Control
Fax: 213-740-4927 may be found at http://sunset.usc.edu/
Systems, which achieved SEI CMM Level 4
E-mail: boehm@sunset.usc.edu Research_Group/People.html
in December 1998. He completed his Ph.D.

8 CROSSTALK The Journal of Defense Software Engineering April 2000


Software Estimation: Challenges and Research
Software cost and schedule estimation supports the planning and tracking of software projects. Because software is
complex and intangible, software projects have always been harder to estimate than hardware projects. In this article,
we review challenges for software cost estimators, and describe research work under way to address these challenges.

The Changing Nature of Software Development Future software estimators will have to estimate the costs of trade-
There are now many ways to develop and sell software offs between development, operating, and maintenance costs.
products. This means that the scope of the estimation problem This will require more knowledge of financial practices such as
is much larger now than it was in the early days of software return on investment, discounted value, etc. Barry Boehm covers
development. In the 1960s, all software was custom built. such topics in Part III of his classic book [2].
Projects had dedicated staff. Companies were usually paid on a Another factor that estimators must confront is the people
level of effort basis (cost plus, or time and materials). who will produce the software. Projects need experts in multiple
Today, there are many ways to build software (custom cod- application and solution domains in order to build the large,
ing, integration of pre-built components, generation of code complex systems. They may also have to receive guidance from
using tools, etc.). The project environment is more varied as well. experts in the legal, regulatory, and business domains. No single
Large, complex software products need a wider range of skills. person can understand all of these domains, nor can one individ-
Organizational structures are flatter and more fluid. Workers are ual keep up with them all. This means that development teams
often dispersed and may be hired only for short periods of time will be more interdisciplinary. Because all of these experts are not
when particular skills are needed. The business environment has needed continuously, project teams (and possibly entire compa-
also become more complex. There are new ways of selling soft- nies) may consist of a core of permanent experts and groups of
ware and data, increased liabilities for defective products, and new temporary workers hired just in time. The permanent staff would
accounting practices. The following paragraphs briefly describe include managers, project control, chief engineers, etc. The tem-
these areas. Each area presents challenges to software estimators. porary workers would include analysts, designers, engineers,
The technology used to build systems will continue to testers, support staff, and various domain experts. It will be chal-
evolve rapidly. This technology includes hardware platforms, lenging to assemble and manage such diverse, dynamic teams.
operating systems, data formats, transmission protocols, pro- Advances in telecommunications, networking, and support soft-
gramming languages, methods, tools, and commercial off-the- ware (groupware) can help such teams function even though they
shelf (COTS) components. The half-life of software engineering are geographically and temporally dispersed. Such organizational
knowledge is typically less than three years. structures affect estimators because they impact parameters such
Project teams will use new development processes such as as the average staff capability, experience, and turnover.
rapid application development (RAD) and COTS integration to There will also be a growing need for estimates of quality
grow software systems. These processes will continue to evolve (defects), reliability, and availability, as well as the usual cost and
rapidly as we learn. (Unless an organization is at Software schedule estimates. Developers and customers will become more
Engineering Institute Capability Maturity Model® Level 5, it interested in ensuring the safety and reliability of complex soft-
may not be able to evaluate and inject new technology at the ware systems such as those used for financial and medical applica-
rate needed to keep up.) Such constant and rapid changes mean tions. Estimating such characteristics is especially challenging for
that little relevant historical data will be available to help esti- systems built using COTS components.
mate future software projects and to develop new cost estima-
tion models. This may challenge CMM® criteria relating to Promising Research
estimating, planning, and tracking that require the use of histor- Several areas hold promise for coping with these challenges.
ical data and assume a stable process. This section describes recent work.
Technology and processes alone do not determine how
businesses will develop software, license products, etc. There is Size
an interaction with the legal and business domains. For exam- We measure size for many reasons. We use size to estimate
ple, Paul Strassman discusses possible ways of acquiring software effort, to measure memory requirements, to estimate processing
as summarized in Table 1. Strassman observes that outsourcing or execution speed, etc. What we measure and the units we use
or renting software (data processing) capability frees an organi- are determined by our intended use of the measure. The goal-
zation from the details of business support functions, and allows question-metric paradigm addresses this concept in detail [3]. The
it to focus on business objectives and growth. For additional Table 1. Ways to Acquire Software *
information, see www.strassman.com
• Build it yourself
Scott McNealy of Sun Microsystems proposes putting • Hire a developer to build it
everyday applications on the Internet for all to use for free [1]. • Hire a firm to build, maintain, and operate it for you
Such external influences will affect how software is built and sold. (outsourcing)
• Purchase COTS products
The Capability Maturity Model and CMM are registered in the • Rent pre-built, pre-tested functions
U.S Patent and Trademark office to Carnegie Mellon University. *Adapted from a talk presented in October by Paul Strassman.

April 2000 http://www.stsc.hill.af.mil 9


Cost Estimation

usual goal of software cost estimators is to size of the product. oper’s effort.
determine the amount of effort and sched- Some authors are attempting to link Still other size measures are needed
ule needed to produce a software product. the products of analysis and design directly for software maintenance. Lines of code
The amount of functionality in the prod- to the size measured in function points, or are of little use. Some possible size meas-
uct is gauged in terms of size (measured in some variant thereof. Specifically, they ures are the number of change requests,
Source Lines of Code, function points, endeavor to tie the attributes of diagrams and the number of modules affected by a
etc.). The estimator uses some productivity of the Unified Modeling Language (UML) particular change request. Lack of time
model or cost estimating relation to com- to function points. Some recent references prevents us from discussing this topic fur-
pute effort from the size. Schedule is often are [9] 3 and [10]. This will make counting ther here.
computed from the total effort, possibly of software size more objective.
modified by parameters such as the rate of “Software is seldom built using Standardized Process Milestones
staff buildup, etc. (Interestingly, several the Waterfall Model. Still, we need Software is seldom built using the
models for the development of new soft- some sort of milestones to be able Waterfall Model. Still, we need some sort
ware have schedule approximately propor- to define the scope of project activ- of milestones to be able to define the
tional to the cube root of the total effort.) ities covered by effort and sched- scope of project activities covered by
Size in SLOC clearly depends on the effort and schedule estimation models.
ule estimation models.”
choice of programming language. This Boehm has proposed “process anchors” as
leads to difficulties in defining the true This increased objectivity and preci- one way to standardize the description of
amount of functionality in a software sion comes at a price: we cannot count the production process [11]. These are
product, and in measuring programmer the size until after some analysis has been points where significant decisions or
productivity. Capers Jones described these done. Such a sizing method, while more events happen in a project. Table 2 lists
in his recent Scientific American article [4]. precise, could affect how software is pro- an extension of these. The milestones
Jones observes that the cost of developing cured. Perhaps it will be more like the shown in Table 2 are adapted from the
software is determined by more that just way that buildings are purchased. The Model-Based (System) Architecting and
the cost of the actual coding process. architect works with the user to define Software Engineering (MBASE) life cycle
Considerable effort is spent in designing, the building. All stakeholders must agree process model [12] and [13], and the
documenting, and testing. Jones, and oth- on the building’s purpose, architectural Rational Unified Process (RUP) [14],
ers, advocates a size measure developed by style, types of rooms and their juxtaposi- [15] and [16]. I have added the Unit Test
Allan Albrecht called function points [5]. tion, overall size, and types of building Complete milestone.
Albrecht’s goal was to define a measure materials. Sometimes there are additional The life cycle concept objectives
that was independent of the implement- constraints such as zoning laws, building (LCO) milestone defines the overall pur-
ing technology and based on quantities a codes, and available funding. Once every- pose of the system and the environment
user could understand. He used five quan- one agrees, the architect draws up in which it will operate. The operational
tities: inputs, outputs, queries, internal detailed plans and proceeds to cost the concept indicates which business or mis-
logical files, and external interface files. 1 project (The detailed plans for software sion functions will be performed by the
The International Function Point Users’ products could perhaps be UML dia- software and which will be performed
Group (IFPUG) is the custodian of the grams.). The architect receives a fee com- manually by the operators. The stakehold-
official counting rules.2 puted as some percentage of the total cost ers agree on the system’s requirements and
Albrecht originally defined function of the building. Another approach is to life cycle. The design team has identified a
points only for Management Information fund the early stages of requirements feasible architecture. The information
Systems. Since then, several workers have analysis and product design as level-of- defined at LCO is critical to guide design-
extended the concept to address other effort tasks. Once the team reaches prod- ers and programmers as they refine, elabo-
types of systems. For example, Charles uct design review (PDR)4 a binding pro- rate, and implement the system.
Symons has extended the concept to meet duction contract can be negotiated. This The life cycle architecture (LCA)
the needs of transaction-based systems [6]. will also affect which phases and activities milestone confirms the top-level structure
David Garmus discussed function point are covered by the estimation models. for the product. This further constrains
counting in a real-time environment [7]. Size is also difficult to define for pre- the choices available to the designers and
Alain Abran and his collaborators are built components. In many cases, the implementers. The unit test complete
working to update the measures of soft- developer does not even have the source (UTC) milestone occurs after LCA. Even
ware size by extending function points to code, so measures such as SLOC are not for rapid development, there should come
create what they call full function points. feasible. In addition, the developer needs a time when a component is considered
Full function points are based on a solid to understand, integrate, and test only finished. (This point is also called “code
theoretical foundation and will be vali- the portion of the component’s interfaces complete” by some authors. This name
dated using actual data from modern and functionality that is actually used. apparently arose at Microsoft [17].
projects. See [8] and [9]. Full function The size needs to reflect only this portion Rational Corp. has also defined an equiva-
points provide one way to measure the for the purpose of estimating the devel- lent milestone.) The UTC milestone

10 CROSSTALK The Journal of Defense Software Engineering April 2000


Software Estimation: Challenges and Research

occurs when the programmers relinquish


their code because they sincerely believe Inception Readiness Review (IRR)
that they have implemented all the • Candidate system objectives, scope, boundary defined
required features, turning it over to the • Key stakeholders identified
formal configuration control process. For
Life Cycle Objectives Review (LCO)
large military projects, the UTC milestone
occurs after unit testing when approxi- • Life Cycle Objectives (LCO) defined (key elements of Operational Concept,
mately 60-70 percent of the total effort Requirements, Architecture, Life Cycle Plan)
• Feasibility assured for at least one architecture
has been expended. The initial operational
• Acceptable business case
capability (IOC) is the first time that the • Key stakeholders concur on essentials
system is ready for actual use.
Life Cycle Architecture Review (LCA)
Theoretical Productivity Models • Life cycle Architecture (LCA) elaborated and validated
We need models that tell us how • Product capabilities defined by increment (build content)
product size relates to the effort (and • Key stakeholders concur on essentials
schedule) required to build the product. • All major risks resolved or covered by risk management plan
For example, Shari Pfleeger describes mod- Unit Test Complete (UTC)
els of software effort and productivity [18].
• All identified components completed and unit tested
Unfortunately, there no longer seems • All associated engineering documentation updated
to be a good measure of effort since the • Code and engineering documentation delivered to Configuration Management
effort required is not a linear function of (The component is complete and ready to be integrated.)
the size. Software development requires
Initial Operational Capability (IOC)
the engineer to manipulate and connect
many mental models. Since information is • Operational and support software built, integrated, and tested.
only communicated via voice and dia- • Appropriate documentation completed
grams, there is inefficiency in transferring • Operational data prepared or converted
• Necessary licenses and rights for COTS and reused software obtained
knowledge about the system between peo-
• Facilities, equipment, supplies, and COTS vendor support in place
ple on the team. This means that having • User, operator and maintainer training and familiarization completed
fewer people reduces the amount of com-
munication effort and also the amount of Transition Readiness Review
distortion introduced by the loss and • Plans for full conversion, installation, training, and operational cutover complete
noise associated with the imperfect com-
Product Release Review (PRR)
munications channel. (Standardized dia-
grams such as UML and formal methods • Assurance of successful cutover from previous system for key operational sites
attempt to improve the precision and effi-
ciency of communication.) Table 2. New Process Milestones
Larger groups of people work more
inefficiently. The main causes for this dis- pute the total development effort as the types of development processes. Their
economy of scale are the need to commu- sum of two terms. The first term is the family presently includes:
nicate complex concepts and mental mod- effort required by individuals working • COCOMO–Constructive Cost Model.
els between the workers, and the need to independently on modules. The second • COQUALMO–Constructive QUALity
coordinate the activities of a group of term is the effort required to coordinate Model.
workers who are performing a set of com- the activities of the team.5 Other existing • COCOTS–Constructive COTS model.
plex, interrelated tasks. If a project has N parametric models also attempt to account • COSSEMO–Constructive Staged
workers who must all communicate with for the diseconomy of scale. Schedule and Effort Model.
one another, the number of possible com- • CORADMO–Constructive Rapid
munication paths is N(N-1)/2. Managers Parametric Models Application Development Model.
create hierarchical organizations to reduce An earlier CROSS TALK article • COPROMO–Constructive
the number of direct interactions. Some- described the emergence of parametric Productivity Improvement Model.6
times, however, software products are so models [20]. Barry Boehm originally Although most of the past work
complex that it is not easy to partition the defined the Constructive Cost Model defined models for cost and schedule esti-
tasks. Samuel Conte and his coworkers (COCOMO) in 1981. During the 1990s mation, some work on models to esti-
discuss this topic in some detail [19]. They Boehm and his collaborators have worked mate software reliability and defect densi-
also define the COoperating Programming to modernize COCOMO. See [21]. ties has also been done. As the impor-
MOdel (COPMO) model to explicitly Basically, they have defined a family of tance of reliability increases, improved
compute such effects. Basically, they com- estimation models to address different versions of such models will be needed.

April 2000 http://www.stsc.hill.af.mil 11


Cost Estimation

Back to Basics 9. IWSM’99, Proceedings of the Ninth no. 1, pages 57-94. J. C. Baltzer AG
Planners and estimators need ways to International Workshop on Software Science Publishers, Amsterdam, The
address these challenges today. I think that Measurement, Lac Supérieur, Québec, Netherlands, 1995. See http://manta.cs.
Canada, 8-10 Sept. 8-10, 1999. vt.edu/ase/vol1Contents.html.
there are three things we can do. First, we
10. Stutzke, Richard D., Possible UML-
need to measure our projects, products,
and processes. To reduce measurement
Based Size Measures, Proceedings of the Notes
18th International Forum on COCOMO 1. The files may actually be collections of
costs, we need to collect and analyze data and Software Cost Modeling, Los Angeles,
based on our goals. The goal-question- physical files, database tables, etc. These
Calif., Oct. 6-8, 1998. collections are perceived externally as
metric (GQM) model is one way to attack 11. Boehm, Barry W., Anchoring the single entities.
this. Second, we should use updated esti- Software Process, IEEE Software, Vol. 13, 2. The IFPUG web site is http://ifpug.org
mation models as they become available. No. 4, July 1996, pages 73-82. 3. Accessible online at: www.lrgl.uqam.ca/
We should also use our metrics to formu- 12. Boehm, Barry W., D. Port, A. Egyed, iwsm99/indes2.html. Three papers
late simple estimation models that are bet- and M. Abi-Antoun, The MBASE Life dealing with UML-based size measures
ter suited to the new project types and Cycle Architecture Package: No were presented by Stutzke, Labyad et. al.,
development processes. Because all models Architecture is an Island, in P. Donohoe and Bévo et. al.
are only approximations, we should never (ed.), Software Architecture, Kluwer, 1999, 4. I use the phrase product design review
rely on a single model for our estimates. pp. 511-528. deliberately. There is nothing preliminary
Instead we should compare estimates from 13. Boehm, Barry W., and Dan Port, about it for software projects. Once PDR
two or more models. Third, we must be Escaping the Software Tar Pit: Model occurs you have defined the form into
prepared to change our metrics and mod- Clashes and How to Avoid Them, ACM which the programmers start to pour
els as we gain new understanding of the Software Engineering Notes, January concrete. After PDR, changes become
new development processes, technologies, 1999, pp. 36-48. very expensive for software!
and tools. This will continue to be a very 14. Royce, Walker E., Software Project 5. There are some challenges with calibrat-
Management: A Unified Framework, ing and using this model for prediction.
dynamic and exciting area of research as
Addison-Wesley, 1998. See their book.
we enter the new millennium.
15. Kruchten, Philippe, The Rational 6. For more information on these models
Unified Process: An Introduction, see the COCOMO II web site at http://
References Addison-Wesley, 1999. sunset.usc.edu/COCOMOII/suite. html
1. McNealy, Scott, Stop Buying Software, 16. Jacobson, Ivar, Grady Booch, and James
Dot Com Perspectives. See www.sun.com/ Rumbaugh, The Unified Software Devel- About the Author
dot-com/perspectives/stop.html. opment Process, Addison-Wesley, 1999. Dr. Richard D. Stutzke
2. Boehm, Barry W., Software Engineering 17. Cusumano, Michael A. and Richard W. has more than 40 years
Economics, Prentice-Hall, 1981. Selby, Microsoft Secrets: How the World’s of experience developing
3. Basili, V.R. and D.M. Weiss, A Method Most Powerful Software Company Creates software. He established
for Collecting Valid Software Engineering Technology, Shapes Markets, and Manages and led the Corporate
Data, IEEE Transactions on Software People, The Free Press, 1995. Page 195 Software Process Group
Engineering, vol. 10, no. 6, pages 728- describes the code complete concept. for Science Applications
738, 1984. 18. Pfleeger, Shari Lawrence, Model of International Corp.
4. Jones, Capers, Sizing Up Software, Software Effort and Productivity, (SAIC) for its first two years. For the past
Scientific American, December 1998, Information and Software Technology, seven years, he has been a principal mem-
pp. 104-109. vol. 33, no. 3, April 1991, pp. 224- ber of two Software Engineering Process
5. Albrecht, Allan J., Measuring 231. Groups: one at the Army Aviation and
Application Development Productivity, 19. Conte, Samuel D., H.E. Dunsmore, Missile Command's Software Engineering
Proceedings of the Joint SHARE, GUIDE, and V.Y. Shen, Software Engineering Directorate and one at SAIC's Applied
and IBM Application Development Metrics and Models,” Benjamin/ Technology Group. Both organizations
Symposium, October 14-17, 1979. Cummings, 1986. Section 5.8 describes have achieved SEI CMM Level 3. Dr.
6. Symons, Charles, Software Sizing and task partitioning and communications Stutzke has written dozens of papers in the
Estimating: Mark II Function Points overhead. Section 6.7 describes COPMO. field of software cost estimation and is
(Function Point Analysis), John Wiley & 20. Stutzke, Richard D., Software Estimating writing a book for Addison-Wesley,
Sons, 1991, ISBN 0-471-92985-9. Technology: A Survey, CROSS TALK , vol. 9, Software Estimation: Projects, Products,
7. Garmus, David, Function Point Counting no. 5, June 1996, pages 17-22. Processes, that will appear this fall.
in a Real-Time Environment, CROSS TALK , 21. Boehm, Barry W, Bradford Clark, Ellis
Vol. 9, No. 1, January 1996, pp. 11-14. Horowitz, Chris Westland, Ray Madachy Dr. Richard D. Stutzke
8. Abran, Alain and P.N. Robillard, Func- Science Applications International Corp.
and Richard Selby, Cost Models for
tion Point Analysis: An Empirical Study 6725 Odyssey Drive
Future Software Life Cycle Processes: Huntsville, Ala. 35806-3301
of Its Measurement Processes, IEEE COCOMO 2.0, Annals of Software Voice: 256-971-6624 or 256-971-7330
Transactions on Software Engineering, vol. Engineering, Special Volume on Software Fax: 256-971-6550
22, no. 12, December 1996, pp. 895-909. Process and Product Measurement, vol. 1 E-mail: Richard.D.Stuzke@saic.com

12 CROSSTALK The Journal of Defense Software Engineering April 2000


Instant Notification Coming Events
April 11-14
Would you like to be notified Infosecurity 2000
when the online version of http://www.infosec.co.uk/page.cfm
CROSS TALK becomes available? April 15-18
ACM International Conference on Management of Data
Take a moment to link to the http://www.seas.smu.edu/sigmod2000
new e-mail update form acces- April 18-20
sible from www.stsc.hill.af.mil FOSE
to ensure we have accurate, up- www.fedimaging.com/conferences
to-date information from you. April 24-28
Software Engineering Australia Conference (SEA 2000)
E-mail for information: johnl@sea-act.com.au
CROSS TALK online is available April 30-May 4
before the printed version, and The 12th Annual Software Technology Conference
you do not want to miss those http://www.stsc.hill.af.mil/STC/stcdesc.asp

early downloads from upcom- May 30-June 2


Thirteenth International Software Quality and Internet Quality Week (QW 2000)
ing issues on the F-22, CMMI http://www.soft.com/QualWeek/QW2K/index.html
part I and II, Network Security, May 22-23
Software Acquisition, Project 6th Annual Montgomery Golf Outing and Information Technology Partnership Day
http://web1.ssg.gunter.af.mil/partnership
Managment, and many more.
June 4-11
22nd International Conference on Software Engineering
http://www.ul.ie/~icse2000
June 4-7
9th Biennial IEEE
http://cefc2k.aln.fiu.edu
Quote Marks June 5-7
“I used to think that cyberspace 2000 IEEE International Interconnect Technology Conference
was 50 years away. What I http://www.his.com/~iitc
thought was 50 years away was June 10-14
only 10 years away. And what I ISCA2000: 27th International Symposium on Computer Architecture
http://www.cs.rochester.edu/meetings/ICSA2K
thought was 10 years away . . . it
was already here. I just wasn’t June 18-22
ICC 2000—IEEE International Conference on Communications
aware of it yet.”—Bruce Sterling http://www.icc00.org/
July 11-13
“I think computer 5th Annual Conference on Innovations and Technology in computer Science Education
viruses should count http://www.cs.helsinki.fi/events/iticse
as life. I think it says July 16-18
something that the 7th IEEE Workshop on Computers in Power Electronics
only form of life we http://www.conted.vt.edu/compel.htm
have created so far is July 16-19
purely destructive. Congress on Evolutionary Computation
We’ve created life in http://pcgipseca.cee.hw.ac.uk/cec2000
our own image.” August 6-11
6th Annual International Conference on Mobile Computing and Networking
http://www.research.telcordia.com/mobicom2000

April 2000 http://www.stsc.hill.af.mil 13


Does Calibration Improve Predictive Accuracy?
There are many sophisticated parametric models for estimating the size, cost, and schedule of software proj-
ects; however, the predictive accuracy of these models is questionable. Several authors assert that a model’s pre-
dictive accuracy can be improved by calibrating (adjusting) its default parameters to a specific environment.
This article reports the results of a three-year, 10-study project that tests this assertion. Results show that cali-
bration did not improve the predictive accuracy of most of the models we tested. In general, the accuracy was
no better than within 25 percent of actual development cost or schedule, about one half of the time.

Software costs continue to rise in the calibration improves the estimating accu- 8, 9, 10, 11]. Each is available from the
Department of Defense (DoD) and other racy of a model [6]. Defense Technical Information Center.
government agencies. To better understand Additional detail is also available from the
and control these costs, agencies often use The Decalogue Project authors of this article [12, 13]. Here,
parametric cost models for software devel- This paper describes the results of a only the highlights of the results of the
opment cost and schedule estimation. long-term project at the Air Force five studies are provided.
However, the accuracy of these models is Institute of Technology to calibrate and Calibration rules. The five models
poor when the default values embedded in validate selected software cost estimation were calibrated to a portion of the SMC
the models are used [1]. Even after the models. Two Air Force product centers database. The database was divided into
software cost models are calibrated to provided software databases: the Space subsets: military ground, avionics,
DoD databases, most have been shown to and Missile Systems Center (SMC), and unmanned space, missiles, and military
be accurate to within only 25 percent of the Electronic Systems Center (ESC). mobile. The military ground subset was
actual cost or schedule about half the time. The project has been nicknamed the further divided into command and control
For example, Robert Thibodeau [2] “Decalogue project” because 10 masters’ programs and signal processing programs.
reported accuracy of early versions of the theses extensively document the proce- Each subset was divided into calibration
PRICE-S and SLIM models to be within dures and results of calibrating each soft- and holdout samples using three rules:
25 and 30 percent, respectively, on mili- ware cost estimation model. 1. If there were less than nine data points,
tary ground programs. The IIT Research The Decalogue project is organized the subset was considered too small for
Institute [3] reported similar results on into three phases, corresponding to when a holdout sample and could not be
eight Ada programs, with the most accu- the theses were completed. Five theses validated.
rate model at only 30 percent of actual were completed in 1995; two theses were 2. If there were between nine and 11 data
cost or schedule, 62 percent of the time. completed in 1996; and three theses were points, eight were randomly selected for
Furthermore, the level of accuracy completed in 1997. Lessons learned dur- calibration and the rest were used for
reported by these studies is likely overstat- ing each phase were applied to the next validation.
ed because most studies have failed to use phase. A brief description of each phase 3. If there were 12 or more data points,
holdout samples to validate the calibrated and its results follows. two-thirds were randomly selected for
models. Instead of reserving a sample of calibration and the rest were used for
the database for validation, the same data Phase 1 validation.
used to calibrate the models were used to Each student calibrated a specific The accuracy of each model was eval-
assess accuracy [4]. In a study using 28 software cost model using the SMC soft- uated using criteria proposed by Samuel
military ground software data points, ware database. The models were the Conte, et al. [14] based on the following
Gerald Ourada [5] showed that failure to Revised Enhanced Intermediate Version statistics:
use a holdout sample overstates a model’s of the Constructive Cost Model (COCO- (1) Magnitude of Relative Error (MRE) =
accuracy. Half of the data was used to cal- MO) (REVIC), the Software Architecture | Estimate – Actual | / Actual
ibrate the Air Force’s REVIC model. The Sizing and Estimating Tool (SASET), (2) Mean Magnitude of Relative Error
PRICE-S, SEER-SEM, and SLIM. The (MMRE) = (MRE) / n
remaining half was used to validate the
(3) Root Mean Square (RMS) = [(1/n)
calibrated model. REVIC was accurate to government owns REVIC and SASET. (Estimate – Actual)2] ½
within 30 percent, 57 percent of the time The other models are privately owned. (4) Relative Root Mean Square (RRMS) =
on the calibration subset, but only 28 per- Management Consulting and RMS / [(Actual) / n]
cent of the time on the validation subset. Research developed the SMC database, (5) Prediction Level (Pred (.25)) = k/n
Validating on a holdout sample is and it contains detailed historical data for For Equation No. 5, n is the number
clearly more relevant because new pro- more than 2,500 software programs. The of data points in the subset and k is the
grams being estimated are, by definition, database includes inputs for REVIC, number of data points with MRE # 0.25.
not in the calibration database. The pur- SASET, PRICE-S, and SEER-SEM for According to Conte, et al. [14], a model’s
pose of this project was to calibrate and some of the 2,500 projects, but none estimate is accurate when MMRE < 0.25,
properly evaluate the accuracy of selected specifically for SLIM. RRMS < 0.25, and Pred (.25) > .75.
Results . Table 1 summarizes the
software cost estimation models using The details of each thesis project are
described in the separate thesis reports [7, results of Phase 1. Due to an oversight,
holdout samples. The expectation is that

14 CROSSTALK The Journal of Defense Software Engineering April 2000


Does Calibration Improve Predictive Accuracy?

not all five theses reported RRMS. Thus, Table 1 REVIC, SASET, PRICE-S, SEER-SEM, AND SLIM CALIBRATION RESULTS (1995)
only MMRE and PRED (.25) are shown. Model Validation Pre-Calibration Post-Calibration
Validation sample size is the number of Data Set Sample Size MMRE PRED (.25) MMRE PRED (.25)
REVIC Military Ground 5 1.21 0 0.86 0
data points in the holdout sample used Unmanned Space 4 0.43 0.50 0.31 0.50
for validation. For some models, the mili- SASET Avionics 1 1.76 0 0.22* 1.00*
Military Ground 24 10.04 0 0.58 0
tary ground subsets (signal processing and PRICE-S Military Ground 11 0.30 0.36 0.29 0.36
command and control) were combined Unmanned Space 4 0.34 0.50 0.34 0.50
SEER-SEM Avionics 1 0.46 0 0.24* 1.00*
into an overall military ground subset to Command and Control 7 0.31 0.43 0.31 0.29
Signal Processing 7 1.54 0.29 2.10 0.43
obtain a sufficiently large sample size for Military Mobile 4 0.39 0.25 0.46 0.25
validation. SLIM Command and Control 3 0.62 0 0.67 0
* Met Conte’s criteria
As shown in Table 1, most of the cali-
Table 2 SOFTCOST CALIBRATION RESULTS (1996)
brated models were inaccurate. In the two
instances where the calibrated models met Validation Pre-Calibration Post-Calibration
Data Set Sample Size MMRE RRMS PRED (.25) MMRE RRMS PRED (.25)
Conte’s criteria, only one data point was Ground Support 15 2.73 3.13 0.13 1.80 1.96 0.20
used for validation. Thus, these results are Ground Support (Europe) 25 3.05 3.61 0.08 0.67 0.84 0.36
Unmanned Space 5 0.56 1.05 0.20 0.48 0.92 0.20
not compelling evidence that calibration Unmanned Space (Europe) 7 1.79 0.79 0.14 1.27 0.84 0.14
improves accuracy. In some cases the cali- Avionics 5 0.71 0.76 0.20 0.85 0.56 0.20
Command and Control 6 1.90 3.43 0.17 0.52 0.87 0.50
brated model was less accurate than the Signal Processing 9 0.43 0.61 0.11 0.28 0.64 0.44
Military Mobile 5 0.63 0.51 0.20 0.42 0.40 0.20
model before calibration.
Table 3 CHECKPOINT CALIBRATION RESULTS (EFFORT, 1996)
These results may be due in part to
the nature of the databases available to Validation Pre-Calibration Post-Calibration
Data Set Sample Size MMRE RRMS PRED (.25) MMRE RRMS PRED (.25)
DoD agencies. In the SMC database, the Effort – Function Points
developing contractors are not identified. MIS – COBOL 6 0.54 0.10 0.67 0.02* 0.01* 1.00*
Military Mobile - Ada 4 1.38 0.41 0.25 0.19* 0.06* 0.75*
Therefore, the data may represent an Avionics 4 0.82 0.68 0.50 0.16* 0.11* 0.75*
amalgamation of many different develop-
Effort – SLOC
ment processes, programming styles, etc., Command and Control 6 0.19* 0.14* 0.50 0.16* 0.16* 0.50
which are consistent within contracting Signal Processing 10 0.09* 0.08* 1.00* 0.09* 0.08* 1.00*
Unmanned Space 5 0.05* 0.05* 1.00* 0.04* 0.06* 1.00*
organizations, but vary widely across con- Ground Support 4 0.05* 0.06* 1.00* 0.05* 0.06* 1.00*
COBOL Programs 4 0.05* 0.05* 1.00* 0.05* 0.05* 1.00*
tractors. Also, because of inconsistencies in
software data collection among different * Met Conte’s Criteria
DoD efforts, actual cost data and other Table 4 CHECKPOINT CALIBRATION RESULTS (1997)

data may be inconsistent and unreliable.1 Validation Pre-Calibration Post-Calibration


Data Set Sample Size MMRE RRMS PRED (.25) MMRE RRMS PRED (.25)
Phase 2 Ada Language 8 1.21 1.34 0.00 1.70 2.54 0.50
Assembly Language 11 0.83 1.44 0.09 2.05 1.20 0.18
In 1996 two additional models, FORTRAN Language 12 0.73 1.12 0.17 0.70 2.31 0.17
JOVIAL Language 7 0.71 1.22 0.00 0.44 0.68 0.43
SoftCost-OO and CHECKPOINT, were
calibrated by two master’s students. Contractor B 4** 0.60 0.74 0.13 0.64 0.49 0.25
Contractor J 11 0.69 0.91 0.18 1.33 1.43 0.18
CHECKPOINT is unique among the
models calibrated in this study because Ada and Contractor R 5** 0.59 0.57 0.05 0.39 0.72 0.45
CMS2 and Contractor M 5** 0.91 1.13 0.00 0.69 0.64 0.10
the internal algorithms are based on func- FORTRAN and Contractor A 7 0.82 0.84 0.00 0.44 0.88 0.29
tion points instead of lines of code. 2 JOVIAL and Contractor J 6 0.80 1.42 0.00 0.37 0.70 0.33
** Resampling Used for This Set
Details are provided in their thesis reports Table 5 COCOMO II CALIBRATION RESULTS (1997)
[15,16]. A brief description of each
Total Pre-Calibration Post-Calibration
model, the calibration procedures, and Data Set Sample Size MMRE RRMS PRED (.25) MMRE RRMS PRED (.25)
the results of Phase 2 follow. Command and Control 12 0.39 0.49 0.30 0.33 0.53 0.40
Signal Processing 19 0.45 0.63 0.33 0.38 0.53 0.40
Calibration rules. With a few excep- Ground Support 15 0.71 1.16 0.07 0.66 0.95 0.20
tions related to the subsets to calibrate and Military Mobile 12 0.79 0.95 0.10 0.68 0.74 0.00

the holdout sample rules, the two models Table 6 SAGE CALIBRATION RESULTS (1997)

were calibrated and validated using the Total Pre-Calibration Post-Calibration


same methods that were used in Phase 1. Data Set Sample Size MMRE RRMS PRED (.25) MMRE RRMS PRED (.25)
SMC – Avionics 9 0.45 0.54 0.21 0.39 0.52 0.24
A seventh subset of the SMC database, Command and Control 10 0.23* 0.23* 0.70 0.29 0.30 0.45
Signal Processing 16 0.39 0.43 0.44 0.50 0.54 0.20
ground in-support-of-space (“Ground Unmanned Space 7 0.66 0.69 0.14 0.59 0.88 0.30
Support” in Tables 2 and 3) was used for Ground Support 14 0.32 0.44 0.43 0.32 0.44 0.43
Military Mobile 10 0.37 0.47 0.29 0.41 0.52 0.36
both models. For SoftCost-OO, three Missile 4 0.66 0.89 0.00 0.67 0.44 0.24
additional subsets for European Space
ESC – Contractor A 17 0.48 0.57 0.17 0.41 0.40 0.31
Agency programs were added, since Soft- Contractor J 17 0.37 0.47 0.33 0.47 0.57 0.14
Cost-OO is used extensively in Europe. Contractor R 6 0.32 0.36 0.32 0.21* 0.23* 0.54
* Met Conte’s Criteria
April 2000 http://www.stsc.hill.af.mil 15
Cost Estimation

For CHECKPOINT, the missile sub- from a single contractor. Data from mul- ples were used for validation. Averages of
set was not used, and no European pro- tiple contractors, which often characterize the validation results became the measure
grams were used. In addition, data were DoD databases, are more difficult to cali- of accuracy. This “resampling” technique is
obtained on Management Information brate accurately. Furthermore, CHECK- becoming an increasingly popular and
System programs written in Common POINT is a function point model. If the acceptable substitute for more convention-
Business-Oriented Language (COBOL) user wants to input size in SLOC, which al statistical techniques [20].
from a local contractor, and a subset for is usually the case, the user or model The resampling technique is flexible.
COBOL programs was added to deter- must first convert the SLOC to function For CHECKPOINT, resampling was used
mine if stratification by language would points. Unfortunately, the conversion on only the small data sets (eight to 12
provide better results. Finally, the rules to ratios are sometimes subject to significant data points). Four random samples from
determine the sizes of the calibration and variations. Thus, the SLOC effort results the small sets were used to calibrate and
holdout samples were changed to avoid for CHECKPOINT may not work out as validate the model. For COCOMO II,
the problem of single-point validations well elsewhere. only data sets of 12 or more data points
experienced in Phase 1. If there were eight were used, and resampling was accom-
or more data points in a subset, half were Phase 3 plished on all sets by using 80 percent of
used for calibration, and the other half for In 1997 three models (COCOMO II, the randomly selected points for calibra-
validation. If there were fewer than eight SAGE, and CHECKPOINT) were cali- tion, and the remaining 20 percent for val-
data points, that subset was not used. brated. COCOMO II, the successor to idation. The process was repeated five
Results. Table 2 and Table 3 show Boehm’s COCOMO model [1], was cali- times, and the results were averaged. For
the results of calibrating each model for brated to the SMC database. The SAGE the SAGE model, all data sets having four
development effort. For SoftCost-00 model, a commercial model developed by or more points were used with an even
(Table 2), calibration almost always Randy Jensen, was calibrated to the SMC more comprehensive resampling proce-
improved the accuracy of the model, and ESC databases. Finally, CHECK- dure. Simulation software, Crystal Ball,
although none of the subsets met Conte’s POINT was calibrated to the ESC data- was used to select two data points for vali-
criteria. For CHECKPOINT, all but one base to determine whether the unusually dation, and the rest for calibration. Instead
subset met the criteria when predicting high accuracy reported by Karen Mertes of limiting the number of runs to four or
development effort (Table 3). [15] could be achieved on a different data- five, all possible subsets were run.
Since CHECKPOINT uses function base. As before, the details are documented Results. Table 4 shows the results of
points as a measure of size, they were used in the 1997 thesis reports [17,18,19]. the CHECKPOINT calibration using the
when sufficient data points were available Only the highlights are described here. ESC database. Unlike the results reported
for the subsets; otherwise, source lines of The ESC database contains informa- by Mertes [15], none of the data sets met
code (SLOC) were used. For three func- tion on 52 projects and 312 computer any of Conte’s criteria, even those for a
tion point effort subsets, there was sub- software configuration items [18], and single contractor. This may be due in part
stantial improvement in accuracy after the contractor identifiers and language, but to the lack of function point counts in the
model was calibrated for other programs does not contain information on applica- ESC database; only SLOC are provided
in these subsets, especially for the Manage- tion type. It also contains inputs for the for all data points. However, since Mertes’
ment Information System COBOL subset. SEER-SEM model for which it was origi- results using CHECKPOINT for SLOC
Except for the Command and Control nally developed. The ESC database was were also good, it is difficult to account
subset, the SLOC effort subsets met initially stratified by a contractor as it was for differences between the results of
Conte’s criteria before and after calibra- thought that a model could be more Mertes [15] and Thomas Shrum [19].
tion. Although calibration did not signifi- accurate when calibrated for a specific Table 5 shows the results for
cantly improve accuracy for these subsets developer [6]. For CHECKPOINT, the COCOMO II, where calibration slightly
(primarily because SLOC are an output, ESC database was also stratified by lan- improved the model’s predictive accuracy,
not an input, to CHECKPOINT), the guage, and by contractor and language. but none of the subsets met Conte’s crite-
accuracy was good even without calibra- Calibration rules. The techniques ria. It is possible that better results may
tion. CHECKPOINT results for effort used to calibrate the models were signifi- be attained when the online calibration
estimation are especially noteworthy as cantly improved over those used in the capability is incorporated into the model.
inputs for this model were not considered earlier phases. In the past, small data sets Table 6 shows the results for SAGE
when the SMC database was developed. reduced the meaningfulness of the calibra- on both databases. Although calibration
Although these results were promis- tion. Making statistically valid inferences sometimes resulted in improved accuracy,
ing, it should not be assumed that from small data sets of completed software only a few sets met Conte’s criteria. This is
CHECKPOINT will do as well in other projects is a common limitation of any cal- somewhat surprising for the ESC data sets,
environments. The best results for the ibration study. To overcome this limita- where individual contractors are identified
CHECKPOINT model were for the tion, each model was calibrated multiple by a code letter, and the model should be
Management Information System times by drawing random samples from consistent for a company. It may be that
COBOL data set, which was obtained the data set. The remaining holdout sam- even within a single company software

16 CROSSTALK The Journal of Defense Software Engineering April 2000


Does Calibration Improve Predictive Accuracy?

programs are developed differently. Also, it 3. IITRI. Test Case Study: Estimating the 15. Mertes, Karen R. Calibration of the
is possible that if the simultaneous effort Cost of Ada Software Development. CHECKPOINT Model to the Space and
and schedule calibration capability that is Lanham, Md., IIT Research Institute Missile Systems Center (SMC) Software
now integrated into SAGE was used, the (1989). Database (SWDB). Master’s thesis.
results would be better. 4. Ourada, Gerald L. and Daniel V. Ferens. Dayton, Ohio, Air Force Institute of
Software Cost Estimating Models: A Technology (1996).
Calibration, Evaluation, and Comparison. 16. Southwell, Steven V. Calibration of the
Conclusion Cost Estimating and Analysis: Balancing SoftCost-R Software Cost Model to the
Calibration does not always improve a Technology and Declining Budgets. N.Y., Space and Missile Systems Center (SMC)
model’s predictive accuracy. Most of the Springer-Verlag, pp. 83-101 (1992). Software Database (SWDB). Master’s
calibrated models evaluated in this project 5 Ourada, Gerald L. Software Cost thesis. Dayton, Ohio, Air Force
failed to meet Conte’s criteria. According Estimating Models: A Calibration, Institute of Technology (1996).
to Mertes, the one exception was the cali- Evaluation, and Comparison. Master’s 17. Bernheisel, Wayne A. Calibration and
bration of CHECKPOINT to the SMC thesis. Dayton, Ohio, Air Force Institute Validation of the COCOMO II Cost/
database, where almost all of the calibrated of Technology (1991). Schedule Estimating Model to the Space
data sets met Conte’s criteria for function 6. Kemerer, Chris F. An Empirical and Missile Systems Center Database.
point and SLOC applications. Unfortu- Validation of Software Cost Estimation Master’s thesis. Dayton, Ohio, Air
nately, Shrum could not replicate this Models. Communications of the ACM, Force Institute of Technology (1977)
result on the ESC database using a superi- pp. 416-429 (May 1997). 18. Marzo, David B. Calibration and Valida-
or validation technique. Overall, none of 7. Galonsky, James C. Calibration of the tion of the SAGE Cost/Schedule Estimating
the models was shown to be more accurate PRICE-S Model. Master’s thesis. Dayton, System to United States Air Force Databases.
than within 25 percent of actual cost or Ohio: Air Force Institute of Technology Master’s thesis. Dayton, Ohio, Air Force
effort, one half of the time. (1995). Institute of Technology (1997).
This does not mean the Decalogue 8. Kressin, Robert K. Calibration of the 19. Shrum, Thomas C. Calibration and
Software Life Cycle Model (SLIM) to the Validation of the CHECKPOINT Model
project was done in vain. Much was
Space and Missile Systems Center Software to the Air Force Electronic Systems Center
learned about the models, their strengths
Database (SWDB). Master’s thesis. Software Database. Master’s thesis.
and weaknesses, and the challenges in cali-
Dayton, Ohio, Air Force Institute of Dayton, Ohio, Air Force Institute
brating them to DoD databases. One Technology (1995). of Technology (1997).
major insight is that the use of a holdout 9. Rathmann, Kolin D. Calibration of the 20. University of Maryland. The Resampling
sample is essential for meaningful model System Evaluation and Estimation of Project. College Park, Md. (1997).
calibration. Without a holdout sample, the Resources Software Estimation Model 21. Albrecht, A.J. and J.E. Gaffney.
predictive accuracy of the model is proba- (SEER-SEM) for the Space and Missile Software Function, Source Lines of
bly overstated. Since all new projects are Systems Center. Master’s thesis. Dayton, Code, and Development Effort
outside of the historical database(s), valida- Ohio, Air Force Institute of Technology Production: A Software Science
tion is much more meaningful than the (1995). Validation. IEEE Transactions on
more common practice of analyzing with- 10. Vegas, Carl D. Calibration of the Software Engineering. Volume SE-9
in-database performance. The calibrations Software Architecture Sizing and (November 1983).
performed in 1997 also developed and Estimation Tool (SASET). Master’s
applied resampling as a superior technique thesis. Dayton, Ohio,: Air Force Notes
to use in validating small samples. It is Institute of Technology (1995). 1. This problem was addressed in Phase 3
better than just using one subset of data 11. Weber, Betty G. A Calibration of the of the Decalogue project, where the ESC
for a holdout, and can be done easily with REVIC Software Cost Estimating Model. database was used. The ESC database
modern software, such as Excel and Master’s thesis. Dayton, Ohio, Air contains an identifier for each contribut-
Crystal Ball. Hopefully, the findings of the Force Institute of Technology (1995). ing contractor.
12. Ferens, Daniel V., and David S. 2. Function points are weighted sums of
Decalogue project will inspire additional
Christensen. Software Cost Model five attributes or functions of a software
effort in the area of model calibration, and
Calibration, An Air Force Case Study. program (inputs, outputs, inquiries,
more promising results will be obtained.
Journal of Cost Analysis and Management, interfaces, and master files). Based on
pp. 43-46 (Fall 1997). their analysis of more than 30 data pro-
References 13. Ferens, Daniel V., and David S. cessing programs, Allan J. Albrecht and
1. Boehm, Barry W. Software Engineering Christensen. Calibrating Software Cost John Gaffney[21] report that function
Economics. Englewood Cliffs, N.J., Models to DOD Databases—A Review points may be superior to SLOC as
Prentice-Hall (1981). of 10 Studies. Journal of Parametrics 14: predictors of software development cost
2. Thibodeau, Robert. An Evaluation of 33-52 (Spring 1999). or effort.
Software Cost Estimating Models. 14. Conte, S.D., Dunsmore, H.E., and
Huntsville, Ala., General Research Corp. Shen, V.Y. Software Engineering Metrics See p. 24 for author information.
(1981). and Models. Menlo Park, Calif.:
Benjamin-Cummings (1986).

April 2000 http://www.stsc.hill.af.mil 17


Congratulations to CROSS TALK Top 10 Authors of 1999
CROSS T ALK would like to single out its Top 10 authors of the past year for their contribution to the Department
of Defense's premier software engineering journal. The authors, and the name of those articles that received
the highest Web hits, can be accessed at http://www.stsc.hill.af.mil by clicking on past issues of CROSS TALK.
engineering experience (manage- Geoff Draper is the software Lennis Bearden was the leader

10
Software Mini-
Assessments: Process ment, development, and process focus leader of the EPG respon- of the EPG responsible for all
and Practice by Gary improvement) with Harris sible for HISD software process HISD engineering process
Natwick, Geoff Draper, and Corp. and the Air Force. He definition and improvement. improvements. He has more
Lennis Bearden [October 1999]. earned a bachelor of science He has more than 15 years than 25 years experience cover-
Gary Natwick is the metrics degree in electrical engineering experience with Harris Corp. in ing all aspects of system develop-
leader for the Engineering from the University of Miami. various software development ment, including hardware, soft-
Process Group (EPG) responsi- Natwick is a member of the and leadership positions. ware, system engineering, and
ble for advancing the Harris Institute of Electrical and Draper earned a bachelor's program management. His
Information Systems Division to Electronics Engineers and the degree and a master of science interests are software processes,
SEI SW-CMM Level 4. Association for Computing degree in computer science systems engineering process, and
Previously, he was the leader of Machinery and is an Authorized from the University of Illinois systems architecture. Bearden
the SEPG advancing the HISD Lead Assessor in the SEI Cost and Florida Institute of earned a bachelor's degree and
software process maturity to SEI Benefits Analysis-Internal Technology, respectively. master of science degree in elec-
SW-CMM Level 3. He has Process Improvement method. E-mail: gdraper@harris.com trical engineering from the
more than 25 years of software E-mail: gnatwick@harris.com University of Tennessee.

9
Structured Approaches to Managing Change, by Mark C. Paulk [November 1999]. Paulk is a senior member of the
SEI technical staff. He has been with the SEI since 1987 and initially worked on the Software Capability
Evaluation project. He has worked with the Capability Maturity Model® project since its inception and was the
project leader during the development of v. 1.1 of the CMM®. He is a contributor to the International Organization
for Standardization's Software Process Improvement and Capability Determination (SPICE) project, which is develop-
ing a suite of international standards for software process assessment. Prior to his work with the SEI, Paulk was a senior
systems analyst for System Development Corp. (later Unisys Defense Systems) at the Ballistic Missile Defense
Advanced Research Center in Huntsville, Ala. He is a senior member of the Institute of Electrical and Electronic Engineers and a senior
member of the American Society for Quality Control. Paulk has a master's degree in computer science from Vanderbilt University and a
bachelor's degree in mathematics and computer science from the University of Alabama in Huntsville. E-mail: mcp@sei.cmu.edu

8
Improving Software Engineering Practice" by Patricia Sanders [January 1999]. Sanders is the director of test, sys-
tems engineering, and evaluation for the Department of Defense (DoD), where she is responsible for ensuring
effective integration of all engineering disciplines into the system acquisition process, including design, produc-
tion, manufacturing and quality, acquisition logistics, modeling and simulation, and software engineering, with
emphasis on test and evaluation as the feedback loop. She also oversees the DoD's Major Range and Test Facility Base
and development of test resources such as instrumentation, targets, and other threat simulators. She has more than 24
years experience. She holds a doctorate in mathematics from Wayne State University and is a graduate of the Senior
Executive Fellow Program, John F. Kennedy School of Government, Harvard University. E-mail: zetterbt@acq.osd.mil

7
16 Critical Software Practices for Performance-Based Management, by Jane T. Lochner [October 1999]. Lochner is a
1984 Naval Academy graduate. She served aboard USS Norton Sound (AVM-1) and USS Cape Cod (AD-43). She
was selected to the Engineering Duty community in 1988. She has extensive experience with developing and field-
ing complex, real-time combat systems on aircraft carriers and large-deck amphibious ships. She is assigned to the Office
of the Assistant Secretary of the Navy for Research, Development, and Acquisition working command, control, commu-
nications, computers, intelligence, surveillance, and reconnaissance and interoperability issues. She holds a bachelor's
degree in marine engineering, a master's degrees in logistics, applied physics, and computer science, and is a graduate of
the Defense Systems Management College Program Manager's course. E-mail: lochner.jane@hq.navy.mil

6
Influential Men and Women of Software, by Kathy Gurchiek [December 1999]. Gurchiek is the Managing Editor of
CROSS TALK : The Journal of Defense Software Engineering. She has been a journalist for nearly 20 years. She has
worked as a reporter and editor for newspapers in Indiana, Illinois, and Georgia. She has served as an adjunct col-
lege instructor of communications in Salt Lake City, and her free-lance writing experience includes working for regional
magazines, The Chicago Tribune, the Salt Lake bureau of The Associated Press, the Salt Lake Tribune, and the former
CompuServe Wow! online magazine. She holds a master's degree in journalism from Columbia College in Chicago.
E-mail: kathy.gurchiek@hill.af.mil

18 CROSSTALK The Journal of Defense Software Engineering April 2000


CROSSTALK Top 10 Authors of 1999

5
High-Leverage Best Practices—What Hot Companies are Doing to Stay Ahead and How DoD Programs can
Benefit, by Norm Brown [October 1999]. Brown is the founder and executive director of the Software
Program Managers Network, a member (ex officio) of the DoD Software Management Review Board,
and executive director of the DoD Software Acquisition Best Practice Initiative. Brown has a bachelor's
degree in electrical engineering from Pratt Institute, a master's degree in electrical engineering from Rutgers
University, and a doctor of laws from American University. He is a member of IEEE and ACM.
E-mail: spmn@aol.com

4 Earned Value Project Management: An Introduction by Quentin W. Fleming and Joel M. Koppelman [July
1999]. Fleming is a senior staff consultant to Primavera Systems Inc. and has more than 30 years industrial
project management experience. He held various management assignments with the Northrop Corp. from
1968-91, served on an earned value corporate review team, and wrote the corporate policy directive on scheduling.
He was president of the Orange County Project Management Institute (PMI) chapter and developed and taught
four PMI Project Management Professional tutorial courses covering scope, cost, time, and procurement manage-
ment. He has a bachelor's and a master's degree in management and is the author of seven published textbooks,
including Earned Value Project Management, with Koppelman. E-mail:QuentinF@Primavera.com
Joel M. Koppelman is president of Primavera Systems Inc., which provides a family of project management
software products. Before co-founding Primavera in 1983, he spent more than 12 years planning, designing,
and managing major capital projects in the transportation industry, including duties as vice president and
chief financial officer for Transportation and Distribution Associates Inc. Prior to that, he was affiliated with
the management consulting firm of Booz Allen Hamilton Inc. Koppelman is a registered professional engi-
neer with a bachelor's degree in civil engineering from Drexel University and a master's degree in business
administration from the Wharton School of the University of Pennsylvania. He is a frequent speaker at uni-
versities and for international management organizations. E-mail: JKoppel@Primavera.com

3
Confusing Process and Product: Why the Quality is not There Yet, by David Cook [July 1999]. Cook is a
principal member of the technical staff, Charles Stark Draper Laboratory, and working under contract to
the Software Technology Support Center. He has more than 25 years experience in software development
and has lectured and published articles on software engineering, requirements engineering, Ada, and simulation.
He has been an associate professor of computer science at the Air Force Academy, deputy department head of
software engineering at the Air Force Institute of Technology, and chairman of the Ada Software Engineering
Education and Training Team. He has a doctorate in computer science from Texas A&M University and is a
SEI-authorized PSP instructor. E-mail: cookd@software.hill.af.mil

2
CCB—An Acronym for Chocolate Chip Brownies? by Reed Sorensen [March 1999]. Sorensen is on the
technical staff at TRW and was under contract to the STSC at the time this article appeared. He has
more than 20 years experience developing and maintaining software and documentation of embedded
and management information systems, providing systems engineering and technical assistance to program
offices, and consulting with many DoD organizations regarding their software configuration management
and documentation needs.
E-mail: Reed.Sorensen@cti-net.com

1
Configuration Management: Coming of Age in the Year 2000 by Clive Burrows [March 1999]. Burrows
is principal evaluator of configuration management products for Ovum in London, England. He is
the author of four Ovum reports on this subject, the most recent was Ovum Evaluates: Configuration
Management published June 1998.

E-mail: clive_burrows@compuserve.com

CROSSTALK will honor its Top 10 Authors of 1999 during the Software Technology Conference
in Salt Lake City, Utah. Please join us at STC 2000, scheduled for April 30-May 4, when these
authors are singled out for their contribution to CROSSTALK : The Journal of Defense Software
Engineering. For more information on the conference, please see http://www.stc-online.org

April 2000 http://www.stsc.hill.af.mil 19


Reducing Bias in Software Project Estimates
“It’s tough to make predictions, especially about the future.” – Yogi Berra
Nearly every software development ment, by its very nature, is a very subjec- • Availability bias.
estimate has been, or will be, biased. tive estimating method. The estimates are • Representative bias.
Biases in the estimating process con- most often developed through the use of • Overconfidence bias.
tribute to poor estimates, which can best guesses due to the relative immaturi- • Confirmation bias.
affect the success or failure of a project. ty of software development as an engi- • Insufficient anchor-adjustment bias.
To understand the psychological impact neering discipline. In many cases, the • Prudence bias.
of bias in developing software project task expert judgment estimate is produced by
level effort estimates is essential for infor- team members experienced in the work at Availability Bias
mation technology Project Managers and hand, but not necessarily experienced in This reflects our unconscious attempts
their teams. The key questions become: estimating techniques. to predict the future based on memories of
1. How do biases affect bottom-up When estimating, our judgment has the past. The fact that our memory is
task level effort estimates for soft- a fairly large degree of uncertainty associ- marked by more vivid or recent experi-
ware development? ated with it. By incorporating the bias- ences allows the availability bias to skew
2. What bias-reduction strategies can reduction techniques outlined in this our judgment. A common example is the
you employ to improve the quality paper you can increase the level of cer- tendency for individuals to overestimate
of your estimates? tainty inherent within your estimates, the occurrence of a more memorable or
In spite of impressive advances in move down the judgment-bias curve, and graphic cause of death, such as a plane
processes and tools, software project esti- ultimately improve the quality of your crash, rather than a less memorable event,
mating remains more of an art than a sci- estimates (See Figure 1.). Software esti- such as a car crash.
ence. Software projects continue to finish mating is more of an art than a science, Estimates are also subject to our own
behind schedule and over budget, if they and inherently more prone to the nega- bounded rationality [5]. The first reason-
finish at all. According to a recent study, tive aspects of human biases. able number that seems to make sense is
only 37 percent of software projects are often used as the starting point for an ini-
completed on time and only 42 percent Description of Bias, Example, tial estimate, which often acts as an anchor
are completed within budget [1]. This is and Bias-Reduction Strategies (See insufficient anchor adjustment bias).
due in part to the difficulties in acquiring The search for information on which to
The mental shortcuts, or heuristics,
accurate estimates of software develop- base this estimate is less than rigorous and
we use to solve complicated, uncertain
ment effort. often subject to mental shortcuts.
problems, like estimating software devel-
“The subject of software estimating is Software estimates based on expert
opment work effort, are subject to biases.
definitely a black art,” says Lew Ireland, judgment are often derived from estimat-
A bias is a partiality, or prejudice, under-
former president of the Project Manage- ing by analogy, either formally through the
lying the decision-making process (the
ment Institute. Furthermore, understand- use of historical data or informally from
bias emanates from the heuristic) [4].
ing the role of judgment and bias in soft- past experience. Many experienced soft-
Some biases that have an impact on the
ware estimating is even more elusive. An ware engineers use completed projects,
development of task-level software project
extensive literature search yielded virtually particularly projects they have worked on
estimates, particularly when derived from
no research and few articles dealing with in the past, as a heuristic for current soft-
expert judgment, are:
the topic. Therefore, we applied Amos ware development estimates. The availabil-
Tversky and Daniel Kannamen's seminal Figure 1. The Judgement-Bias Curve ity bias predicts that information recalled
research done in the areas of judgment from memory that is used to develop task-
and bias to the topic of software project level estimates is most likely the very best
estimating [2]. or the very worst memories of completed
tasks or projects, since these experiences
The Judgement-Bias Curve would be most readily remembered. Vivid,
One of the most widely used meth- compelling, or otherwise interesting
ods of estimating software development instances from past projects can bias the
tasks from a bottom-up or task-level estimate for the project or task.
approach is expert judgment, sometimes
known as a “best guess” [3]. Expert judg- Availability Example
ment, although a very valuable method, Consider the case of Alex. He works
is subject to human biases. Biases are on your project team, but spends most of
Bias his time talking about the Kennedy assas-
more pronounced in the development of
bottom-up estimates because expert judg- sination and the Challenger disaster. He
Certainty also refers to the last project he worked on

20 CROSSTALK The Journal of Defense Software Engineering April 2000


Reducing Bias in Software Project Estimates

as the “best darn project ever done on tor of future results.” To no one’s sur- Bias-Reduction Strategies
time and under budget.” Alex uses his prise, Ralph does not use historical proj- There are ways to decrease the risk of
experience on his last project as an analo- ect data or other metrics to derive his having an estimate that reflects reality in
gy to come up with his task-level esti- task-level estimates for your project. only the most fortunate of situations.
mates for your project, which is good May luck be your constant companion,
news. The bad news is that the estimate Bias-Reduction Strategies but just in case, you can:
may be biased due to the fact that a cross- As the project manager, you are ulti- 1. Encourage Olive to develop a range
section of projects was not used. mately responsible for the accuracy of instead of a point estimate. Make
Ralph’s estimates. To ensure you will not sure she considers the worst case,
Bias-Reduction Strategies be in a soup line any time soon: Murphy’s Law-type of scenario for
There are tactics you can use to stress- 1. Encourage Ralph to use any and all the high-end of the range (a pes-
test Alex’s estimates: historical data and metric informa- simistic estimate).
1. Ask him what assumptions were tion available. While intuition is 2. Ask Olive on what assumptions this
used, and whether they make sense. good, so are data. estimate range is based. If the
Basing the estimate on a similar task 2. At the very least adjust Ralph’s esti- answer is “We will have two fully
completed for a past project where mate in the direction of the histori- dedicated clairvoyants developing
everything (or nothing) went well is cal average. We are more likely to the requirements,” adjust the esti-
a recipe for disaster. Not only should perform closer to the average on mate upward.
the task be similar, but the project subsequent trials. Statisticians call 3. Gather information from a variety
should be, too. this “regression to the mean.” of sources to get a broader picture of
2. Encourage Alex to adjust his initial 3. Make sure Ralph does his homework what needs to be done.
estimate so it is based on historical before presenting this estimate to the 4. Tell the team that you are not
data or metrics such as productivity team. Groups generally show a higher interested in best-case estimates, but
rates and size measures, if available. rate of representative bias than indi- realistic estimates. Some studies have
The objective is to use more than viduals. In other words, groups are shown this will help; some have
one project as a reference. less likely to use available data and shown it will not matter, but it
3. Discuss Alex’s estimate as a team. metrics [6]. cannot hurt.
Groups have been shown to exhibit Remember—studies show our estimates
less of an availability bias than Overconfidence Bias are even more optimistic the more com-
individuals [6]. This bias (sometimes referred to as plex and difficult the task [7].
the optimistic bias) demonstrates that we
Representative Bias tend to overestimate our abilities and Confirmation Bias
The representative bias is most often underestimate the effort involved in com- This is in effect when people search
expressed in software estimating as insensi- pleting a difficult task, particularly when for information that supports their idea
tivity to base-rate data. We can think of we are completing the task ourselves. and ignore information that does not sup-
base-rate data as existing metric data from Studies have shown that the more diffi- port their idea. An analyst who develops a
past projects. Individuals may tend to cult and uncertain a task, the more preva- task-level estimate may consider informa-
ignore metric data in assessing their esti- lent the overconfidence bias [7]. In other tion supporting the estimate, and ignore
mates when other anecdotal information is words, individuals tend to drastically information that the task at hand may be
available, even if the anecdotal informa- underestimate large, complex tasks when significantly larger or smaller than that
tion is irrelevant [7]. The representative using expert judgment as an estimating initial estimate indicates.
bias predicts that even if we have extensive method.
metric data, our teammates may not be Confirmation Example
inclined to consider it when coming up Overconfidence Example Cathy is a perfect example. She tends
with their estimates. Under this bias, the Olive is assigned to the coding to stick to her guns, and can be narrow-
estimate is probably constructed using changes for your high-profile project. minded. She tends to start estimating her
information with a higher degree of uncer- When asked about the amount of work work effort with an estimate in hand and,
tainty than would have been the case had involved in completing her tasks, she after limited research, usually concludes
we used the existing metric data. often prefaces her response with phrases she was right in the first place.
like, “This is a piece of cake,” and “No
Representative Example problem.” Even you, the project manager, Bias-Reduction Strategies
Ralph has just joined your project are taken aback by the aggressiveness of Cathy can be helped. Here is how:
team from another organization that did Olive’s schedule. Ironically, the more dif- 1. Encourage her to research historical
not have historical data or metrics. He ficult the task the quicker she plans to get data and metrics, and ask other
avoids metrics like the plague and points it done. “No problem” might end up experienced team members for help.
out that “past experience is a poor indica- being a big problem. It is important to get her to look at

April 2000 http://www.stsc.hill.af.mil 21


Cost Estimation

a variety of information, not just this about 50 hours?” Or, “Can we Work expands to fill the amount of time
data to support her initial estimate. get this done by my birthday next available for completion
2. Play devil’s advocate. Question her week?” Let Alice do her homework
sources and assumptions. and then negotiate. Bias-Reduction Strategies
3. Most importantly, ask if she adjusted Paul is an asset; he realizes the need
her initial estimate based on informa- Prudence Bias to take a closer look at the estimating
tion she found after her research. When faced with high-profile tasks, process. In order to get a more accurate
or the first few times accountability is used estimate, however, try these techniques:
Insufficient Anchor in the same sentence as task-level estimates, 1. Ask him if he added a cushion or
Adjustment Bias team members may respond by coming up padded his estimate. Pad the project
This occurs when an initial estimate with over-cautious estimates [8]. Padding estimate, not each task estimate.
is made (the anchor), and upon re-esti- task estimates can be just as dangerous as 2. Emphasize the need for accurate
mating the effort, insufficient adjust- wildly optimistic low-ball estimates. effort estimates at the task level and
ments are made from that anchor. It does show how padding each task will
not matter if the initial estimate is Prudence Example inadvertently lengthen the critical
derived from historical data, parametric Paul follows all the rules, but you do path.
modeling tools, or a random number not want to get behind him on the free- 3. Olive the optimist and Paul probably
generator. way if you are in a hurry. He takes it pret- do not have a lot to talk about, but it
ty slow to be safe, and also pads his task- is a good idea to have them review
Insufficient Anchor Adjustment Example level estimates to be safe. If several team each other’s estimates.
The task of creating a test plan falls to members follow Paul’s lead, the result can See Table 1 for a summary of the
Alice, who likes to get other team mem- be a wildly over-cautious project estimate. biases that impact software development
bers’ opinions on how much effort they Have you heard of of Parkinson’s Law? task-level estimates.
think the task entails. She hates a blank Table 1. Summary of the Biases and Bias Reduction Strategies
sheet of paper. Someone estimates the task
Bias Description Bias Reduction Strategies
at 25 effort hours. After assessesing the
available information, she determines that Availability Vivid or graphic events • Challenge the assumptions of the
25 hours seems low, and decides to double overshadow objectivity estimate.
the estimate to 50 hours based on limited • Use more than one project/task as a
research. Chances are this adjustment is
reference.
insufficient, simply because it is based on
the initial anchor of 25 hours. The task • Discuss the estimate as a team.
turns out to require 250 effort hours. This Representative Not using base rate data or • Use data as well as intuition.
is the danger of the anchoring bias. metrics • Adjust estimate toward the mean.
Bias-Reduction Strategies • Formulate estimate before
There are methods you can employ discussing as a team.
as a project manager, or conscientious Overconfidence Too optimistic • Use an estimate range vs. a point
team member, to try and avoid the nega-
estimate.
tive aspects of the anchor bias:
1. Encourage Alice to research the • Challenge the assumptions.
problem and really dig into it. • Use more than one source of
2. Ask her to specify a range rather information.
than a point when researching the
• Set expectations for realistic
effort required. This will denote the
estimates.
uncertainty involved and reduce the
tendency to insufficiently adjust Confirmation See what you want to see • Use historical data and metrics.
subsequent estimates. Stating the • Play devil’s advocate.
estimate as about 40 to 80 effort • Stress the importance of adjusting
hours is less specific and probably
the estimate.
easier to adjust, than an early esti-
mate of 52 hours. It pays to be Anchor Insufficient adjustment of • Foster a research-based estimate.
• Use an estimate range vs. a point
approximately accurate, rather than Adjustment subsequent estimates
estimate.
precisely inaccurate. • Do not ask leading questions or
3. Do not ask leading questions when throw out a guess.
inquiring about an estimate. Avoid Prudence Too pessimistic • Pad the project estimate, not the
saying, “Alice, what do you think? Is task estimates.
• Discuss the estimate as a team.

22 CROSSTALK The Journal of Defense Software Engineering April 2000


Reducing Bias in Software Project Estimates

General Bias-Reduction Strategies Let us take Alice's test plan as an encourage estimating. The real expert in
It is virtually impossible to eliminate example. She should document where she the expert judgment approach is home-
the impact of human biases on software collected the information for the task-level work, not just experience, and the team
project estimating. Biases are by defini- estimate, the activity driver for the task needs time to do it right.
tion subconscious. The same psychologi- (perhaps the number of test cases), and
cal mechanism that creates the bias works her assumptions. This data will be very Use More Than One Estimating Method
to conceal it [4]. useful the next time she or anyone else Use a variety of estimating methods
The first and most important step is develops a task-level estimate for a test and sources of information. Use historical
awareness that human biases impact deci- plan. Over the course of many projects, it data (if you do not have any, start collect-
sion-making, particularly decisions with may be found that given this type of proj- ing it), industry statistics, estimating tools,
uncertainty—like task-level estimating in ect and testing environment, it takes organizational metrics data, experienced
software development. If the project team approximately four hours per test case to team members, best guesses, and even
can anticipate, identify, and minimize the complete the test plan. If she estimates she intuition. Comparing multiple estimates
negative impact of biases in the software will have about 50 test cases, her initial lets you know if your team is really getting
estimating process there will be greater effort estimate might be around 200 a handle on the project. For example, it is
certainty in the validity of the project esti- hours. Of course the estimate should be always a good idea to compare the phase-
mate. General strategies will help reduce adjusted (and perhaps not insufficiently), level estimates from a top-down approach,
the human biases in software project esti- but the data collected provides an excel- using a parametric modeling tool, to the
mates. These strategies are: lent place to start, and a handy rule of aggregated task-level estimates from a bot-
• Provide feedback on the accuracy of thumb. It also provides a repeatable tom-up approach. If they are close, you
the estimates. process, which can be improved upon. know you are talking apples and apples.
• Collect data to provide rules of thumb. Imagine being dropped off in a
• Challenge team members to defend Challenge Team Members to Defend, remote location. Being lost is a lot like
and justify their estimates. Justify their Estimates coming up with an estimate. You are not
• Emphasize the importance of estimating. Estimates are based largely on uncer- sure where you are, but you have to know
• Use more than one estimating method. tainty. The more information you can before you can figure out where to go.
find related to the task at hand, the less Imagine you reach in your pocket and
Provide Feedback on uncertainty is involved. Question and find a hand-held global positioning sys-
the Accuracy of the Estimates challenge the estimates, the source of the tem. Things are looking up. You hit a but-
Compare the actual effort hours data, and the assumptions. The adage of ton and find out where you are. However,
logged on each task to the current esti- garbage in, garbage out applies here. that estimate of your location is not based
mate. That way the team member knows on one satellite (a single source of data); it
where he or she is vs. where he or she Emphasize the Importance of Estimating is based on two or three, as your team’s
should be, and can make adjustments To paraphrase President Eisenhower, estimates should be. Estimating is like
accordingly. Do not discount the team estimates are nothing, estimating is every- putting together the pieces of a puzzle.
member’s perception of what work thing. Discourage the path of least resist- There is no answer, just indicators that
remains or how far along he or she is, but ance or the permanent sacrifice of accura- need to be analyzed and managed. See
do not rely on that information alone. It cy for a temporary reduction in effort. Table 2 for a summary of the general bias-
is also a good idea to collect data across Do not just settle for an estimate, but reduction strategies and examples.
several completed projects to use as start-
ing points for future estimates. In addi- Table 2. Summary of General Bias Reduction Strategies
tion, be sure to collect the original esti-
General Bias Reduction Strategies Example
mate as well as the actual effort required
Promote awareness Talk about the impact of biases on estimates
to complete the task [9].
Provide feedback on the accuracy of Track and report estimates to actuals for tasks
Collect Data to Provide Rules of Thumb estimates
In addition to the original estimate Collect data to provide “rules of Record estimates, actuals, assumptions, and
and actual hours logged, other data are
thumb” size measures for future reference
useful to provide a history of a project
Challenge team members to justify Document and question assumptions and
task. At a minimum collect data related to:
• The source of the estimate (best guess, their estimates sources
past projects, etc.). Use more than one estimating method Combine task level estimates and compare to
• The activity driver (number of installs, phase estimates
number of requirements, lines of code).
Emphasize the importance of Give team members the opportunity to research
• The assumptions used (especially skill
estimating their estimates – encourage estimating
level, resource dedication, requirements
volatility).

April 2000 http://www.stsc.hill.af.mil 23


Cost Estimation

Conclusion technology project managers should focus 4. Jones, Morgan D. The Thinker’s Toolkit,
Human biases influence and general- their efforts to reduce the negative conse- 1998, Random House, Inc.
ly have a negative impact on the develop- quences of bias in the software estimating 5. Simon, Hervert A. Psychology Review,
process. Our hope is that the suggestions Vol. 63, p. 129, 1956.
ment of task-level estimates. Although it
we have provided here can help you and 6 Lim, Lai-Huat., and Benbasat, Izak. A
is impossible to obviate these biases,
your team develop better task-level soft- Framework for Addressing Group
awareness, understanding, and the incor-
ware project estimates. Judgment Biases with Group Technology.
poration of bias-reduction strategies can Journal of Management Information
help mitigate their negative impact. Systems, Vol. 13, No. 3, Winter 96-97,
We have taken a step back to discuss References pp. 7-24.
what we feel to be the root cause of poor 1. Godson, Philip. To Err is Human, to 7. Bazerman, Max. H. Managerial Decision
task-level estimates using the expert judg- Estimate Divine. InformationWeek, Making, 2nd Ed., 1990. John Wiley &
ment approach during bottom-up esti- January 18 ,1999, pp. 65-72. Sons, Inc.
mating. The expert judgment method is 2. Kahneman, Daniel, and Tversky, Amos 8. Hammond, John. S. Keeney, Ralph. L.,
viable, and likely to remain one of the The Framing of Decisions and the Raiffa, Howard. The Hidden Traps in
most popular methods of developing soft- Psychology of Choice. Science, Vol. 211 Decision Making. Harvard Business
ware project estimates for some time. The No. 30, January 1981, pp. 453-458. Review, Sept.-Oct. 1998, pp. 47-58.
next step will be determining to what 3. Hughes, Robert T. Expert Judgement as 9. Demarco, Tom Controlling Software
an Estimating Method. Information and Projects, Yourdon Press Computing Series,
extent these biases impact software proj-
Software Technology, Vol. 38, 1996 pp. 1982.
ect estimates, and where information
67-75.
About the Authors George Dewey is President of Pathfinder Global
David Peeters is a project manager in the Group Inc. He is a certified Project Management
Information Services Division at American Family Professional, with more than 20 years of experi-
Insurance in Madison, Wis. He has more than 10 ence in corporate planning, project scheduling,
years experience in application development, proj- cost control, estimating, and management with
ect planning, and project management. Peeters has numerous consulting firms and client organiza-
a bachelor’s degree in computer information sys- tions. Dewey holds a bachelor’s degree in indus-
tems from Southwest State University and a mas- trial engineering from North Dakota State University and a mas-
ter’s of business administration from Illinois State University. ter’s of business administration from Virginia Polytechnic Institute.

David Peeters George Dewey


American Family Insurance Pathfinder Global Group Inc.
6000 American Parkway 5358B N. Lovers Lane #113
Madison, Wis. 53783 Milwaukee, Wis. 5225
Voice: 608-242-4100 ext. 31348 Voice: 713-827-4481
Fax: 608-243-6558 Fax: 414-464-3005
E-mail: DPeeters@AmFam.com E-mail: GDewey_PGGI@MSN.com

About the Authors of Does Calibration Improve Predictive Accuracy?, continued from page 17
Daniel V. Ferens is a corporate affordability officer David S. Christensen is an associate professor of
at the Air Force Research Laboratory at Wright- accounting at Southern Utah University. He was
Patterson AFB in Dayton, Ohio. He is also an the reader for the 10 theses described in this paper.
adjunct associate professor of software systems He received his doctorate degree in accounting
management at the Air Force Institute of from the University of Nebraska-Lincoln in 1987,
Technology (AFIT), Graduate School of Logistics and has published more than 50 articles in the
and Acquisition Management, at Wright-Patterson area of defense cost management. He taught cost
AFB, where he teaches courses in software estimation and software management topics at the Air Force Institute of Technology from
management in general. He was the advisor for the 10 theses 1987-97. He is a member of the American Accounting Association,
described in this paper, is an active member of the Society of Cost the Institute of Management Accountants, and the Society of Cost
Estimating and Analysis, and a lifetime member of the International Estimating and Analysis.
Society of Parametric Analysts. Ferens has a master’s degree in electri-
Southern Utah University
cal engineering from Rensselaer Polytechnic Institute, and a master’s College of Business
degree in business from the University of Northern Colorado. 351 West Center St.
AFRL/IFSD, Bldg 620 Cedar City, Utah 84720
2241 Avionics Circle, Room S1Z19 Voice: 435-865-8058
Wright-Patterson AFB, Ohio 45433-7334 Fax: 435-586-5493
Voice: 937-255-4429, ext. 3558 E-mail: ChristensenD@suu.edu
FAX 937-255-4511
E-mail: daniel.ferens@sn.wpafb.af.mil

24 CROSSTALK The Journal of Defense Software Engineering April 2000


Software Engineering Technology

Case Study: Automated Materiel Tracking System


The Automated Materiel Tracking System is a Web-based solution created for real-time tracking of more than 1 million materiel
pieces transferred between Air Force Materiel Command (AFMC) divisions and the Defense Logistics Agencies at Hill Air Force
Base, Utah; Tinker Air Force Base, Oklahoma; and Warner Robbins, Georgia. It works equally well on traditional and wireless
local area networks, and was created to replace the present manual data entry and paper-based tracking system, which was labor-
intensive, error-prone, and difficult and cumbersome to gather and extract reliable, useful data. The replacement system needed to
not only track where and when a material order was placed and delivered, but also act as an efficient data-sharing bridge between
intercompany departments. The new system had to provide full-database interfaces over a variety of operating systems and environ-
ments and dynamically manipulate legacy and newly gathered data utilizing existing standard office suite software. Data had to be
Web-accessible from mid-tier, desktop-level hardware as well as from the hand-held, radio frequency-based computers in the field.

The Automated Materiel Tracking AMTS Development Research The original paper-based manifest
System (AMTS) had to offer end users The project began as a way to track system required data entry of a 14-char-
what technology has always promised: all materiel movement activities between acter alphanumeric string package identi-
cost-effective, easy, real-time access to a AFMC divisions and a Defense Logistic fication code at each point along the
myriad of time-sensitive and detail-specif- Agency (DLA). It expanded to track the delivery route. This process was very
ic information. AMTS needed to func- actual delivery sites within each AFMC labor-intensive and prone to data entry
tion as the technology bridge between division. The AMTS’ expanded project errors. Quantitative metric data was diffi-
different operating systems and data scope included Hill Air Force Base with cult to compile and, once compiled, not
structures, and allow access to an incredi- approximately 30 delivery sites, handling always accurate or reliable. As a solution,
ble amount of data from multiple virtual approximately 700 transactions daily; hand-held laser bar code scanners became
sites and geographical locations with a Tinker Air Force Base with approximately an intrinsic portion of AMTS, signifi-
seamless interface, so the user need only 100 delivery sites, handling approximately cantly reducing data entry errors.
point and click to obtain needed infor- 2,000 transactions daily; and Warner AFMC and DLA staff members
mation. AMTS had to level the playing Robbins Air Force Base with approximate- identified specific features and benefits:
field by offering a way for simplistic, ly 150 delivery sites, handling approxi- • Conversion of several legacy data
complex and legacy systems to communi- mately 3,000 transactions daily. information systems.
cate with each other, allowing end users The original AMTS required distinc- • Point-and-click ease of use (for access,
to quickly and easily extract data as tions in individual process steps involved in query, input, assessment report
usable information employing various a materiel delivery transaction, including: functions).
hardware input and output options. • Receipt of the requisition by the DLA’s • Online help features.
Myron Anderson, OO-ALC/LGN, Depot Supply System. • Standardized, customizable tracking
sponsored the prototype of the AMTS • Material picking process. procedures and reporting functions.
solution, which was successfully imple- • Packing process. • Easy, low complexity updating
mented in the summer of 1999 at Hill • Transporting and shipping. procedures.
Air Force Base Within days of the proto- • Final receipt of the materiel by the • Lower costs and time required to
type deployment, end users were able to maintenance customer. manually investigate a shipping
provide empirical data on the timeliness The main challenge presented for the discrepancy.
of the receipt of the materiel. Collected project was to find a way to determine • Information protection on the client
date and time stamps could prove when and track if and at what time a materiel intranet with client-designated levels of
an item was ordered, readied for ship- order was involved in each step of a deliv- authorization.
ping, and delivered to a specific location. ery transaction. Although the materiel • Overall system security (to prevent
Part of the project’s success is its ability shipping and delivery movements were malicious and accidental breaches).
to access and manipulate Web-enabled tracked on paper manifests, discrepancies • Ability to utilize wireless portables for
information from the desktop, as well as were common regarding the requested use in tracking purposes and Internet
on handheld scanning units used in the delivery time and location vs. the actual access over a wireless LAN for dynamic
field via wireless local area network delivery time and location. Delivery data access and manipulation
(LAN) and Internet technologies. AMTS urgency specifications (needed within two • Designed to be as lightweight as
is projected to go online simultaneously or four hours, etc.) usually dictated the possible and work on a desktop
at Tinker and Warner Robbins in the final transportation cost of an item; the computer with performance as low as
first quarter of 2000. Although the proj- exact time between order acceptance and 486/33MHz with no appreciable
ect began for Air Force use only, the final delivery needed to be tracked in a performance hit.
Navy has expressed interest in imple- way that could satisfy shipping and receiv- Additional requested enhancements
menting AMTS at its depot locations. ing parties of the transaction. to the original system included tracking

April 2000 http://www.stsc.hill.af.mil 25


Software Engineering Technology

depot maintenance items returning to the also several versions of systems, each writ- The main interface of AMTS is Web-
supply system, clearing of in-transit ten in its own flavor of database language. enabled; if a user were to exit AMTS to
records, tracking of issues from other sup- Additionally, the legacy reports and query access another site, he or she could intro-
ply systems, and developing a series of capabilities were very elementary in nature duce a hostile application back into the
analysis tools to ensure peak performance due to the archaic database design struc- host network, posing security and data
and continual improvement. ture, and data access was difficult due to integrity risks. This was a major concern.
mainframe architecture. In essence, AFMC Again, AMTS utilizes any Web editor
AMTS Development Process had legacy data only, and it needed search- or browser to capture, query, and display
Bar Coding Challenges able, formattable, information, which information. The ability to use existing,
Untethered mobility is a major could be accessed and manipulated in real industry-standard software allows for
requirement for the project. Having a time, merged with new AMTS data, and quick, cost-effective use of AMTS at the
scanning terminal physically connected to used in statistical and accountability desktop level or in the field, regardless of
a LAN would severely hamper productivi- reports in standard existing commercial database interface.
ty. In addition to substantially decreasing off-the-shelf software, such as Microsoft
data entry errors, the portable computers’ Access, Excel, and PowerPoint.
wireless LAN technology complemented Although the AMTS prototype was
the AMTS solution. And, the wireless developed in Access and Excel, releases of The Internet
capability also allows for Internet access, the software are also available in two other
versions to meet existing standardized UNIX Oracle
using any Web browser (i.e. Netscape or NT Alpha Win 95
environments or preferences: Legacy
Explorer), and allows easy access to AMTS
information for immediate use in the field. • Oracle 8i with a Visual Basic interface.
Various Operating Systems, Data Warehouses, Environments
To begin a transaction within AMTS, • SQL with a Visual Basic interface.
a bar coded manifest is generated from the AMTS also uses Microsoft’s remote Bridging the Technology
DLA Depot Supply System. This physical scripting technique to create a dynamic, Not only does AMTS level the play-
manifest accompanies the materiel order as Web-based user interface. Utilizing their ing field and provide full database inter-
it flows through individual steps within Internet Information Server, Scripting face with any operating system environ-
the shipping and delivery process. At each Engines 5.0, and Internet Explorer 5.0, ment; it also acts as a technology bridge
step in the delivery process, the bar code is this technique allows for HTML-based between intercompany departments or
scanned and logged into AMTS to track Web pages to interact with the server distinct companies or entities.
its progress and timing, and the data are without having to reload the page with
then recorded with time and date stamp each transaction.
verifications. The system allows for data Remote scripting uses client-side Division or Company A Division or Company B

capture of the following data elements: VBScript, Jscript, or JavaScript on the


• Item(s). Web page for data verification and rapid During beta testing at Hill Air Force
• Shipping and delivery locations. data entry. The client-side script then Base, AFMC and DLA personnel com-
• Ordering and delivering parties. calls methods through Microsoft’s mented that the user-friendly graphical
• Receiver of goods. Remote Scripting Jscript Applet that interface design and online help functions
As data reliability was a major issue, refers to procedures and functions coded allowed them to sit down and begin
standard and specialized business and logic in server-side VBScript or JavaScript on using the AMTS software immediately. In
rules were implemented in the design to an Active Server Page. These procedures just a few days after implementation, end
ensure data integrity, with data elements and functions interact with server compo- users were able to extract data elements
routinely checked for appropriateness in nents via .dll files developed in Visual from their legacy systems and combine it
fields and string length. Additionally, Basic. The .dll files interface with the with current AMTS data and produce
tables were put in place to either allow or Oracle 8 database through ODBC con- reliability reports using existing off-the-
deny a transaction. For example, if an nectivity to access, update, and retrieve shelf database software.
item’s destination was scheduled for ware- data. Data are then returned to the .asp
house A but was delivered to warehouse B, page and manipulated further if necessary Conclusion
AMTS would produce an appropriate before being returned to the client-side AMTS is a synthesis of advanced
error message so the problem could be script on the .htm page where the data automated data input, proven database
investigated and corrected. can be dynamically displayed without technology, and malleability offered by a
reloading the entire page. The effect is a Web interface. All this is brought togeth-
Data Structure Challenges seamless, active user interface much like a er in a single application set that provides
Although the legacy information sys- Visual Basic form on an Internet browser. realistic information from reams of data.
tems were developed using leading-edge Due to security concerns with Java AMTS is available now and is in daily
technology at the time, they were original- and ActiveX applications’ open-ended use, supplying timely and reliable infor-
ly developed and populated before the environments, Visual Basic was designat- mation while providing cost-effective and
desktop PC became available. There were ed as AMTS’ programming language. hard empirical metrics.

26 CROSSTALK The Journal of Defense Software Engineering April 2000


About the Author Defense@E-Business
Jim Restel is working with Productive Data Systems on a Web-
enabled OO-ALC/LA Supervisor’s handbook and AMTS for April 24-25, 2000
OOALC/LGN. He is a Defense Infomation Systems Agency Crystal City Hilton
Information Warfare Staff Officer, and was the first reservist Arlington, Va.
assigned to Automated Systems Support and Information Security
Team (ASSIST)/DoD-Computer Emergency Response Team Distributed Networked Computing for a Secure Defense
(CERT). He is a technical advisor to the DoD Joint Web Risk
Assessment Cell. Restel has also been a Contingency Plans Staff
Officer at the Ogden ALC Readiness Center and a War Plans The Office of the Secretary of Defense
Officer in Germany and Texas. (OSD C3I) is hosting a Distributed Networked
Computing Forum called DEFENSE@E-BUSI-
Jim Restel, Systems Engineer NESS on April 24-25, 2000 in Arlington, Va. at
Productive Data Solutions the Crystal City Hilton. DEFENSE@E-BUSINESS
1572 N. Woodland Park Drive, Suite 510
is a two-day best practices forum specifically
Layton, Utah 84041
Voice: 801-779-2070/ designed for the needs of enterprise system
Fax: 801-779-2075 designers, architects, CIOs, and CTOs.
E-mail: jamesrestel@sprintmail.com Government IT leaders, integrators,
industry practitioners and industry groups will
collaborate in sharing lessons learned in devel-
oping secure and interoperable frameworks for
E-business. You are invited to participate in this
Sixth Annual Joint Aerospace Weapon Systems annual industry-specific forum and help usher
Support, Sensors, and Simulation Symposium in "Distributed Networked Computing for a
and Exhibition (JAWS S3) is scheduled for Secure Defense."
June 25-30 in San Antonio, Texas
Confirmed Speakers Include
Over the years, this event has Dr. V Garber, OSD C3I
addressed target acquisition, the dirty Dr. Susan Gragg, ICON
Amy Robinson, Discovery
battlefield, the electromagnetic spectrum
Paul Kendall, DOJ
and its impact on smart and brilliant Larry Cogut, PTO
weapons, and a host of other relevant General Anthony Bell, Air Force
topics. Tony Scott, GM
This year's conference will feature Terry Santaviccia, NSA
dialogue up and down the "defense
system RDT&E food chain" between the Registration and Hotel Information
labs and the theaters of operation. Register online at www.theotg.com
JAWS S3 will focus on the connectivity Registration fees are as follows:
of various levels of modeling and simula- Commercial $395
Government $295
tion and their connectivity in support of
Meals are an additional charge of $50
this mission. JAWS S3 2000 will feature Reserve your room at the Crystal City
senior-level decision-makers, who are in a Hilton by calling (703)418-6800
position to impact the directions on these
important defense issues, sharing their Conference information is available at
insights. www.theotg.com

— Jim O'Bryon, Deputy Director, Operational


Test and Evaluation/Live Fire Testing,
Office of the Secretary of Defense

Contact Dr. Asha Varma via electronic mail at


varmaa@navair.navy.mil for more information.

April 2000 http://www.stsc.hill.af.mil 27


Open Forum

Requirements Management as a Matter of Communication


Requirements work started as a dialogue between a vendor and an end user. Today this dialogue has been
complicated through introduction of marketing and acquisition personnel. This has led to introduction of
requirements specifications, but the need for a basic dialogue is still there since a specification cannot cap-
ture the increase of knowledge that will always take place during development. An efficient dialogue must
not only include requirements, but also stated missions, problem management and understandable for-
malism for the system’s structure and behavior. Further study of the dialogue shows that requirements
management must be managed as a process in parallel with processes for development and verification.

Once there was a buyer (end user) tions, with various reactions, such as: obvious problems. If you talk to people
who asked a producer, “Can you sell me – We can do it, but we do not have the involved in building military software sys-
this and that and what is your price?” time to analyze these requirements tems, for example, you will get some clear
Alternatively the producer could ask a until we get the contract proposal of opinions about what causes the problems:
buyer, “Do you want to buy this and that $40 million. The military end user: “These keyboard
at this price?” – This looks interesting, but these monkeys do not understand a thing
This was a long time ago, before the requirements need to be analyzed. about military needs. They do not even
days of complex systems, when both buy- Advance us $3 million to analyze the understand that you cannot put an M317
ers and producers understood the mean- requirements and build a first model backward on an A32!”
ing and the use of this and that. of the system. The programmer: “These brass hats do
Today, with complex systems, the sit- – We do not understand these require not understand a thing about their own
uation has become more complicated: ments, but we desperately need busi- systems. They try to express accuracy per-
• The buyer is not always the end user ness. We will accept a proposal of centage in inches.”
since the end user needs help from $20 million, with 30 percent in This may seem humorous, but as
acquirers and contractors who under- advance. long as the most important players in sys-
stand more about bargaining and con- • The acquirer interprets the acquisition tem production (the end user and the
tract issues than end users’ real needs. regulations and awards the contract to producer) talk about each other instead of
• The seller is not always the producer the third vendor as it had the best to each other, the prognosis for the sys-
since the producer needs to take help price. tem to be produced is not very good.
from marketing and sales people, who • A couple of years pass, and the vendor What is needed is dialogue and . . .
understand more about marketing tries to understand the requirements • Understanding—in a language, which
than about the product. and build a system in accordance with is common to everyone involved.
• Nobody involved really understands this understanding. During the process • Respect—for others’ professional com-
this and that, because the product sold of understanding, the vendor will find petence, with no name calling.
is a new, complex system, which was a number of inconsistencies, contradic- • Courage—to speak up whenever some-
not seen until delivery. tions and gaps in the requirements. one says or writes something you do
The basic questions above are still • The vendor runs out of money and not understand.
asked, but the complicated situation returns to the acquirer and says, “There
makes the answers somewhat hazy, leading are some problems with this contract Take Care of Knowledge Growth
to a situation where requirements specifi- that need to be sorted out. We need an If you start a dialogue between end
cations and management are needed. additional $20 million or we cannot users and producers in a complex system
complete it.” development project, it is inevitable that
Today’s Situation • The acquirer is left with two knowledge grows among those involved.
We are in a situation where too often alternatives: Knowledge growth may reveal fundamen-
a system project runs like this: 1. Not paying extra, not getting a tal glitches in the original specification
• The end user and the acquirer put system, and possibly causing the and/or the original proposed solution.
together a requirement specification. vendor to go bankrupt. If you have a fixed contract with
They get help from one or more 2. Paying extra and getting a system negotiated deliveries and payments, the
consultants to make it complete and that is probably late and not equal best thing about the situation is that it is a
correct. The result is a specification, to the true needs since the end real challenge to the contractors, who may
which requires considerable work just users’ understanding of needs has not understand there is a problem.
to be read and understood. grown during system development. What you need is a work principle,
• The acquirer asks for proposals based which anticipates that knowledge will
on the specification. The Need for Dialogue grow during system development and
• Several vendors look into the specifica- As previously discussed, there are that this new knowledge will change the

28 CROSSTALK The Journal of Defense Software Engineering April 2000


Requirements Management as a Matter of Communication

direction and content of the development effort. To find a con- supported by other objects used to complete the mission at hand.
tract form that considers growth of knowledge is the real chal- Original requirements are often stated in a requirements
lenge for contractors. specification. They may also be found in published standards and
regulations. Railway systems, for example, are heavily regulated.
Requirements on the Dialogue, Its Language To make it possible to work with the original requirements,
Besides the obvious need for mutual respect, the dialogue and you need a database. Many system engineering tools offer such a
its language require that: database where you can insert the requirements by copying and
• The dialogue must use a language that is readily understand- pasting from a document or even having the original document
able by end users and developers without much training parsed automatically for requirements. One can also use com-
in the language used. mon office tools like Word or Excel to get a low-cost require-
• The language used must be formal in order to avoid ments database.
misunderstandings. However, doing requirements insertion manually is strongly
• The language must be able to describe objects to be managed recommended in order to check uniqueness, testability, contra-
by the system under development. dictions, etc. These checks give valuable understanding of any
• The language must describe system performance precisely. problems pertaining to the original requirements.
• For critical systems, the dialogue must support discussion of Derived Requirements.
fault-tolerance issues, including unexpected operator behavior. As knowledge grows during development and design deci-
• The dialogue must include definition, discussion, and sions are taken, new requirements will surface. These are called
decision on problems, which will surface during development derived requirements, and should be put in the requirements
of any nontrivial system. database as derived.
• The dialogue must anticipate that knowledge will grow
during system development and allow this knowledge to Compositive Structure Allocation
influence requirements and design solutions. Provided the system under development is modeled as a
• The dialogue must accept that requirements management, compositive structure, allocation of requirements is simple. A
development, and verification are three parallel processes compositive structure is where the system is composed from
during a systems engineering effort. objects and connected through their interfaces in such a way
that it is always obvious which objects depend on other objects
Figure 1: Successive Deliveries with Parallel Processes to complete their action. The compositive structure makes it
possible to float requirements downward through the structure
until you find the object, which the requirement should be test-
Development
ed with. The requirement becomes the fulfillment requirement
Requirements of that object.
management Problem Management
Management of problems or issues is a very important part
Verification of the dialogue during system evolution. Problems inevitably sur-
with test face; most of them require a combined effort from end users and
developers to find a feasible solution.
This means that the dialogue must include problem man-
Elements of a Solution Alternative agement, including:
• Problem statements with category and priority.
As understood from the aforementioned reasoning, there is
• Problem headings and numbers.
more to requirements management than writing and accepting a
• Solution alternatives.
requirements specification. The following are some aspects to be
• Solution decisions.
used as the basis for necessary dialogue.
It is possible to manage this with an ordinary word proces-
Missions and Scenarios sor, but a tool that supports at least numbering of the problems
To the end user, a system’s missions are often so obvious that is preferable.
he does not even state them. Instead, he defines a set of scenarios
Understandable Formalism
that may or may not cover the complete mission space. On the
An end user who has expressed himself in clear English,
other hand, the developer will interpret the specification and cre-
with diagrams, would normally believe he has made himself
ate a number of use cases, which may or may not cover the mission
completely clear. That will often be the case, but it is amazing
space.
how such clear requirements are transformed into software and
To create understanding, it is necessary that the end user
hardware that does unanticipated things.
state the missions clearly as they constitute the foundation of
It is doubtful that you would try to make the end user
requirements and design. Scenarios can be added to clarify the
write formal specifications, since the necessary knowledge is
missions’ meaning. The missions are fundamental.
normally not available when the specification is written.
One way to express missions is as mission objects, which are
You could, however, provide a formal representation as part

April 2000 http://www.stsc.hill.af.mil 29


Open Forum

of the design effort with the objective to: Conclusions About the Author
1. Get a reconfirmation from the end user There are several aspects of require- Ingmar Ogren gradu-
that the specification is understood in ments management. The most important ated with an master’s
an acceptable way. issue is to establish a dialogue between degree in science
2. Give a detailed and formal basis for end users and producers of a system. (electronics) from the
the implementation work, be it hard- It has also been found that the Royal University of
ware, software, or an operator role. original requirements specification is only Technology in Stock-
One way to get this formal descrip- part of the information required for suc- holm in 1966; his
tion is to use formalized English, a sim- cessful requirements management. final project was connecting a fighter aircraft
plified language containing: training simulator with a sector operation
It is a necessity to make requirements
• Variables of defined types. center. He worked with the Swedish Defense
documentation understandable both to the
• Control structures. Material Administration and various con-
end user and to the developers concerned.
• Comments. sulting companies until 1989 in systems
Since the dialogue results in more engineering areas such as communications,
Test Specifications information than can be comfortably aircraft, and command and control. Ogren
Requirements are not much good managed manually, computer-based sup- chairs the board and holds majority owner-
unless they can be tested. If they are dis- port tools will be helpful. ship in two companies: Tofs, which produces
tributed to design objects as fulfillment Furthermore, there is a need to create and markets the Tool For Systems software,
requirements, you can design test cases work situations where everyone involved and Romet, which provides systems engi-
for each object to test that they are met. communicates and respects the profession- neering consulting with the Objects For
To ensure a correct set of test cases al competence of others involved. Systems method as its main product.
has been written, they should be reviewed Finally, you cannot do the require- Ingmar Ogren
by the end user. It is helpful if test cases ments in the beginning of a project, but Romet Corp.
are presented together with the require- you must establish a requirements man- Fridhem2
ments they are intended to verify. One agement process in parallel with processes SE-76040 Veddoe
for development and verification as visu- Sweden
way to do this is to produce a require-
alized in Figure 1. Internet: www.toolforsystems.com
ments/test case matrix.

Cost Estimation Web Sites


http://www.computer.org/tse/ts/s1997/e0485abs.htm newer approaches to Boehm's Constructive Cost Model (COCO-
This site connects to a paper written by members of the MO), such as function points and Estimation by Analogy.
Institute of Electrical and Electronics Engineers. The authors pro-
pose the use of a model they say considerably improves early pre- http://www.concentricmc.com/toolsreport/5-4-2tools1.html
diction over the Putnam model An analytic proof of the model's This tools list on cost estimation has related links to com-
improved performance also is demonstrated on simulated data. mercial tools, tools used by government departments, and tool
reviews and comparisons.
http://www.jsc.nasa.gov/bu2/PCEHHTML/pcehfc.htm
This online version of NASA's second edition of the http://www.cpsc.ucalgary.ca/~adi/621/essasy_outl.htm
Parametric Cost Estimating Handbook contains seven chapters, This site contains an essay on software size estimation,
and seven appendices, one of which is the parametric estimating based on references that include the STSC Metrics Service,
system checklist. Watts Humphrey, Capers Jones, and the International Function
Point Users Groups.
http://www.eng.hmc.edu/courses/E180b/software.htm
This is a listing of professional societies and their links http://cse.usc.edu/TechRpts/Papers/usccse98-506/usccse98-
relating to software cost estimation. Among the links are the 506.html
Software Technology Support Center, Defense Information This is a report from the Computer Science Department at
Systems Agency, NASA Software Engineering Laboratory, and the University of Southern California's Center for Software
the Software Engineering Institute. Engineering. The report appendices includes a COCOMO II
Cost Estimation Questionnaire and COCOMO II Delphi
http://renoir.csc.ncsu.edu/SP/HTML/cost.html Questionnaire, Defect Removal Model Behavioral Analysis.
The North Carolina State University Software Engineering
Resource Center site has a tutorial on software cost estimation, http://irb.cs.tu-berlin.de/~zuse/metrids/History_00.html
and tools. This is a history of software measurement by Horst Zuse.

http://xanadu.bmth.ac.uk/staff/kphalp/students/bsi/predict/tsld http://cse.usc.edu/COCOMOII/cost_bib.html
002.h tm This is a general bibliography on cost estimation, updated
This shows slides on software cost estimation, including in November.

30 CROSSTALK The Journal of Defense Software Engineering April 2000


BACK TALK

Give Us Your Information, State of the Software Industry


Get a Free Subscription You've heard the state of the union but what about the state of the software
Fill out and send this form to us
industry? Maybe we should tap the wit and wisdom of those who founded,
for a free subscription to CROSST ALK.
fathered, and led this nation. Here is my interview with George Washington,
OO-ALC/TISE
John Adams, Benjamin Franklin, Thomas Jefferson, and Abraham Lincoln.
7278 FOURTH STREET Q: Gentlemen, what are your impressions of this industry we call software?
HILL AFB, U TAH 84056 George: Software [Discipline] is the soul of an organization [army]. It makes
ATTN: HEATHER WINWARD small numbers formidable, procures success to the weak, and esteem to all.
Abe: I could as easily bail out the Potomac River with a teaspoon as attend to all
FAX : 801-777-8069 DSN: 777-8069 the details of software [the army].
Or use our online subscription request form at John: I am well aware of the toil and blood and treasure, that it will cost us to
http://www.stsc.hill.af.mil/request.asp maintain software [this Declaration].
FULL N AME:____________________________________ Q: What are your thoughts on the Microsoft Antitrust Suit?
Thomas: I am mortified to be told that, in the United States of America, the sale of
RANK OR GRADE:_______________________________
software [books] can become a subject of inquiry, and criminal inquiry, too.
P OSITION OR TITLE:_____________________________ Ben: A nerd [countryman] between two lawyers is like a fish between two cats.
ORGANIZATION OR COMPANY:____________________ Q: The Internet revolutionized the way we do business. Why is it so influential?
Thomas: We hold these truths to be self-evident: that all men are created equal; that
A DDRESS:______________________________________
they are endowed by their creator with certain unalienable rights; that
______________________________________ among these are life, liberty, and the pursuit of the Internet [happiness].
John: The Internet [Liberty], according to my metaphysics, is a self-determining power
BASE OR CITY:____________________ STATE:______
in an intellectual agent. It implies thought, choice and power.
ZIP:____________ Q: Do you have any advice for those climbing the ladder to CMM level five?
V OICE: COMMERCIAL______________________ Ben: Never confuse motion with action.
George: I know the CMM [patriotism] exists, and I know it has done much in the
DSN ______________________
present contest. But a great and lasting software organization [war] can
FAX : COMMERCIAL______________________ never be supported on this principle alone. It must be aided by a prospect of
interest, or some reward.
DSN ______________________
Ben: The CMM [U.S. Constitution] doesn't guarantee success [happiness], only the
E-MAIL: ___________________@___________________ pursuit of it. You have to catch up with it yourself.
THE FOLLOWING BACK ISSUES ARE AVAILABLE Q: Why is Dilbert the industry's poster boy?
John: In every society where software [property] exists there will ever be a struggle
(INDICATE THE MONTH (S) DESIRED.)
between management [rich] and engineer [poor].
M ARCH 1999_____________CONFIGURATION M GMT . Abe: Nearly all men can stand adversity, but if you want to test a man's character,
give him power.
A PRIL 1999______________SQA
Ben: To be humble to superiors is duty, to equals courtesy, to inferiors noble.
M AY 1999_______________CMM LEVEL 5 Q: Why are so many projects over budget and behind schedule?
JUNE 1999______________MEASURES AND METRICS Abe: We must not promise what we ought not, lest we be called on to perform what
we cannot.
JULY 1999_______________PROJECT MANAGEMENT
Ben: In short, the way to a successful project [wealth], if you desire it, is as plain as
A UGUST 1999____________S OFTWARE ACQUISITION the way to market. It depends chiefly on two words, industry and frugality;
that is, waste neither time nor money, but make the best use of both.
SEPTEMBER 1999_________D II COE
Q: What is your advice for software engineers?
OCTOBER 1999___________BEST P RACTICES
Thomas: Nothing gives one person so much advantage over another as to remain
NOVEMBER 1999_________CHANGE MANAGEMENT always cool and unruffled under all circumstances.
Abe: Always bear in mind that your own resolution to success is more important than
DECEMBER 1999_________SOFTWARE E VOLUTION
any other one thing.
JANUARY 2000___________L ESSONS LEARNED John: La molesse est douce, et sa suite est cruelle.
[Idleness is sweet, and its consequences are cruel.]
FEBRUARY 2000__________RISK M ANAGEMENT

M ARCH 2000_____________EDUCATION & TRAINING – Gary Petersen, Shim Enterprises

Editor’s Note: A continuation of this interview will appear in our May issue.

April 2000 http://www.stsc.hill.af.mil 31


Sponsored by the
Computer
Resources
Support
Improvement
Program
(CRSIP)

CrossTalk BULK RATE


Ogden ALC/TISE US POSTAGE PAID
Permit No. 481
7278 Fourth Street Cedarburg, WI
Hill AFB, UT 84056-5205

Anda mungkin juga menyukai