The software field has more than its fair share of survival titles. Survival books help us survive harsh deadlines, endure unsupportive bosses, improve poor software processes, suffer inadequate specifications, and stay in line during death marches. The software field is bleak indeed.
Surviving the Top Ten Challenges of Software Testing adds to the canon of survival books. It is not a software testing book per se. It contains no comprehensive discussion of black and white box testing, branch coverage, design of test cases and test plans; or the theoretical reasons for the futility of being able to test your software completely. These topics recede into the background, so the authors can focus on the people issues, "soft" issues that affect a tester's success even more.
The material is best when it speaks of how forces -- whether political, managerial or economic -- intrude upon the already difficult testing process. For instance, management doesn't appreciate the worth of testing, or delays it to the last minute. Testers have poor relationships with developers, use no automated tools for testing, or get no training.
Each chapter covers one of the following challenges:
10. Getting Trained in Testing
9. Building Relationships with Developers
8. Testing without Tools
7. Explaining Testing to Managers
6. Communicating with Customers and Users
5. Making Time for Testing
4. Testing What's Thrown Over the Wall
3. Hitting a Moving Target
2. Fighting a Lose/Lose Situation
1. Having to Say No
You'll enjoy this book if you enjoy the occasional business book. I've met programmers who seem impatient when a book doesn't help them immediately with their code. Shame. Dorset House publishes a number of books that walk the line between software development and people issues: Peopleware by Tom DeMarco and Timothy Lister, and books on software quality by the nonpareil Gerald M. Weinberg.
This is not a Microsoft book, and so lacks the nauseating insularity featured in many of their books about the software process. One of the authors, William Perry, has had extensive consulting experience and there are frequent anecdotes about companies (unnamed) who obviously aren't doing "business at the speed of thought."
Some useful features are the scenarios detailing state-of-the art practices and the self-assessment test to uncover weak areas in your current testing ability. These tools may help you fill in the background of the testing picture, but you'll need to supplement that with a testing text. That book will tell you what to test, this book will tell you what can go wrong.
I said this was a survival book. The book's message is ultimately positive: Testers -- with training, management support, adequate tools, and the right attitude -- will overcome; even with software complexity, quick time-to-market, and managerial ignorance against them. In a field as bleak as software, that's nice to know.
Electronic Review of Books