Team LiB
Previous Section Next Section

Index

B

black box components
breaking down, 52
voice mail server as collection of, 49
bounce-back PRs, contents of, 219
bounce-backs
explanation of, 202
handling in workflows, 209
branch management, fixing bugs with, 242-248
branched files, merging, 247-248
branching code with SourceSafe, purpose of, 231
breakpoints. See also conditional breakpoints
firing when variables change, 186
setting on stored procedures, 137
browsers, debugging rendering of web pages in, 127
brute-force debugging, overview of, 35-37. See also cross-machine debugging; debugging; remote debugging
BSTR class, role in string bug example, 50
bugs. See also hard bugs
advisory when fixing in threaded code, 192
benefit of developers' and tech support's participation in, 153-154
benefits of guessing about, 38, 40
cell phone example, 43
choosing which area to examine first, 53-54
debugging at customer sites, 28
deductive reasoning applied to, 56
determining cause of, 55
determining likely sources of, 38
drilling deeper into, 53-54
establishing theories for, 39
finding point of failure for, 46
fixing with branch management, 242-248
gathering information about, 46-49
guessing about wisely, 41
hiding by removing features, 16
legacy C++ code printing corrupted values example, 42
making informed assumptions about, 43-45
noticing similarities between, 41-42
order of investigation of, 12-14
pasting links to documents in Outlook and Lotus Notes example, 42
permissions problems with, 40
preventing, 29
priority systems for, 214-215
proving location of, 21-24
reproducing, 39
reproducing when debugging remote customer sites, 145
reproducing with third-party tools, 151-152, 151-152
resulting from waiting on locks, 189
saving user's documents to root directory example, 40
searching PRs for clues about, 211
setting up test cases for, 41
string example, 50
telling stories about, 39
byte sizes of ASP.NET controls, analyzing, 125

Team LiB
Previous Section Next Section