In this last section, we will discuss the various advanced debugging strategies that can be used individually, or in combination with each other, to detect and pinpoint bugs in our programs. In general, the term debugging is used to denote the process in which programmers attempt to identify and resolve problems or defects that would otherwise cause the computer applications they reside in to produce incorrect results, or even stop functioning.
The strategies that we will discuss include general debugging strategies, as well as particular techniques used in debugging concurrent applications. A systematic application of these strategies would improve your debugging process, in terms of both effectiveness and speed.