Programming is a complex process. Since it is done by human beings, errors may often occur. Programming errors are called bugs and the process of tracking them down and correcting them is called debugging. Some claim that in 1945, a dead moth caused a problem on relay number 70, panel F, of one of the first computers at Harvard, and the term bug has remained in use since.
Debugging is the routine process of locating and removing computer program bugs, errors or abnormalities, which is
methodically handled by software programmers via debugging tools. Debugging checks, detects and corrects errors (or "bugs")
to allow proper program operation, according to set specifications.
Normally, software contains errors and bugs, which are routinely removed. In the debugging process, complete software programs are regularly compiled and executed to identify and rectify issues. Large software programs, which contain millions of source code lines, are divided into small components. For efficiency, each component is debugged separately at first, followed by the program as a whole.