black box components
voice mail server as collection of,
49
bounce-back PRs, contents of,
219
branch management, fixing bugs with,
242-248
branching code with SourceSafe, purpose of,
231
firing when variables change,
186
setting on stored procedures,
137
browsers, debugging rendering of web pages in,
127
BSTR class, role in string bug example,
50
advisory when fixing in threaded code,
192
benefit of developers' and tech support's participation in,
153-154
benefits of guessing about,
38,
40
choosing which area to examine first,
53-54
debugging at customer sites,
28
deductive reasoning applied to,
56
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
proving location of,
21-24
reproducing when debugging remote customer sites,
145
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
telling stories about,
39
byte sizes of ASP.NET controls, analyzing,
125