Synopses & Reviews
Software Exorcism: A Handbook for Debugging and Optimizing Legacy Code discusses sociological forces that make it difficult for a programmer to do their job. There are plenty of books that discuss "how-to-debug," but these books fall short by mistaking a symptom for the illness. This book takes an unflinching look at the true behavioral problems in software engineering. The brutally honest approach and accompanying illustrations from the dark ages make this book a fascinating read. This is a special title that will be both technically useful and visually stimulating to the reader.
l IT HAS BEEN DOCUMENTED that the maintenance phase of the typical software project's life cycle accounts for over 60 percent of the total cost incurred. For all the pomp and circumstance heaped upon the design phase, once the first release has been deployed, most of the resources will be spent on fixing bugs, adding new features, and fixing bugs resulting from those new features. The post-release development cycle of the average software application resembles that shown in Figure 1. 1. Don Coleman et al., "Using Metrics to Evaluate Software System Maintainability," IEEE Computer, August 1994, pp. 44-49 xv Introduction Debug Test Profile Optimize H H H t I Test Debug I Add feature H H t Figure 1. Post-release life cycle o/the average software application The post-release cycle can be initiated by the addition of a new feature or the submission of a bug report. In either case, unit and system tests are used to determine if the patched code is doing what it is supposed to. Once the paths of execution have been sufficiently stabilized, the application can be profiled to locate performance bottlenecks. A variety of optimization tech niques can then be implemented to increase execution speed and decrease memory footprint. As customers demand new features and report new bugs, the cycle will repeat itself and the application will evolve. Most books on software engineering focus intently on the phases of development leading up to the release of an application (e. g."
YOU HAVE TO OWN THIS BOOK
Software Exorcism: A Handbook for Debugging and Optimizing Legacy Code takes an unflinching, no bulls$ look at behavioral problems in the software engineering industry, shedding much-needed light on the social forces that make it difficult for programmers to do their job. Do you have a co-worker who perpetually writes bad code that you are forced to clean up? This is your book. While there are plenty of books on the market that cover debugging and short-term workarounds for bad code, Reverend Bill Blunden takes a revolutionary step beyond them by bringing our attention to the underlying illnesses that plague the software industry as a whole.
Further, Software Exorcism discusses tools and techniques for effective and aggressive debugging, gives optimization strategies that appeal to all levels of programmers, and presents in-depth treatments of technical issues with honest assessments that are not biased toward proprietary solutions.
Software Exorcism: A Handbook for Debugging and Optimizing Legacy Code discusses sociological forces that make it difficult for engineers to do their job. There are plenty of books that discuss how-to-debug, but these books fall short by mistaking a symptom for the illness. This book takes an unflinching look at true behavioral problems in software engineering. Technological issues are presented in a universal manner that can be appreciated by engineers working on any enterprise platform (not just the flavor of the month).
NOTE: The reader should be familiar with C and C]+.
Table of Contents
Chapter 1: Preventative Maintenance.- Chapter 2: Debugging Tactics.- Chapter 3: Understand the Problem.- Chapter 4: Debugger Internals.- Chapter 5: Optimization: Memory Footprint.- Chapter 6: Optimization: CPU Cycles.- Chapter 7: Final Word of Advice.