UID:
almafu_9959229855602883
Format:
1 online resource (594 p.)
Edition:
1st edition
ISBN:
9786611078003
,
9781281078001
,
128107800X
,
9780080503813
,
0080503810
Series Statement:
HP Technologies
Content:
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 soft
Note:
Description based upon print version of record.
,
Front Cover; Debugging by Thinking: A Multidisciplinary Approach; Copyright Page; Contents; Preface; Why I Wrote This Book; Who Should Read This Book; How to Read This Book; Typographical and Grammatical Conventions; Acknowledgments; Permissions; Chapter 1. Introduction; 1.1 The nature of the problem; 1.2 The six ways of thinking; 1.3 The two eras of software engineering; 1.4 Debugging and development methodologies; 1.5 Review; Chapter 2. Sherlock Holmes; 2.1 Preview; 2.2 Worldview of the detective; 2.3 Detective fiction; 2.4 The character of Sherlock Holmes
,
2.5 The methods of Sherlock Holmes2.6 Review; Chapter 3. Lord Peter Wimsey; 3.1 Preview; 3.2 The character of Lord Peter Wimsey; 3.3 The methods of Lord Peter Wimsey; 3.4 Review; Chapter 4. Professor Solomon; 4.1 Preview; 4.2 The methods of Professor Solomon; 4.3 Review; Chapter 5. Case Studies I; 5.1 Case Study I; Chapter 6. Mathematical Problem Solving; 6.1 Preview; 6.2 Worldview of the mathematician; 6.3 Polya and mathematical heuristics; 6.4 Mathematical proof texts; 6.5 Schoenfeld and mathematical problem solving; 6.6 Applying Schoenfeld to debugging; 6.7 Review
,
Chapter 7. Debugging Strategies7.1 Preview; 7.2 Evaluation mechanisms; 7.3 Binary search strategy; 7.4 Greedy search strategy; 7.5 Breadth-first search strategy; 7.6 Depth-first search strategy; 7.7 Program slice strategy; 7.8 Deductive-analysis strategy; 7.9 Inductive-analysis strategy; 7.10 Choosing a strategy; 7.11 Review; Chapter 8. Debugging Heuristics; 8.1 Preview; 8.2 Stabilize the program; 8.3 Create a test case; 8.4 Reduce the required input; 8.5 Categorize the problem; 8.6 Describe the problem; 8.7 Explain the problem to someone else; 8.8 Recall a similar problem; 8.9 Draw a diagram
,
8.10 Choose a hypothesis from historical data8.11 Review; Chapter 9. Debugging Tactics; 9.1 Preview; 9.2 Read the source code; 9.3 Write a unit test; 9.4 Display variable values; 9.5 Display execution messages; 9.6 Display procedure arguments; 9.7 Generate a flow trace; 9.8 Generate a variable snapshot; 9.9 Generate memory dump; 9.10 Force variable value; 9.11 Assert assumptions; 9.12 Check data structures; 9.13 Display data structures; 9.14 Use runtime subscript checking; 9.15 Use runtime stack checking; 9.16 Use runtime heap checking; 9.17 Initialize global variables
,
9.18 Initialize local variables9.19 Change storage class; 9.20 Use a different compiler; 9.21 Compile to assembly code; 9.22 Execute on a different platform; 9.23 Review; Chapter 10. Case Studies II; 10.1 Case Study 2; 10.2 Case Study 3; Chapter 11. The Way of the Safety Expert; 11.1 Preview; 11.2 Worldview of the safety expert; 11.3 Root-cause analysis; 11.4 Software-defect root causes; 11.5 Cause-and-event charting; 11.6 Fault-tree analysis; 11.7 Review; Chapter 12. The Way of the Psychologist; 12.1 Preview; 12.2 Worldview of the psychologist; 12.3 Models of human cognition
,
12.4 Defining and classifying human error
,
English
Additional Edition:
ISBN 9781555583071
Additional Edition:
ISBN 1555583075
Language:
English
Bookmarklink