Debugging in Software Engineering


Debugging :-

On successful culmination of software testing, debugging is performed. Debugging is defined as a process of analyzing and removing the error. It is considered necessary in most of the newly-developed software or hardware and in commercial products/personal application programs. For complex products, debugging is done at all the levels of the testing.
Debugging is considered to be complex and time-consuming process since it attempts to remove errors at all the levels of testing. To perform debugging, debugger is used to reproduce failures, investigate the state of programs and find the corresponding defect. Debuggers enable programmers to execute programs step by step, to halt a program at any program statement and to set and examine program variables.

Guidelines for debugging

Some guidelines that are followed while performing debugging are :-
Debugging is the process of solving problems. Hence, individuals involved in debugging should understand all the causes of an error before starting with debugging.
No experimentation should be done while performing debugging. The experimental changes instead of removing often increase the problem by adding new errors in it.
When there is an error in one segment of a program, there is a high possibility of the presence of another error in that program. So, when an error is found in one segment of program, the rest of the program should be properly examined for the presence of errors.
It is necessary to confirm that new code added in a program to fix errors is correct and is not introducing any new error in it. Thus, to verify the correctness of a new code and to ensure that no new errors are introduced, regression testing should be performed.

The Debugging Process :-
During debugging, errors are encountered that range from less damaging to catastrophic. The various levels of errors increase, the amount of effort to find their causes also increases. One errors are identified in a software system, to debug the8.
Problem, the following steps are used.
1. Defect confirmation/identification: - A problem is identified in a system and a defect report is created. A software engineer maintains and analysis this error report and finds solution to the following questions.
> What is the expected/desired behavior of the system?
> What is the actual behavior Brute force.
> Does a defect exist in the system?
2. Defect analysis: - If the defect is genuine, the next step is to understand the root cause of the problem. Generally, engineers debug by starting a debugging tool and they try to understand the root cause of the problem by the following a step-by-step execution of the program.
3. Defect resolution: - Once the root cause of a problem is identified, the error can be resolved by making an appropriate change to the system by fixing the problem.
After the debugging process ends, the software is retested to ensure that no errors are left undetected. Moreover, it checks that no new errors are left undetected. Moreover, it checks that no new errors are introduced in the software as a result of change made to it during the debugging process.
Vinod Dussad

Related Articles

Why is engineering the most popular career option in India?

The article analyses the reasons of engineering being the most popular career option in India. The reasons revolve around the increasing number of private engineering colleges in India, the envious pay packages received by some of the engineering graduates, the wide array of career opportunities and options after engineering, and finally the stereotypical psyche of Indian parents regarding engineering as a career option.

2013 new JEE exam format to replace IIT-JEE, NIT exams

This article gives complete information about the new JEE-Main and JEE-Advanced exams which will be the new common entrance exams for admissions to undergraduate engineering programs in India from 2013. You will get details about the format and evaluation process of the new joint entrance exam for engineering students for admission to IITs, NITs, IISERs and other engineering colleges in India.

What after an engineering degree? MBA, MS, MTech or Job?

What after engineering? Wondering? Here are the solutions for proper carrier guidance. What is better MBA, MS or MTech? In which I can do better? Which will give a better pay? All of your answers are below here. Read this article and choose what you want to go for.

What do engineering students do in vacation!

This article is about what most of the engineering students do during their long and tiring semester breaks. This is a account of what I have seen people doing in my area and friend circle which is all over India. I would like to share this with you all.

More articles: Engineering


No responses found. Be the first to comment...

  • Do not include your name, "with regards" etc in the comment. Write detailed comment, relevant to the topic.
  • No HTML formatting and links to other web sites are allowed.
  • This is a strictly moderated site. Absolutely no spam allowed.
  • Name: