While studying engineering and softwares we know about the debugging process.But still many of us doesn't know the full process of debugging.Here i discussed some of the points which i know about debugging.
Debugging:
"Debugging" occurs as a consequence of successful testing.When atest case uncovers an error,debugging is the process that results in the removal of the error.
Debugging Process:
Debugging is not testing,but always occurs as a consequence of testing.Some general guidelines for effective Debugging are follows:
1.Debugging requires a thorough understanding of the program design.
2.Debugging sometimes even require full redesign of the system.
3.One must be very clear of the possibility that any one error correction nay introduce new errors.
Normally Debugging process begins with execution of atest case.The results are assessed and a comparison is made between excepted and actual performance.This process always have one or two outcomes.
The outcomes are
1.The cause will be found and corrected
2.The cause will not be found
Generally,Debugging refers to the process of error corrections.As the consequences of an error increase,the amount of pressure to find the cause also increases.
Approaches for Debugging:
Debugging has one overriding objective to find and correct the cause of a software error.The objective is realized by a combination of systematic evaluation,intuition and sometimes luck.
Normally three categories for debugging approaches may be proposed.
1.Brute Force
2.Back Tracking
3.Cause Elimination
Debugging is a straight forward application of the scientific method that has been developed in early stages itself.The basis of debugging is to locate the problems source and the way to correct the errors.