Why Programs Fail: A Guide to Systematic Debugging

Лицевая обложка
Morgan Kaufmann, 2006 - Всего страниц: 448
Debugging has undergone a sea change in recent years. Increasing processing power has allowed for the creation of much more sophisticated software tools for the analysis and debugging of programs. This in turn has allowed debugging to graduate from a black art to a systematic discipline. The time is right to summarize this new advanced approach to debugging. Why Programs Fail is about bugs in computer programs, how to reproduce them, how to find them, and how to fix them in such a way that they do not occur anymore. This is the first comprehensive book on systematic debugging and covers a wide range of tools and techniques ranging from hands-on observation to fully automated diagnoses, and includes instructions for building automated debuggers. This discussion is built upon a solid theory of how failures occur, rather than relying on seat-of-the-pants techniques, which are of little help with large software systems or to those learning to program. Andreas Zeller is well known in the programming community for developing the GNU Data Display Debugger (DDD), a tool that visualizes the data structures of a program while it is running. Over 250,000 users as well as all major software companies use DDD for software development. Zeller is also the creator of the popular "Ask Igor" website that will automatically debug programs over the web, and he regularly speaks and consults in the USA.
 

Отзывы - Написать отзыв

Не удалось найти ни одного отзыва.

Содержание

1 How Failures Come to Be
1
2 Tracking Problems
27
3 Making Programs Fail
53
4 Reproducing Problems
85
5 Simplifying Problems
117
6 Scientific Debugging
145
7 Deducing Errors
167
8 Observing Facts
199
11 Detecting Anomalies
295
12 Causes and Effects
317
13 Isolating Failure Causes
331
14 Isolating CauseEffect Chains
357
15 Fixing the Defect
387
Appendix Formal Definitions
407
Glossary
423
Bibliography
429

9 Tracking Origins
243
10 Asserting Expectations
257

Другие издания - Просмотреть все

Часто встречающиеся слова и выражения

Об авторе (2006)

Andreas Zeller is a full professor for Software Engineering at Saarland University in Saarbruecken, Germany. His research concerns the analysis of large software systems and their development process; his students are funded by companies like Google, Microsoft, or SAP. In 2010, Zeller was inducted as Fellow of the ACM for his contributions to automated debugging and mining software archives. In 2011, he received an ERC Advanced Grant, Europe's highest and most prestigious individual research grant, for work on specification mining and test case generation. His book "Why programs fail", the "standard reference on debugging", obtained the 2006 Software Development Jolt Productivity Award.

Библиографические данные