Description

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.

Key Features

* 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

Readership

Computer programmers and developers

Table of Contents

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

Details

No. of pages:
600
Language:
English
Copyright:
© 2003
Published:
Imprint:
Digital Press
eBook ISBN:
9780080503813
Print ISBN:
9781555583071

About the author

Robert Metzger

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.

Affiliations and Expertise

High Performance Computing Division, Hewlett-Packard Company

Reviews

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.