40
| Section 5
the system level, the actions you might take would be very different – checking cables, trying different menu
settings – but the thinking is the same.
Too many times, we fall in love with our suppositions. We are quick to overtly or subconsciously assume the
problem being chased is due to lousy design, the stupid phone company, or the manager’s latest memo.
Armed with a healthy skeptical attitude, the basic philosophy of troubleshooting any system is to follow
these steps:
♦
Observe the behavior to find the apparent problem;
♦
Observe collateral behavior to gain as much information as possible about the problem;
♦
Round up the usual suspects;
♦
Generate a hypothesis;
♦
Generate an experiment to test the hypothesis;
♦
Fix the problem;
♦
Then, repeat, if necessary, to attack additional problems.
Let us now cover each step of the troubleshooting sequence in detail.
1.
Observe the behavior to find the apparent bug. In other words, determine the bug’s symptoms.
Remember always that many problems are subtle and exhibit themselves via a confusing set of
symptoms.
2.
Observe collateral behavior to gain as much information as possible about the problem.
Does the LCD’s problem correlate to an LED flashing? Try to avoid studying a problem in isolation,
but at the same time be wary of trying to fix too many at the same time. No one is smart enough
to deal with multiple problems all at once – unless they are all manifestations of something more
fundamental.
3.
Round up the usual suspects. At the system level, always suspect the menu set-up, the cables, the
Phone Company line setup, the punch-blocks, etc. At the component level, many computer prob-
lems stem from the same sources. Never, never, never forget to check Vcc!
4.
Generate a hypothesis. Before changing things, formulate a hypothesis about the cause of the
problem. You probably don’t have the information to do this without gathering more data.
Sometimes you will have no clue what the problem might be. Sometimes, when the pangs of despera-
tion set in, it’s worthwhile to try anything practically at random. You might find a bad plug, an
unconnected line, or something unexpected. Look around, but be always on the prowl for a working
hypothesis.
5.
Generate an experiment to test the hypothesis. Change the ISDN connection to a known good line;
call known good phone or hybrid at the other end; if long-distance doesn’t work, try a local call.
You should plan your tests to eliminate 50% of the possible problems in one test, if possible. Just keep
careful track so you know what you have eliminated.
6.
Fix the problem.
A Final Thought…
Constantly apply sanity checks. More than three decades ago, the Firesign Theater put out an album called
“Everything You Know is Wrong”. Use that as your guiding philosophy in troubleshooting any set-up. For
example, just because you checked the Telco line last night and it was fine does not mean that it’s OK now.
At 3:00 AM when the problems seem intractable and you are ready to give up engineering, remember that
the system has worked and will work. Never panic–you are smarter than it is.