Layout Guidelines Indian Hill C Standards Style Guidelines Overview Unfortunately, professional programmers spend the majority of their time testing and debugging. Students tend to spend an even higher percentage than the professionals, so it is important that you learn to test and debug efficiently. A bug is any discrepancy between intended program behavior and the way it would actually work, under any feasible circumstance. This definition is both subjective, because it involves human intention, and hypothetical, in the sense that a bug can be there even if one of those circumstances hasn't yet occurred.
Bugs can enter at any stage of the software-development process.
These bugs are present before the first line of the program has been entered into the editor. Therefore, as a programmer, you should make sure that the specifications make sense and that you understand them. Also, you should attempt to understand your tools, both your programming language and the software written by others that is involved in your project. The later a bug is eradicated, the more harm it does. Obviously, failure of operational safety systems can result in loss of human life, but more often the result is project delays.