qa service

Error Localization Principles

Error Localization Principles
Error Localization Principles

Always think


Debugging is a process of solving problems such as finding and removing errors from software programs. It is a cyclic procedure that involves both test execution and code correction. The most effective debugging method is to analyze the information associated with the symptoms of errors. To implement it effectively, a domain specialist must have the ability to accurately localize the majority of errors without using a computer.


If you have reached an impasse, postpone the consideration of the program


Our subconscious mind is a powerful mechanism for solving problems. What we often attribute to inspiration is just a subconscious mind work made to solve the problem, meanwhile our conscious activity is connected with something else, for example, with food, a walk or watching a movie. If you cannot localize the error in an acceptable timeframe (presumably 30 minutes for small programs and several hours for large ones), stop searching for errors and start doing some other work, since your productivity will, in any case, significantly decrease. The problem should be “forgotten” until you either subconsciously find solution to it, or relax and be ready to reconsider the symptoms of the error.


If software quality is your primary concern it is reasonable to outsource qa to third party partners for them to test software products while these are developed.


If you have come to a dead-end, assign someone else to perform the task.

By doing this, you will probably discover something new.

It often happens that simply by explaining the task to a good listener, you will suddenly find a solution to it without any help from the person.


Use debugging tools only as auxiliary tools


Do not use these tools instead of reflecting on the task. Tools such as dumps and traces are based on random error detection & correction approach. The experiments showed that programmers avoiding the use of debugging tools, even when debugging unfamiliar programs, are better at debugging code than those who use these tools.


Avoid experimentation. Use it only as a last resort


The most common mistake made by novice programmers involved in debugging activities is attempting to solve a problem by making experimental changes to the program (“I do not know what’s wrong, but I’ll change this DO statement and see what happens.”) This absolutely wrong approach cannot even be considered as a debugging process; it is based on chance. Experimentation not only reduces the probability of success, but often complicates the task, since new errors are introduced into the program.

Hire Testers in Ukraine

About the author


TestMatick is a leading provider of QA services.

Offering more than 20 types of QA services, we can cover absolutely every need in testing.

Add Comment

Click here to post a comment