Columns
Book Review: 'Facts and Fallacies of Software Engineering'
- By Dan Romanchik
- February 28, 2003
In any profession or endeavor, there are certain
''facts'' that come to be accepted as true, no matter whether they really are or
not. You'll often hear someone say, ''Well, it's a known fact that __.'' The
problem is that these facts are only ''true'' because they were once accepted as
true; however, we often don't take the time to determine if they are still true.
And software engineering certainly has its share of these
situations.
There are also facts that have been forgotten. The software engineering field
is changing quickly, and it is easy for us to forget the lessons we have learned
along the way. When that happens, developers and managers must take time to
re-learn them.
In ''Facts and Fallacies of Software Engineering,'' author Robert Glass looks
at 55 facts and 10 fallacies. His goal is to get readers to not only recognize
the outlined facts as being true (and the fallacies as being false), but to get
them to act on this knowledge.
Glass takes the unique approach of first presenting a fact or fallacy, and
then discussing its importance (or lack thereof) and drawing on some of the
research in the field. He then discusses any controversy surrounding the
statement and gives the sources that back up his point of view.
To be honest, the facts section is not that exciting. While some of the
facts may be somewhat controversial, in general they're widely accepted. Take Fact
11, for example: ''Software estimates are rarely adjusted as the project
proceeds...'' Who is going to argue this point?
And Fact 13 asserts that ''There is a disconnect between management and
their programmers...'' What could be more obvious? To be fair, though, I should note
that the author followed this up with a good discussion of why this disconnect
exists in the first place, as well as what it means for software engineering in
general.
The fallacies section is much more interesting. The fallacies Glass tackles
include ''You can manage quality into a software product'' and ''Software needs
more methodologies.'' Pithy topics, aren't they?
I would have been happier with ''Facts and Fallacies of Software Engineering''
if Glass had written more about fallacies than facts. Even so, this book will
help you take a good, hard look at the way you think about software engineering,
and may even help you and your organization to produce better code.
''Facts and Fallacies of Software Engineering,'' by Robert L. Glass;
Addison-Wesley; Boston, 2003.
About the Author
Dan Romanchik is an engineering manager turned writer and Web developer. His current passion is amateur radio. You can read his amateur radio blog at www.blurty.com/~kb6nu.