debugging
process of finding and resolving defects or problems within a computer program
tracing
specialized use of logging to record information about a program's execution, which is typically used by programmers for debugging purposes
time-travel debugging
process of stepping back in time through source code to understand what is happening during execution of a computer program
Delta Debugging
methodology to automate the debugging of programs using a scientific approach of hypothesis-trial-result loop; developed by Andreas Zeller of Saarland University in 1999
rubber duck debugging
debugging method, in which a programmer explains code, line-by-line, to an inanimate object ("rubber duck") or to another person, until the incongruity between what the code should do and actually does becomes apparent
shotgun debugging
making haphazard or diverse changes to software in the hope that a bug will be perturbed out of existence
algorithmic program debugging
debugging technique that compares the results of subcomputations with what was intended; it constructs an internal representation of all subcomputations performed while running a buggy program and asks the programmer whether they are correct