Burst force, backtracking, cause elimination are strategies in art of debugging - Maintaining the System

Q.  Burst force, backtracking, cause elimination are strategies used in art of debugging.
- Published on 19 Oct 15

a. Yes
b. No

ANSWER: Yes
 

    Discussion

  • tabaiwa   -Posted on 27 May 19
    I would like to say lm so grateful for the above article it really helped me to understand my debugging strategies. However I would really appreciate it if you added more content and examples for better understanding. Overly I would say your article is very useful once again l say thank you very much....
  • Manjula Agrahari   -Posted on 10 Nov 17
    Process of backtracking method through figure
  • Nirja Shah   -Posted on 23 Oct 15
    Debugging Strategies
    - The object of debugging is to find and correct the cause of a software error
    - There are bugs found by a combination of systematic evaluation, intuition, and luck
    - These debugging methods and tools are not a substitute for careful evaluation based on a complete design model and clear source code
    - There are three main debugging strategies:

    Brute force
    - This is the most commonly used and least efficient method
    - It is used when all of it fails
    - It involves the use of memory dumps, run-time traces, and output statements
    - Many a times it leads to wasted effort and time

    Backtracking
    - It can be used successfully in small programs
    - This method starts at the location where a symptom has been uncovered
    - In this the source code is then traced backward (manually) until the location of the cause is found
    - In large programs, the number of potential backward paths may become unmanageably large

    Cause elimination
    - This involves the use of induction or deduction and introduces the concept of binary partitioning
    - Induction (specific to general): Prove that a specific starting value is true; then prove the general case is true
    - Deduction (general to specific): Show that a specific conclusion follows from a set of general premises
    - The data related to the error occurrence are organized to isolate potential causes
    - A cause hypothesis is devised, and the aforementioned data are used to prove or disprove the hypothesis
    - Alternatively, a list of all possible causes is developed, and tests are conducted to eliminate each cause
    - If initial tests indicate that a particular cause hypothesis shows promise, data are refined in an attempt to isolate the bug

Post your comment / Share knowledge


Enter the code shown above:

(Note: If you cannot read the numbers in the above image, reload the page to generate a new one.)