You are on page 1of 8

from the editor

E d i t o r- i n - c h i e f : S t e v e M c C o n n e l l , C o n s t r u x S o f t w a r e , s o f t w a r e @ c o n s t r u x . c o m

The Best Influences


on Software
Engineering
Steve McConnell

I
wanted to get some perspec- Michael Fagan formalized Weinberg’s
tive on the best influences ideas into a well-defined review technique
we’ve seen during software called Fagan inspections. The data in sup-
engineering’s first 50 years. port of the quality, cost, and schedule
After drafting an initial list impact of inspections is overwhelming.
of influences, I turned to our They are an indispensable part of engi-
advisory boards. IEEE Software neering high-quality software. I propose
has active editorial and industrial Fagan inspections as one of the 10 best
advisory boards comprising lead- influences.
ing experts from around the Chris Ebert: Inspections are surely a key
world. What follows is our dis- topic, and with the right instrumentation
cussion of the best influences on software and training they are one of the most pow-
engineering. As you will see, we had some erful techniques for defect detection. They
significant differences of opinion! are both effective and efficient, especially
Any list like this is bound to contain sig- for upfront activities. In addition to large-
nificant subjectivity. As board member scale applications, we are applying them
Marten Thomas pointed out, this discussion to smaller applications and incremental
might not tell us much about software engi- development.
neering’s prospects, but it does say a lot Terry Bollinger: I think inspections merit
about our attitudes at the beginning of the inclusion in this list. They work, they help
21st century. foster broader understanding and learning,
and for the most part they do lead to better
Reviews and Inspections code. They can also be abused—for
One of the great breakthroughs in soft- instance, in cases where people become
ware engineering was Gerald Weinberg’s indifferent to the skill set of the review team
concept of egoless programming—the (“we reviewed it, so it must be right”), or
idea that no matter how smart a pro- when they don’t bother with testing because
grammer is, reviews will be beneficial. they are so sure of their inspection process.

10 IEEE SOFTWARE January/ February 2000 Copyright © 2000 Steven C. McConnell. All Rights Reserved.
FROM THE EDITOR

Robert Cochran: I keeps quality levels high,


would go more basic The Best Influences on Software Engineering and helps team morale
than this. Reviews of all ■ Reviews and Inspections because everyone can see
types are a major posi- ■ Information Hiding that the software works.
tive influence. Yes, Fagan Dave Card: I wouldn’t
■ Incremental Development
inspection is one of the include daily builds as one
most useful members of ■ User Involvement of the best influences. I see it
this class, but I would ■ Automated Revision Control as a brute-force method of
put the class of inspec- ■ Development Using the Internet integration. It’s kind of like
tions and reviews in the having a housing contractor
■ Programming Languages Hall of Fame:
list rather than a specific confirm that each window
Fortran, Cobol, Turbo Pascal, Visual Basic
example. is the right size by holding it
■ Capability Maturity Model for Software up to a hole in the wall, and
Information Hiding ■ Object-Oriented Programming then chiseling or filling the
David Parnas’s 25-year- ■ Component-Based Development hole as necessary to make
old concept of informa- the window fit.
■ Metrics and Measurement
tion hiding is one of the Terry: I disagree with
seminal ideas in soft- Dave. Incremental integra-
ware engineering—the tion, including daily builds,
idea that good design consists of Chris: Surely agreed; it’s far too represents a retreat from the earlier,
identifying design secrets that a pro- often missing in current designs. ultimately naive view that everything
gram’s classes, modules, functions, could be defined with mathematical
and even variables and named con- Incremental Development precision up front, and all the goodies
stants should hide from other parts The software engineering literature of would flow from that. Such philoso-
of the program. Whereas other the 1970s was full of horror stories of phies overlooked the inherent limita-
design approaches focus tions of the human brain at
on notations for express- foreseeing all the implica-
ing design ideas, informa- tions of a complex set of
tion hiding provides in- requirements.
sight into how to come If you really want to see
up with good design ideas the daily-build approach in
in the first place. Infor- ferocious action, take a look
mation hiding is at the at the open-source commu-
foundation of both struc- nity. When things get busy
tured and object-oriented there, releases might even be
design. In an age when hours apart. Such fast releas-
buzzword methodologies es also reduce the human
often occupy center stage, Terry Bollinger Chris Ebert setup time for returning to
information hiding is a the context of each problem.
technique with real value. software meltdowns during the inte- Steve McConnell: At a level of
Terry: Hear! Hear! To me this gration phase. Components were abstraction higher than daily builds,
technique has done more for real, brought together for the first time Barry Boehm’s spiral life-cycle model
bottom-line software quality than during system integration. So many is an incremental approach that
almost anything else in software engi- mistaken or misunderstood interface applies to the whole project. The
neering. I find it worrisome that folks assumptions were exposed at the model’s focus on regular risk reduc-
sometimes confuse it with abstrac- same time that debugging a nest of tion is appealing, but the model is so
tion and other concepts that don’t intertwined assumptions became all complicated that only experts can
enforce the rigor of real information but impossible. Incremental develop- use it. I’d give it the prize for the
hiding. I find it even more worrisome ment and integration approaches most complicated and least under-
that some process-oriented method- have virtually eliminated code-level stood software engineering diagram
ologies focus so much on bug count- integration problems on modern soft- of the 20th century. Unlike daily
ing that they are oblivious to why a ware projects. Of these incremental builds, it seems like a great incremen-
program with good information hid- approaches, the daily build is the best tal-development approach that has
ing is enormously easier to debug— example of a real-world approach had little impact in practice.
and has fewer bugs to begin with— that works. It minimizes integration Terry: I disagree. The daily build
than one that lacks pervasive use of risk, provides steady evidence of you touted earlier really is closer to
this concept. progress to project stakeholders, the spiral model than to traditional

January/February 2000 IEEE SOFTWARE 11


FROM THE EDITOR

phased design. And where do you Karl Wiegers: Use cases, sensibly
think interface prototyping goes? It applied, provide a powerful mecha-
EDITOR-IN-CHIEF:
surely is not in the original phased- nism for understanding user require-
Steve McConnell development models of the ’70s and ments and building systems that sat-
10662 Los Vaqueros Circle ’80s. Barry Boehm noticed that real- isfy them.
Los Alamitos, CA 90720-1314
software@construx.com ity was closer to the daily-build Steve Mellor: Whatever techniques
model than to the rigidly defined are applied, we need to be clear about
EDITORS-IN-CHIEF EMERITUS:
Carl Chang, Univ. of Illinois, Chicago phased models of that era. context. When we talk about use
Alan M. Davis, Omni-Vista Chris: I too disagree with Steve’s cases, for example, they can be very
EDITORIAL BOARD
conclusion. The spiral-model diagram helpful in a context where there is lit-
was too complex because it tried to tle communication about the problem.
Maarten Boasson, Hollandse Signaalapparaten
Terry Bollinger, The MITRE Corp.
put everything into one Use cases put the soft-
Andy Bytheway, Univ. of the Western Cape picture. But the combi- ware folks face to face
David Card, Software Productivity Consortium nation of risk manage- with the clients and
Larry Constantine, Constantine & Lockwood ment and increments users, and put them
Christof Ebert, Alcatel Telecom that the spiral model in a position to learn
Robert L. Glass, Computing Trends
proposes are highly the vocabulary of the
Lawrence D. Graham, Christensen, O’Connor,
Johnson, and Kindness successful when blend- problem. But use cases
Natalia Juristo, Universidad Politécnica de Madrid ed together. are appalling at help-
Warren Keuffel Robert L. Glass: In ing to create an appro-
Karen Mackey, Cisco Systems my experience, the spi- priate set of abstrac-
Brian Lawrence, Coyote Valley Software
ral model is the ap- tions. Should you use
Tomoo Matsubara, Matsubara Consulting
proach that most good use cases? Depends on
Nancy Mead, Software Engineering Institute
Stephen Mellor, Project Technology
software people have Dave Card your context.
Pradip Srimani, Colorado State Univ. always used; they just Terry: I think these
Wolfgang Strigel, Software Productivity Centre didn’t call it that. Good programmers techniques tie back to the value of
Jeffrey M. Voas, Reliable Software never did straight waterfall; they incremental development. And this
Technologies Corp.
might have pretended they did to includes all forms of prototyping—
Karl E. Wiegers, Process Impact
appease management, but in fact there communication protocols, subsystem
INDUSTRY ADVISORY BOARD was always a mix of “design, code, interfaces, and even the method inter-
Robert Cochran, Catalyst Software test a little” thrown in along the way. faces to an object class. There’s a lot of
Annie Kuntzmann-Combelles, Objectif Technologie merit to trying out different approach-
Enrique Draier, Netsystem SA User Involvement es to discover what you missed, mis-
Eric Horvitz, Microsoft
We’ve seen tremendous develop- understood, or got out of proportion.
Dehua Ju, ASTI Shanghai
Donna Kasperson, Science Applications International
ments in the past several years in
Günter Koch, Austrian Research Centers techniques that bring users more Automated Revision Control
Wojtek Kozaczynski, Rational Software Corp. into the software product design Automated revision control takes
Masao Matsumoto, Univ. of Tsukuba process. Techniques such as joint care of mountains of housekeeping
Susan Mickel, BoldFish application development sessions, details associated with team pro-
Deependra Moitra, Lucent Technologies, India user interface prototyping, and use gramming projects. In the Mythical
Melissa Murphy, Sandia National Lab
cases engage users with product Man-Month in 1975, Fred Brooks’
Kiyoh Nakamura, Fujitsu
Grant Rule, Guild of Independent Function
concepts in ways that paper speci- “surgical team” made use of a
Point Analysts fications simply cannot. Require- librarian. Today, software handles
Chandra Shekaran, Microsoft ments problems are usually listed that person’s function. The efficien-
Martyn Thomas, Praxis as the number-one cause of soft- cies achieved by today’s program-
M A G A Z I N E O P E R AT I O N S C O M M I T T E E ware project failure; these tech- ming teams would be inconceivable
Gul Agha (chair), William Everett (vice chair), niques go a long way toward elim- without automated revision control.
James H. Aylor, Jean Bacon, Thomas J. (Tim) inating requirements problems. Terry: The promise is high, and
Bergin, Wushow Chou, George V. Cybenko,
William I. Grosky, Steve McConnell, Daniel E. Wolfgang Strigel: I think user the fundamental concept is solid. I
O’Leary, Ken Sakamura, Munindar P. Singh, James interface prototyping is especially don’t think our associated methods
J. Thomas, Yervant Zorian
important because it addresses the for organizing large numbers of pro-
P U B L I C AT I O N S B O A R D fundamental engineering concept of grammers efficiently are good
Sallie Sheppard (vice president), Gul Agha (MOC building models. No architect would enough yet to make the value of this
chair), Jon Butler (TOC chair), Ron Williams (IEEE
Representative), Jake Aggarwal, Alan Clements, build a bridge without a model to see technology really shine. For example,
Alberto del Bimbo, Dante Del Corso, Richard if those who pay for it will like it. It’s the really interesting code still tends
Eckhouse, William Everett, Francine Lau, Dave
Pessel, Sorel Reisman, Zhiwei Xu really simple: if you plan on ignoring to get written by relatively small
the customer, don’t prototype. teams for whom the benefits of auto-

12 IEEE SOFTWARE January/ February 2000


D E PA R T M E N T E D I T O R S
FROM THE EDITOR
Bookshelf: Warren Keuffel, wkeuffel@computer.org
Culture at Work: Karen Mackey, Cisco Systems,
kmackey@best.com
mated revision control are much less significant influence on software
Loyal Opposition: Robert Glass, Computing Trends,
conspicuous—for example, many of development in the past 40 years. As rglass@indiana.edu
the open-source efforts. the first widely used third-genera- Manager: Don Reifer, dreifer@sprintmail.com
Perhaps the most important soft- tion language, Fortran was influen- Quality Time: Jeffrey Voas, Reliable Software
Technologies Corp., jmvoas@rstcorp.com
ware engineering innovations of the tial, at least symbolically. Cobol was
Soapbox: Tomoo Matsubara, Matsubara Consulting,
next century will come not from arguably at least as influential in matsu@computer.org
more intensive methods for making practice. Originally developed by Softlaw: Larry Graham, Christensen, O"Connor,
people more organized, but rather the US Defense Department for Johnson, & Kindness, graham@cojk.com
from learning to automate the over- business use, most practitioners STAFF
all software process in ways that we have long forgotten Cobol’s military
Managing Editor
do not currently understand very origins. Cobol has recently come Dale C. Strok
well, but that revolve around the under attack as being responsible for dstrok@computer.org
overall ability of a computer to Y2K problems, but let’s get serious: Group Managing Editor
remember, communicate, and orga- Y2K is only a Cobol problem Dick Price

nize data far better than people do. because so much code has been writ- Associate Editor
Dennis Taylor
I think this kind of innovation will ten in Cobol. Does anyone really
News Editor
be closely related to methods such as think programmers would have Crystal Chweh
automated revision control. Our cur- used four-digit instead of two-digit Staff Editor
rent planning tools, which too often years if they had been coding in Jenny Ferrero

just try to automate paper methods, Fortran instead of Cobol? Assistant Editors
Cheryl Baltes and Shani Murray
certainly don’t seem to be there yet. Chris: The real added value of
Magazine Assistant
Cobol was to make large IT systems Dawn Craig
Development Using the feasible and maintainable, and many software@computer.org
Internet of those are still running. The “prob- Art Director
Toni Van Buskirk
What we’ve seen with open-source lems” with Cobol weren’t really about
Cover Illustration
development is just the beginning of Cobol. The problems were with the Dirk Hagner
collaborative efforts made possible programmers who happened to be Technical Illustrator
by the Internet. The using Cobol. Today, Alex Torres
potential this creates many of these same Production Artist
Carmen Flores-Garvey
for effective, geo- programmers are using
Executive Director and Chief Executive Officer
graphically distrib- or abusing Java and T. Michael Elliott
uted computing is C++, and the legacy- Publisher
truly mind-boggling. problems discussion Angela Burgess
Terry: Internet in- will surely come back Membership/Circulation
Marketing Manager
teractions let interest- someday with regard Georgann Carter
ing sorts of interac- to those languages. Advertising Manager
tions happen, and not [IEEE Software’s Patricia Garvey
just with source code. I next issue (March/ Advertising Assistant
think this one is impor- April 2000) will focus Debbie Sims

tant simply because it Robert Glass on recent develop- CONTRIBUTING EDITORS

isn’t very easy to pre- ments and future di- Dale Adams, Tom Centrella, David Clark,
dict—for example, it might lead to rections in Cobol. —Editor] Greg Goth, Ware Myers, Keri Schreiner
approaches that are neither propri- Turbo Pascal, the first integrated edi-
etary nor open source, but that are tor-compiler-debugger, forever changed
Editorial: All submissions are subject to editing for clarity,
effective in ways we don’t fully foresee computer programming. Prior to Turbo style, and space. Unless otherwise stated, bylined articles and
or understand yet. Pascal, compilation was done on disk, departments, as well as product and service descriptions,
reflect the author’s or firm’s opinion. Inclusion in IEEE
Wolfgang: Yes, although it stands separate from editing. To check his Software does not necessarily constitute endorsement by the
on the foundation of best practices in work, a programmer had to exit his IEEE or the IEEE Computer Society.

software design and development of editing environment, compile the pro- To Submit: Send 2 electronic versions (1 word-processed
and 1 postscript or PDF) of articles to Magazine Assistant, IEEE
the 20th century, it brings new gram, and check the results. Turbo Software, 10662 Los Vaqueros Circle, PO Box 3014, Los
aspects that will change the face of Pascal put the editor, compiler, and Alamitos, CA 90720-1314; software@computer.org. Articles
must be original and not exceed 5,400 words including figures
software development as we know it. debugger all in memory at the same and tables, which count for 200 words each.
time. Making compile-link-execute
Programming Languages Hall cycles almost instantaneous shortened
of Fame: Fortran, Cobol, the feedback loop between program-
Turbo Pascal, Visual Basic mers’ creating code and executing the
A few specific technologies have had code. Programmers became able to

January/February 2000 IEEE SOFTWARE 13


FROM THE EDITOR

experiment in code more effectively Capability Maturity Model for Overall, I believe the CMM has
than they could in older, more batch-ori- Software (SW-CMM) helped a lot. However, I think it does
ented environments. Quick turnaround The Software Engineering Institute’s have some harmful side effects that
cycles paved the way for effective code- SW-CMM is one of the few branded can be mitigated if the community is
focused development approaches, such methodologies that has had any willing to recognize them. Moreover,
as those in use at Microsoft and touted effect on typical software organiza- there are limits to how far it can take
by Extreme Programming advocates. tions. More than 1,000 organiza- us into the 21st century.
Terry: I think the tions and 5,000 pro- Nancy Mead: I don’t think the
real message here is jects have undergone CMM per se is significant—it’s the
not Turbo Pascal, but SW-CMM assessment, recognition of a need for standard-
rather the inception and dozens of organi- ized software processes, whatever
of truly integrated zations have produced they might be.
programming envir- mountains of com- Robert: Standardization is key.
onments. With that pelling data on the Another example is the recent effort
broadening (integrated effectiveness of process to put a good structure on rapid
environments, with improvement programs application development using the
Turbo Pascal as the based on the SW-CMM Dynamic Systems Development
first commercial exam- model. Method. DSDM is not well known in
ple), I would agree that Dave: I would con- the US, but interest is rapidly grow-
this merits inclusion in Wolfgang Strigel sider the software ing on this side of the Atlantic.
the top 10. CMM to be both a best And don’t forget the many thou-
Chris: Aside from better coding, influence and a dead end. Steve has sands who have used ISO 9000 as
such programming environments explained the case for a best influence. their SPI framework. I would say that
also made the incremental approaches However, I have also seen a lot of gam- SPI using any of the recognized frame-
that we discussed earlier feasible. ing and misuse of the CMM that led to works (or indeed a mixture of them) is
Academics and researchers talked wasted and counterproductive activity. where benefit is gained. They give a
about components and reuse for Even worse, it has spawned a growth structure and coherence to SPI activity.
decades, and nothing happened. industry in CMMs for all kinds of Terry: I do think that some concept
Within 18 months of Visual Basic’s t h i n g s — a p p a r e n t l y of process improve-
release, a thriving market for prebuilt based on the premise ment probably belongs
components had sprung from nothing. that if your model in this list, including
The direct-manipulation, drag-and- has five levels it must both ISO 9001-3 and
drop, point-and-click programming be right, regardless maybe the first three
interface was a revolutionary advance. of whether you have levels of CMM. But I
Chris: Even more relevant is the any real knowledge of disagree that the CMM
single measure of speed of penetra- the subject matter. taken as a whole has
tion—VB is one of the fastest grow- It reminds me of been one of the most
ing languages and is still going the novel, Hitchhiker’s positive influences of
strong. Only Java has passed it in Guide to the Galaxy, the 20th century.
speed of adoption. where the answer was Wolfgang: This one
Terry: VB provided the benefits 42—except that now Nancy Mead can really stir the
promised (but for the most part it’s 5. emotions. Despite its
never really delivered) by object-ori- One of the unanticipated effects of simplicity, the main problem with the
ented programming, mainly by keep- the CMM has been to make the effec- CMM is its rigid and ignorant inter-
ing the “visual” part of the object tive body of software engineering pretation. The concept itself is sort of
paradigm and largely dispensing knowledge much shallower. My a truism. I believe the biggest accom-
with the complex conversion of expectation was that an organization plishment of CMM is in the Software
objects into linguistic constructions. that was found to be weak in risk Engineering Institute’s success in
VB is limited, but within those limits management, for example, would read marketing the concept. It certainly
it has had a profound impact on soft- one of the many good books on risk has raised the awareness within
ware development and has made management or get help from an thousands of companies about
meaningful development possible for expert in the field. Instead, many (if “good software engineering prac-
a much larger group of people than not most) organizations take the four tices.” Universities were woefully
would have been possible without it. pages in the CMM that describe slow in recognizing software engi-
Kudos to Microsoft for this one— risk management and repackage it as neering as a topic, and the SEI
and that’s coming from a guy who four to six pages of their local process jumped into the fray, educating not
coedited the Linux issue! documentation. only new grads but old professionals

14 IEEE SOFTWARE January/ February 2000


FROM THE EDITOR

as well. Its problems get aggravated information hiding, and not from Terry: I really like Smalltalk-style
with people reading too much into it. all the other accoutrements of OO. OO, and I’m optimistic about Java.
The grading is questionable and not OO is a badly mixed metaphor. It The real killer was C++, which mixed
the most relevant part of the CMM. tries to play on the visual abilities of the metaphors in a truly horrible fashion
I disagree that ISO 9000-3 would human brain to organize objects in a and positively encouraged old C pro-
merit a similar place in the hall of space, but then almost immediately grammers to create classes with a few
fame. After all, with ISO 9000-3 you converts that over into an awful set of hundred methods in them, to make a
can diligently do all the wrong syntax constructions that don’t map system “object oriented.” Argh! So
things, and you will be compliant as well at all into the linguistic parts of maybe the culprit here is more C++
long as you do them diligently. our brains. The result, than OO, and there’s
It may be time to throw away the surprise, surprise, is an still hope for object-ori-
old CMM model and come up with ugly mix that is usual- ented programming.
an update that takes into account the ly neither particularly
experiences from the last 10 years. I intuitive nor as power- Component-Based
don’t think we need a new model or ful as it was originally Development
more models; just taking the cob- touted. Has anyone Component-based
webs out of the current one will carry done any really deep development has held
us for the next 10 years. inheritance hierarchies out much promise, but
Chris: Despite the argument about lately? And got them aside from a few limited
ISO 9000, the CMM is definitely the to actually work with- successes, it seems to be
standard that sets the pace. At present, out ending up putting shaping up as another
it is the framework that allows bench- in more effort than it Steve Mellor idea that works better
marking and that contributes most to would have taken to in the laboratory than
solving software engineering crises— simply do the whole thing over again? in the real world. Component-version
just by defining standard terminology Chris: Agreed, because many peo- incompatibilities have given rise to
and condensing industry best practices. ple haven’t taken the time to under- massive setup-program headaches,
This is my personal favorite “best stand OO completely before they unpredictable interactions among
influence.” design with it. In a short time, it has programs, de-installation problems,
created more harm to systems than so- and a need for utilities that restore all
Object-Oriented Programming called “bad Cobol programming.” the components on a person’s com-
Object-oriented programming of- Takaya Ishida: I think it is puter to “last known good state.”
fered great improve- questionable whether This is one of the best prospects for
ments in “natural” Cobol and OO should the 21st century, but probably not for
design and program- be on the 10 Best List the 20th.
ming. After the initial or 10 Worst List. It Robert: The reuse (component-
hype faded, practi- seems to me that based) movement might have trouble
tioners were some- Cobol and other popu- getting off the ground, but some
times left with pro- lar high-level proce- related developments have shown
gramming technolo- dural languages should great promise. Design patterns are a
gies that increased be blamed for most of powerful medium for capturing,
complexity, provided the current problems expressing, and packaging design
only marginal pro- in programming. It is concepts and artifacts—design com-
ductivity gains, pro- so easy to program in ponents, if you will. The patterns
duced unmaintain- Karl Wiegers such languages that movement looks to be the successful
able code, and could even novice program- end-run around the reuse movement.
only be used by experts. In the final mers can write large programs—but Similarly, we’ve been very successful
analysis, the real benefit of OO pro- the result is often poorly structured. in domain generalization. Compiler-
gramming is probably not objects With OO languages such as Smalltalk, building was perhaps the first such
per se, but the ability to aggregate programmers take pains to learn how success many decades ago.
programming concepts into larger to program, and the result is well- Steve: Yes, 30 years ago a person
chunks than subroutines or func- structured programs. Having pro- could get a PhD just for writing a
tions. This is certainly one of the gramming approaches that can be compiler, but today compiler-building
strongest influences. Is it one of the used only by experts may be a good domain generalization has been such
best? idea. Our past attitude of easy-going a success that compiler building is
Terry: Whatever real benefits peo- programming is a major cause of the usually taken for granted.
ple got from OO, they mostly came present software crisis, including the Robert: There have been too few
from the use of traditional Parnas-style Y2K issue. successes other than compiler build-

January/February 2000 IEEE SOFTWARE 15


FROM THE EDITOR

ing. I would assert that the enterprise get this lesson again every year. ware engineering is as necessary as
resource planning system, such as Dave: I would include metrics as a theoretic foundations are in other
SAP’s, is the most recent and most suc- dead end, but I also would include engineering disciplines to avoid soft-
cessful example of building general- measurement in the list of top ware development approaches that
purpose software to handle a whole prospects for the 21st century. The are built on nothing more than gut
domain—in this case, back-office busi- word “metrics” doesn’t appear in feeling.
ness systems. most dictionaries as a Wolfgang: Regardless of terminol-
Terry: The compo- noun—and that is a ogy (metrics or measurements),
nents area has indeed good indication of how I believe that this should become
been a major head- poorly measurement is another top contender for the next
ache, but it’s sort of an understood and why it century. How can we claim to be pro-
ongoing problem, not is consequently mis- fessionals if nobody can measure
one that has been fully used in our discipline. some basic facts about the develop-
recognized as a dead The ability to express ment activity? How can we manage
end. Visual Basic is an things meaningfully in activities that cannot be measured?
example of how com- numbers is an essential Measurement failed in this century
ponent-based design component of any not because it is a bad concept, but
can work if the envi- engineering discipline, because our profession is still in its
ronment is sufficiently Robert Cochran so I don’t see how infancy. There is no other engineering
validated ahead of we can discipline that would
time. have software engineer- not measure product
The fully generic “anything from ing in the 21st century characteristics. And
anybody” model is much more prob- without measurement. there is no other man-
lematic, and is almost certainly be- Deependra Moitra: ufacturing activity that
yond the real state of the art—versus Any problems we have would not try to mea-
the marketing state of the art, which in this area are not with sure output over input
generally is a few years to a few cen- metrics but with the (which equals produc-
turies more “advanced” than the real metrics community. We tivity). The concept of
state of the art. cannot blame an idea, measurement isn’t at
Chris: Work on components helped concept, or approach if fault; the problem is
to see the direction toward frame- people mess up using it. that consumers have
works, reuse, and I can’t Maarten Boasson become too tolerant of
pattern languages. So imagine faulty software and a
it is a useful interme- performing my job with- red-hot marketplace in which ineffi-
diate step. Thinking out metrics, especially in ciencies do not cause companies to
in components is still a geographically distrib- fail. If there were an oversupply of
a good design princi- uted development mode. software developers, we would see a
ple and entirely in Terry: Metrics are a lot more measurement applied to opti-
line with the point problem. Our founda- mize the process.
made earlier about tions are badly off in
information hiding. this area, because we Summary
keep trying to apply Maarten Boasson: The greatest
Metrics and variations of the met- problem in the software engineering
Measurement Takaya Ishida rics that worked well community is the tendency to think
Metrics and mea- for manufacturing to that a new idea will solve all prob-
surement have the potential to revo- the highly creative design problems of lems. This tendency is so strong that
lutionize software engineering. In software. It’s a lot like trying to teach previously solved problems are for-
the few instances in which they have people how to write like Shakespeare gotten as soon as a new idea gains
been used effectively (NASA’s by having them constantly check their some support, and consequently
Software Engineering Lab and a words for spelling errors. problems are re-solved in the new
few other organizations), the Chris: Entirely true, but still met- style. This is a perfect recipe for pre-
insights that well-defined numbers rics as such are of big value for the venting progress!
can provide have been amazingly practical management of teams and This behavior suggests (to me, at
useful. Powerful as they can be, soft- projects. We should see metrics as a least) that the field of software engi-
ware process measurements aren’t tool (or means). Metrics usage has neering, and even computer science,
the end; they’re the means to the end. matured dramatically over the past is very immature. This is not any-
The metrics community seems to for- 10 years. A metrics discipline in soft- body’s fault, but the simple result of

16 IEEE SOFTWARE January/ February 2000


FROM THE EDITOR

the very short time that computing Third, we should reconsider the
has been around. Compared to other metric for academic success. The
fields, we really are hardly out of the “publish or perish” paradigm guar-
nursing stage. What is collectively antees that large amounts of garbage
our fault, however, is the religious
fanaticism with which we protect our
will be published. Also, the really
interesting results in multidiscipli-
How to
current beliefs against perceived
attacks from people doing things dif-
ferently. Such behavior probably also
nary work are practically unpublish-
able, due to the strong segmentation
of the field, with superexperts in
Reach Us
existed during the early years of epsilon-width fields. Writers
other disciplines, so why don’t we Fourth, we (IEEE Software, for For detailed information on submitting articles,
learn from their example? example) should continuously stress write for our Editorial Guidelines (software@
The problems in developing today’s that problems have not yet been computer.org), or access computer.org/
and tomorrow’s systems are over- solved, that innovation is essential, software/author.htm.
whelming; they require many different and that all claims to having invented
types of problems to be solved. No THE solution are simply wrong.
Letters to the Editor
other scientific or engineering disci-
Send letters to
pline relies on a single technique for
addressing problems, so why are we, Maarten Boasson is head of the Applied Systems Letters Editor
Research Department at Hollandse Signaalapparaten in Hengelo, IEEE Software
so-called professional engineers (and The Netherlands, and professor of industrial complex computer
computer scientists), stupid enough to systems at the University of Amsterdam; boasson@signaal.nl. 10662 Los Vaqueros Circle
think that our field is fundamentally Los Alamitos, CA 90720
Terry Bollinger is an information systems engineer at cbaltes@computer.org
different in this respect? The MITRE Corporation in Reston, Virginia; terry@mitre.org.
So, what do we need to do? First, Please provide an e-mail address or
industrial management has to under- Robert Cochran is the managing director of Catalyst
Software and director of the Center for Software Engineering at daytime phone number with your letter.
stand that software engineering is not Dublin City University in Dublin, Ireland; robert@cse.dcu.ie.
an engineering discipline like so many On the Web
others (yet) and that standards, meth- Dave Card is the technical lead for software measurement
at the Software Productivity Consortium in Virginia; card@ Access computer.org/software for information
ods, and tools are all likely to be software.org. about IEEE Software.
wrong (once we really understand
what developing software means). Chris Ebert is the software process manager of Alcatel’s
Switching and Routing Division in Antwerp, Belgium; Subscription Change of Address
This implies that software develop- christof.ebert@alcatel.be. Send change-of-address requests for magazine
ment is still much more of an art than subscriptions to address.change@ieee.org.
management believes it to be and Robert Glass is president of Computing Trends, based in
Bloomington, Indiana, publisher–editor of The Software Be sure to specify IEEE Software.
that, therefore, only the best and the Practitioner, and editor-in-chief of the Journal of Systems and
brightest should be allowed to develop Software; rglass@indiana.edu.
Membership Change of Address
systems of more than trivial complex-
Takaya Ishida is senior chief researcher of corporate Send change-of-address requests for the mem-
ity. A side effect of such an approach research and development at Mitsubishi Electric Corporation in bership directory to directory.updates@
would be a significant reduction in Tokyo, Japan; takaya.ishida@hq.melco.co.jp.
computer.org.
effort needed for their development.
Nancy Mead is team leader for survivable network
Second, we should carry out real analysis in the Networked Survivable Systems Program at the Missing or Damaged Copies
experiments with novel and alterna- Software Engineering Institute, Carnegie Mellon University, in
Pittsburgh; nrm@sei.cmu.edu. If you are missing an issue or you received
tive approaches to software develop-
a damaged copy, contact membership@
ment, possibly as a cooperative effort Steve Mellor is the founder of Project Technology, based computer.org.
between industry and academia. in Tucson, Arizona, and codeveloper with Sally Shlaer of the OO
These should not be simplified, typi- Analysis and Recursive Design method; steve@projtech.com.
cal academic problems, but real-life Reprints of Articles
Deependra Moitra is general manager of quality at
systems. Such experiments will have the India Product Realization Center of Lucent Technologies in
For price information or to order reprints, send
to be performed in parallel with the Bangalore, India; dmoitra@lucent.com. e-mail to software@computer.org or fax +1
traditional development of the same 714 821 4010.
Wolfgang Strigel is founder and president of the
systems; indeed, no manager will Software Productivity Centre in Vancouver, Canada; wstrigel@
accept the risk involved otherwise spc.ca. Reprint Permission
(although I would guess the risk is To obtain permission to reprint an article, con-
Karl E. Wiegers is principal consultant with Process
generally smaller than the traditional Impact, a software process consulting and education company in tact William Hagen, IEEE Copyrights and Trade-
approach). We should analyze and Rochester, New York; kwiegers@acm.org. marks Manager, at whagen@ieee.org.
widely publish the results—which- The views expressed are the participants’ and do not necessarily
ever way they turn out. reflect the views of their organizations.

January/February 2000 IEEE SOFTWARE 17

You might also like