This book “Debug It!” by Paul Butcher provides a structured approach that will help programmers to identify and remove bugs in code. It is based on a four steps process: Reproduce, Diagnose, Fix, Reflect. For each activity, the author provides practical material on how to perform it. The second part of the book presents a higher vision of the debugging process and deal with topics like communicating with users or prioritizing bugs treatment. Finally, the book discusses special situations and the relationship between bugs and other areas of software development (source control, build, etc.).
The book is easy to read and the material is presented in a very structured way with different “viewpoints” that help to understand the content. Besides the main text where important concepts are put in evidence, real life cases shows how things happen in the real world. There are also some “Joe asks…” sections where the author answers pertinent questions on the current topic.
With my many years of experience in supporting and debugging large existing enterprise systems, I have to say that Paul Butcher summarize and structure all the knowledge (and more) that I have, sometimes painfully, accumulated during this activity. This is therefore an excellent book that I will recommend to everybody that is involved in software development in general and maintenance activities with legacy systems specifically.
Reference: “Debug It!”, Paul Butcher, Pragmatic Bookshelf, 214 pages, ISBN 978-1934356289