I started in this business as a programmer, in 1983. I like programming. But I like trouble even more— that is to say, I am interested in how and why things go wrong in complex systems. My feelings and my work have evolved over the years toward a humanist vision of technology. I had the good fortune to be a student of Gerald M. Weinberg. My work is a continuation and elaboration of his, in many ways. I have dedicated my career to exploring how craftsmanship develops in technical people, to learning better ways of coaching and training in the area of software testing, and to sharing what I’ve learned with anyone who’s interested.
I am a co-founder of the Context-Driven School of software testing thought. This is a community of practice, as well as a paradigm for thinking about testing. CDT focuses on skills and problem-solving, rather than rote formalization of technical work. I created the first-ever class in Exploratory Testing. I created the Rapid Software Testing methodology.
I have written a couple of books (Lessons Learned in Software Testing, and Secrets of a Buccaneer-Scholar).
I work with project teams and individual engineers, coaching them in testing and testability advocacy, among other things. I figure out how to test things that are very hard to test, yet must work properly. I also assist in product risk analysis and implementation of computer-supported testing.
I have also been an expert witness on court cases that involve the need to test software products (such as in patent infringement or trade secret cases), or to analyze test processes.
Employment HistoryPublished Works
Books
- Secrets of a Buccaneer-Scholar: How Self-Education and the Pursuit of Passion Can Lead to a Lifetime of Success, (author), Scribner, 10/08.
- Lessons Learned in Software Testing: A Context-Driven Approach, (co-author), Wiley, 12/01.
- Amplifying Your Effectiveness: Collected Papers, (senior editor and contributor), Dorset House, 8/00.
- My work is also included or mentioned in a number of other books about software development and testing. Some notable examples are Software Engineering: a Practitioner’s Approach, by Roger Pressman, The Rise and Resurrection of the American Programmer and Death March, both by Ed Yourdon, Adaptive Software Development, by Jim Highsmith, Visual Test 6 Bible and Visual Test 4.0, both by Tom Arnold, and Visual Basic for Testers, by Mary Sweeney.
Articles
(Most of my work since 2004 is on blogs, videos, or embedded in my classes.)
- Testing is Not Test Cases: Toward a Performance Culture, Testing Trapeze (magazine), 02/14.
- The Rise of the Intellectual Indian Tester (Parts 1 & 2), Tea Time For Testers (magazine), 12/13, 01/14
- Pairwise Testing: A Best Practice that Isn’t, Pacific Northwest Software Quality Conference, 2004.
- Inside the Mind of the Exploratory Tester, article in Software Testing and Quality Engineering Magazine, 11/03.
- Troubleshooting Risk-Based Testing, article in Software Testing and Quality Engineering Magazine, 05/03.
- Value Without Numbers, article in Software Testing and Quality Engineering Magazine, 07/02.
- Testing Testers, article in StickyMinds.com 06/17/02.
- Becoming an Expert Tester, article in StickyMinds.com, 1/9/02.
- PANDEMIC II: Malicious Intrusion- Global Attack Scenario. Co-authored with Tom DeMarco. Cutter Trends Council Opinion, Vol. 2, No. 12.
- Boost Your Testing Super-Powers, article in StickyMinds.com, 11/21/01.
- PANDEMIC I: Malicious Disruption (the Halloween Scenario). Co-authored with Tom DeMarco. Cutter Trends Council Opinion, Vol. 2, No. 10.
- Explaining Testing to THEM, article in Software Testing and Quality Engineering Magazine, 10/01.
- How Much is Enough?, article in StickyMinds.com, 9/12/01.
- Where Does Exploratory Testing Fit?, article in StickyMinds.com, 7/23/01.
- The Dark Side of Component Use, Cutter Trends Council Opinion, Vol. 2, No. 5, 6/01.
- How Do You Spell Testing?, article in StickyMinds.com, 5/14/01.
- Exploratory Testing and the Planning Myth, article in StickyMinds.com, 3/19/01.
- What is Exploratory Testing?, article in StickyMinds.com, 1/29/01.
- Skill over Process, Cutter Trends Council Opinion, Vol. 1, No. 8, 11/00.
- The Role of Testing in the E-Business Era, Cutter IT Journal, 4/00.
- What Software Reality is Really About, IEEE Computer, 12/99.
- James Bach on Risk-Based Testing, Software Testing and Quality Engineering magazine, 11/99.
- Risk and Requirements-Based Testing, IEEE Computer, 6/99.
- Reframing Requirements, IEEE Computer, 2/99.
- Good Practice Hunting, Cutter IT Journal, 2/99.
- A Framework for Good Enough Testing, IEEE Computer, 10/98.
- Highs and Lows of Change Control, IEEE Computer, 8/98.
- Plans, Lies, and Videotape, IEEE Computer, 6/98.
- Certification is Discrimination, Cutter IT Journal, 5/98.
- Tripos: a Cognitive Model of Software Testing, www.stlabs.com, 10/97.
- Good Enough Quality: Beyond the Buzzword, IEEE Computer, 8/97.
- Working with Testers, article in Software Development, 3/97.
- The Hard Road from Methods to Practice, IEEE Computer, 2/97.
- Useful Attributes of an Automated Test Suite, appendix in Visual Test 4.0, by Tom Arnold.
- Software Testability Factors, section included in Software Engineering: A Practitioner’s Approach, 4th ed., by Roger Pressman.
- Internet Software Testing, article in American Programmer, 12/96.
- Test Automation Snake Oil, article in Windows Technical Journal, 10/96.
- Training Testers, article in Software Development, 9/96.
- Microdynamics of Process Evolution, IEEE Computer, 2/98.
- Process Compliance vs. Problem-Solving, article in Application Development Trends, 3/96.
- Utilitarians at the Gate, Information Week, 2/12/96 [article featuring my work at ST Labs].
- The Challenge of Good Enough Software, American Programmer, 10/95. This paper is also referenced frequently in Ed Yourdon’s book Rise and Resurrection of the American Programmer.
- Software Quality on a Shoestring, article in Soft-letter, 1/17/95.
- Enough about Process, What We Need are Heroes, article in IEEE Software, March 1995.
- Tools of the Trade [column discussing my work at Borland], Software Development Magazine, 12/94, 1/95.
- Document Management as a Prerequisite to Quality Assurance, co-authored with Peter Aiken, 1990 IEEE Models and Media in Human-Computer Interaction Conference.
Seminars
(Below is from 2001 and prior… since then I have lost track.)
- Rapid Software Testing, 3-day seminar offered through Satisfice, Inc. (’01-present).
- Black Box Software Testing, 5-day seminar co-presented with Cem Kaner, offered through Satisfice, Inc. (July ’01).
- Exploratory Testing (ver 2.0), 2-day seminar offered through SQE and Satisfice, Inc. (’99-present).
- Heuristic Software Testing, 1-day tutorial at STAR East, 4/00.
- Test Techniques, 2-day seminar offered through ST Labs (’96-’97).
- Exploratory Testing (ver 1.0), 2-day seminar offered through ST Labs (’96-’97).
- Market-Driven Software Testing, 2-day seminar offered through ST Labs (’95-’96).
Keynote Speeches
(Below is from 2001 and prior… since then I have lost track.)
- No Best Practices! How to Think about Methodology, keynote at STAR West ’01, 11/01.
- Software Engineering Coming of Age? Not Yet, keynote at the Conference on Software Engineering Education and Training, 3/00.
- Testing in the Next 10 Years, keynote, 16th Intl. Conference on Software Testing, 6/99.
- A Low Tech Testing Dashboard, keynote, STAR East ’99, 5/99.
- Debated Dr. Bill Curtis on the subject of software processes before 1300 attendees of SEPG ’95.
- Beyond Requirements and Traceability: Testing for big bugs in medical devices, organized by AddQ, Sweden, 3/12.
- Buccaneer-Tester: Winning Your Reputation, Swiss Testing Day Conference, Switzerland, 3/12.
Other Presentations
(Below is from 2002 and prior… since then I have lost track.)
- Writing Testing Lessons, presentation at Boston SPIN, 1/02.
- How Expert Testers Think, presentation at Rational Users Conference, 7/01.
- High Accountability Exploratory Testing, presentation at 14th International Quality Week, 5/01.
- Exploratory Testing in Pairs, presentation at STAR East, 4/01.
- Getting the Most out of Exploratory Testing, presentation at STAR West Conference, 10/00.
- The Heuristic Approach to Software Testing, presentation at 13th International Software Quality Week, 5/00.
- Evaluating Test Suites, presentation at 13th International Software Quality Week, 5/00.
- How to Explain Testing To Anybody, presentation at STAR East, 4/00.
- Helping Developers Help Testers, Pacific Northwest Software Quality Conference, 10/97.
- Test Automation Snake Oil, 14th Intl. Conference on Software Testing, 6/97.
- How to Be an Expert Tester, presentation at 10th International Software Quality Week, 5/97.
- Good Enough Software, presentations at SD’97, STAR’97, and the University of Colorado Distinguished Speaker series, ’97.
- Risk Management for Software Projects, Northwest Developers Conference, 7/96.
- Teaching Testers: Obstacles and Ideas, 9th International Software Quality Week, ’96.
- Managing the Software Test Team, presented at Software Development ’96.
- Why Software Projects Need Heroes, presented at the 3rd Annual Software Practitioners Conference, ’96.
- Market-Driven Software Engineering, Cadence Distinguished Speaker Series. 10/95.
- Debated Herb Krasner and Roger Pressman on the subject of the CMM at the Software World conference 10/95.
- What Every Developer Needs to Know About Testing, presented at PC Database Summit, 8/95.
- The Pros and Cons of Outsourced Software Testing, 8th International Software Quality Week, ’95.
- The Immaturity of the CMM, American Programmer, 9/94.
- Process Evolution in a Mad World, 7th Intl. Quality Week, ’94.
- Barbarian Risk Management, 3rd Intl. Conference on Software Quality, ’93.
- The Persistence of Ad Hoc Testing, 10th Intl. Conference on Software Testing, ’93.
- Organic Quality Assurance, Apple Computer internal videotape, ’90.
- Critical Thinking For Software Testers, Full-day Tutorial given at Swiss Testing Day Conference, Switzerland, 3/12.
Career Highlights