Debugging by Thinking: A Multidisciplinary Approach
Debugging by Thinking: A Multi-Disciplinary Approach is the first book to apply the wisdom of six disciplineslogic, mathematics, psychology, safety analysis, computer science, and engineeringto the problem of debugging. It uses the methods of literary detectives such as Sherlock Holmes, the techniques of mathematical problem solving, the results of research into the cognitive psychology of human error, the root cause analyses of safety experts, the compiler analyses of computer science, and the processes of modern engineering to define a systematic approach to identifying and correcting software errors.
• Language Independent Methods: Examples are given in Java and C++ • Complete source code shows actual bugs, rather than contrived examples • Examples are accessible with no more knowledge than a course in Data Structures and Algorithms requires • A "thought process diary" shows how the author actually resolved the problems as they occurred
Introduction; Part I - The Way of the Detective: Sherlock Holmes; Lord Peter Wimsey; Professor Solomon; Case Studies I; Part II The Way of the Mathematician: Mathematical Problem Solving; Mathematical Strategies; Debugging Heuristics; Debugging Tactics; Case Studies II; Part III The Ways Less Traveled: The Way of the Safety Expert; The Way of the Psychologist; The Way of the Engineer; The Way of the Computer Scientist; Get Back to Work; Glossary; Root Cause Checklist; Bibliography: Software Development; Books about Thinking Skills; Books about Supporting Disciplines; Books about Debugging