Approaches For Defect Isolation

Bottom-up approach

  1. When testers have an intuition about the particulars of the defect they try a bottom-up approach first.
  2. Bottom-up approach involves creating a very minimal environment and observing if it reproduces the defect.
  3. If a defect is not reproduced, then a few portions of the original environment are added back in, and try again.
  4. If the defect is not determined very quickly, then the top-down approach should be considered.
  5. Bottom-up is frustrating and non-productive beyond a few iterations. There may be a few specific parts of the original scenario that are needed.
  6. Will probably be thrown out in your quest to get a minimal scenario right away. It can be a good shortcut, though in rare cases it is correct.


Top-down approach

  1. When the intuitive approaches of the tester haven't reduced the scenario significantly, it's time to take a more objective approach.
  2. The top-down approach is a systematic method for removing irrelevant details from your scenario, and it takes a lot of discipline to do well.


The bisection technique

  1. Bisection, also called a binary search, is an efficient algorithm for searching sorted lists.
  2. But with some creative thinking, it can also be a big help with defect isolation.
  3. Here's how you'd use the algorithm to find a word in the dictionary: open the dictionary.
  4. Then find the middle of the first half or last half of the book, depending on which direction you need to go.
  5. Repeat, by checking the middle of successively smaller and smaller sections, until you get to the right page.
  6. You'll find your word quickly, especially compared to searching linearly.


Refinement

Once the defect has been isolated, there is still an opportunity to discover additional information about it that will help with characterizing the severity of the defect and jump-start the debugging.


Similar Articles