Software Quality Assurance
There are very few really good books on
Software Quality Assurance. Most are either focused on the processes used to
test and deploy applications software or they use technique that are no longer
valid in the Object Oriented development paradigm. The following are some
books that never seem to go out of style as well as some that actually deal
with OO programming for modern management techniques.
Quality Software Project Management, Robert Furtell, Donald Shafer,
and Linda Shafer, Prentice Hall, 2001.
Object–Oriented Systems: Models, Patterns, and Tools, Robert Binder,
Addison Wesley, 1999.
Testing Object–Oriented Systems: Models,
Patterns, and Tools, Robert V. Binder, Addison Wesley, 2000. This 1200
page book has every paper and thought Binder has ever had on the subject of
OO testing. Anyone claiming to be an OO designer must have some sense of how
to test the stuff once it is built. This is the one stop shopping
place for OO testing. Many of the papers found in the IEEE CS books (below)
are repeated in this text. After you get through this text no OO pseudo–guru
will ever be able to fool you again by saying "OO development doesn't need as
much testing and planning for testing." Have him (or her) look to Binder for
Software Process Improvement: Practical Guidelines for Business Success,
Sami Zahran, Addison Wesley, 1998. There are many good books around on CMM
and process improvement. This book is one of the better ones, since it has
practical guidelines (just like the title says) on how to improve the
Software , Paul C. Clements, Editor,
MacMillan Technical Publishing, 1999. This is one of those survey books, but
actually has some useful articles in it. Many of the contributors are well
known names. Some of the articles are light weight, but some have new ideas
Testing Object–Oriented Software, Edited by David C. Kung, Pei
Hsia, and Jerry Gao, IEEE Computer Society, 1998. This is a
collection of important papers on the testing of OO systems. Many of the
papers are esoteric and may not be applicable to pedestrian development
processes. The one paper worth having is "Design for Testability in
Object–Oriented Systems," Robert V. Binder, Communications of the
ACM, 37(9), pp. 87–101. September 1994. Every OO developer and
SQA engineer should have read this paper if they are going to call
themselves professionals. ACM Members can download the paper from the
Digital Library, but this book has a nice facsimile of the original
Dare to be Excellent: Case Studies of Software Engineering Practices
That Worked, Edited by Alka Jarvis and Linda Hayes, Prentice Hall, 1999.
This is one of the books that is an eye opener for everyone struggling
with SQA problems. It contains case studies from successful SQA initiatives.
Each case study is presented in the same format. The cases are real world
examples of what to do. Some of the results are too formal for everyone, but
every case has some pearl of wisdom. This is one of those must
read books that will change the way you think about SQA.
Inroads to Software Quality: A "How To" Guide with Toolkit,
Alka Jarvis and Vern J. Crandall, Prentice Hall, 1997. This is the book referenced
most often by the case study participates in the book above.
Management, Volume 1: Systems Thinking, Gerald M. Weinberg. These
are classic books and may be out of print. Weinberg is an important
contributor to the field of software paradigms and the people that work in
them. These are hidden treasures, and are not often referenced. I don't know
why because they are the foundation of many of today's modern
"methods" and prove there is nothing new under the sun.
Management, Volume 2: First Order Measurement, Gerald M. Weinberg.
Management, Volume 3: Congruent Action, Gerald M. Weinberg.
Management, Volume 4: Anticipating Change, Gerald M. Weinberg.
link to Software Quality's book page is http://www.swquality.com/users/pustaver/Books/books.htm.