In computers, debugging is the process of locating and
fixing or bypassing bug (errors) in computer program code or the engineering
of a hardware device. To debug a program or hardware device is to start
with a problem, isolate the source of the problem, and then fix it. A user
of a program that does not know how to fix the problem may learn enough
about the problem to be able to avoid it until it is permanently fixed.
When someone says they've debugged a program or "worked the bugs out"
of a program, they imply that they fixed it so that the bugs no longer exist.
Debugging is a necessary process in almost any new software or hardware
development process, whether a commercial product or an enterprise or personal
application program. For complex products, debugging is done as the result
of the unit test for the smallest unit of a system, again at component test
when parts are brought together, again at system test when the product is
used with other existing products, and again during customer beta test,
when users try the product out in a real world situation. Because most computer
programs and many programmed hardware devices contain thousands of lines
of code, almost any new product is likely to contain a few bugs. Invariably,
the bugs in the functions that get most use are found and fixed first. An
early version of a program that has lots of bugs is referred to as "buggy."
Debugging tools help identify coding errors at various development stages.
Some programming language packages include a facility for checking the
code for errors as it is being written.
|