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
Debugging by Thinking: A Multi-Disciplinary Approach is the first book to apply the wisdom of six disciplines—logic, mathematics, psychology, safety analysis, computer science, and engineering—to 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
Computer programmers and developers
- No. of pages:
- © Digital Press 2003
- 31st October 2003
- Digital Press
- eBook ISBN:
- Paperback ISBN:
Robert Metzger has worked for over 28 years as an applications programmer, systems programmer, manager of software training, manager of applications programmers, and manager of systems programmers, for several vendors of software and computer systems. He is currently a Senior Engineer in the High Performance Technical Computing Division of Hewlett-Packard Company. His professional interests include optimizing compilers, software development tools, and designing GUI applications. He has written books on computer science as well as numerous articles for popular magazines and academic journals on optimizing compilers, programming languages, and programming methodologies.
High Performance Computing Division, Hewlett-Packard Company