SlideShare a Scribd company logo
1 of 2
What Are Different Debugging Techniques?
Debugging techniques are not an easy process. It is as difficult as debugging
tools.

Below given are some important debugging techniques:

1)   Brute force debugging
2)   Backtracking debugging
3)   Debugging by induction
4)   Debugging by deduction
5)   Cause elimination debugging
6)   Debugging by testing
7)   Debugging by program slicing

These different debugging techniques are discussed below:

1) Brute force debugging

·         Brute force debugging techniques are applied when all else fails.
Brute force debugging is the technique of debugging with a storage dump.
·         Brute force debugging is always considered as the most common
debugging technique but also the least efficient one.
·         In this debugging technique, the program is always loaded with print
statements to always print the common or intermediate values with the fortune
that a few of the printed values will comfort to identify the statement with
error.
·         This debugging technique becomes more systematic with the exertion of
a symbolic debugger because values of disparate variables can be easily
examined.

2) Backtracking debugging

·         Backtracking is a fairly common debugging technique. This involves
“Backtracking“ the incorrect results always through the logic of the program.
·         In backtracking debugging technique, the source code is outlined
backwards until the error is discovered.
·         This debugging technique considered as the unfit when the “no“ of
source lines to be outlined back increases and the affecting number of potential
backward paths becomes unmanageable.

3) Debugging by induction

·         This debugging technique is a process that always organizes, locates
the data, and devises a hypothesis also. This hypothesis must then be proved
too.
·         It is a technique in which clue structure may be used for following
like what, where, when and how.

4) Debugging by deduction

·         Deduction is also used as a crucial debugging technique.
·         Terminate the possible causes and use data to eliminate causes.
·         This technique always refine the remaining cause into a hypothesis and
than prove it.

5) Cause elimination debugging

·         In this debugging technique, a list of scrape or causes that could
have promoted to the error symptom is prepared and tests are bear out to
eliminate each cause.
·         A technique related to software fault tree analysis may be handled to
classify or identify the errors from the “error symptom“.
6) Debugging by testing

This thinking type debugging involves the use of test cases. There are always
two types of test cases.

·         Test cases that always expose a previously undetected error/defect.
·         Test cases that also provide useful and crucial information in
debugging to locate an error and defect.
For an undetected error cases tend to cover several conditions per test case.
But keep in mind that test cases for locating a specific error always cover a
single condition for every test case.

7) Debugging by program slicing

·          This technique of debugging is very similar to backtracking debugging
technique.
·          In this debugging technique, the overall search space is first divided
in the program slices so that the effective search is moderate to the program
slice only.
·          A program slice for a detailed variable at a detailed statement is the
set or intent of source lines preceding this statement that can affect the value
of that variable.

Conclusion:
At end we conclude that debugging techniques are quite important because they
save the lots of time to detach or remove the problem.
Related Post:

More Related Content

What's hot

Software Testing Foundations Part 6 - Intuitive and Experience-based testing
Software Testing Foundations Part 6 - Intuitive and Experience-based testingSoftware Testing Foundations Part 6 - Intuitive and Experience-based testing
Software Testing Foundations Part 6 - Intuitive and Experience-based testingNikita Knysh
 
Coding and testing In Software Engineering
Coding and testing In Software EngineeringCoding and testing In Software Engineering
Coding and testing In Software EngineeringSatya Bhushan Verma
 
Boundary value analysis and equivalence partitioning
Boundary value analysis and equivalence partitioningBoundary value analysis and equivalence partitioning
Boundary value analysis and equivalence partitioningSneha Singh
 
Software Testing Foundations Part 4 - Black Box Testing
Software Testing Foundations Part 4 - Black Box TestingSoftware Testing Foundations Part 4 - Black Box Testing
Software Testing Foundations Part 4 - Black Box TestingNikita Knysh
 
Supervised Machine Learning: A Review of Classification ...
Supervised Machine Learning: A Review of Classification ...Supervised Machine Learning: A Review of Classification ...
Supervised Machine Learning: A Review of Classification ...butest
 
Whitepaper Test Case Design and Testing Techniques- Factors to Consider
Whitepaper Test Case Design and Testing Techniques- Factors to ConsiderWhitepaper Test Case Design and Testing Techniques- Factors to Consider
Whitepaper Test Case Design and Testing Techniques- Factors to ConsiderRapidValue
 
THE APPLICATION OF CAUSE EFFECT GRAPH FOR THE COLLEGE PLACEMENT PROCESS
THE APPLICATION OF CAUSE EFFECT GRAPH FOR THE COLLEGE PLACEMENT PROCESSTHE APPLICATION OF CAUSE EFFECT GRAPH FOR THE COLLEGE PLACEMENT PROCESS
THE APPLICATION OF CAUSE EFFECT GRAPH FOR THE COLLEGE PLACEMENT PROCESSVESIT/University of Mumbai
 
Testing 2 - Thinking Like A Tester
Testing 2 - Thinking Like A TesterTesting 2 - Thinking Like A Tester
Testing 2 - Thinking Like A TesterArleneAndrews2
 
Equivalence partinioning and boundary value analysis
Equivalence partinioning and boundary value analysisEquivalence partinioning and boundary value analysis
Equivalence partinioning and boundary value analysisniharika5412
 
[EVA] 5. Detection Patterns - Patterns for Fault Tolerant Software
[EVA] 5. Detection Patterns - Patterns for Fault Tolerant Software[EVA] 5. Detection Patterns - Patterns for Fault Tolerant Software
[EVA] 5. Detection Patterns - Patterns for Fault Tolerant Softwareeva
 
Test design techniques
Test design techniquesTest design techniques
Test design techniquesOksana
 

What's hot (20)

Software Testing Foundations Part 6 - Intuitive and Experience-based testing
Software Testing Foundations Part 6 - Intuitive and Experience-based testingSoftware Testing Foundations Part 6 - Intuitive and Experience-based testing
Software Testing Foundations Part 6 - Intuitive and Experience-based testing
 
Coding and testing In Software Engineering
Coding and testing In Software EngineeringCoding and testing In Software Engineering
Coding and testing In Software Engineering
 
Testing &ampdebugging
Testing &ampdebuggingTesting &ampdebugging
Testing &ampdebugging
 
Boundary value analysis and equivalence partitioning
Boundary value analysis and equivalence partitioningBoundary value analysis and equivalence partitioning
Boundary value analysis and equivalence partitioning
 
Software Testing Foundations Part 4 - Black Box Testing
Software Testing Foundations Part 4 - Black Box TestingSoftware Testing Foundations Part 4 - Black Box Testing
Software Testing Foundations Part 4 - Black Box Testing
 
Proman
PromanProman
Proman
 
Principles in software debugging
Principles in software debuggingPrinciples in software debugging
Principles in software debugging
 
Blackbox
BlackboxBlackbox
Blackbox
 
Debugging
DebuggingDebugging
Debugging
 
Supervised Machine Learning: A Review of Classification ...
Supervised Machine Learning: A Review of Classification ...Supervised Machine Learning: A Review of Classification ...
Supervised Machine Learning: A Review of Classification ...
 
Black-Box
Black-BoxBlack-Box
Black-Box
 
Notes on Debugging
Notes on DebuggingNotes on Debugging
Notes on Debugging
 
Whitepaper Test Case Design and Testing Techniques- Factors to Consider
Whitepaper Test Case Design and Testing Techniques- Factors to ConsiderWhitepaper Test Case Design and Testing Techniques- Factors to Consider
Whitepaper Test Case Design and Testing Techniques- Factors to Consider
 
Blackbox
BlackboxBlackbox
Blackbox
 
THE APPLICATION OF CAUSE EFFECT GRAPH FOR THE COLLEGE PLACEMENT PROCESS
THE APPLICATION OF CAUSE EFFECT GRAPH FOR THE COLLEGE PLACEMENT PROCESSTHE APPLICATION OF CAUSE EFFECT GRAPH FOR THE COLLEGE PLACEMENT PROCESS
THE APPLICATION OF CAUSE EFFECT GRAPH FOR THE COLLEGE PLACEMENT PROCESS
 
Testing 2 - Thinking Like A Tester
Testing 2 - Thinking Like A TesterTesting 2 - Thinking Like A Tester
Testing 2 - Thinking Like A Tester
 
Equivalence partinioning and boundary value analysis
Equivalence partinioning and boundary value analysisEquivalence partinioning and boundary value analysis
Equivalence partinioning and boundary value analysis
 
[EVA] 5. Detection Patterns - Patterns for Fault Tolerant Software
[EVA] 5. Detection Patterns - Patterns for Fault Tolerant Software[EVA] 5. Detection Patterns - Patterns for Fault Tolerant Software
[EVA] 5. Detection Patterns - Patterns for Fault Tolerant Software
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
 
Output analysis of a single model
Output analysis of a single modelOutput analysis of a single model
Output analysis of a single model
 

Similar to Debbuger

Debugging.pdf
Debugging.pdfDebugging.pdf
Debugging.pdfkumari36
 
Debugging- bajju.pptx
Debugging- bajju.pptxDebugging- bajju.pptx
Debugging- bajju.pptxShivamBajaj36
 
Debugging Approaches.pptx
Debugging Approaches.pptxDebugging Approaches.pptx
Debugging Approaches.pptxubaidullah75790
 
types of testing in software engineering
types of testing in software engineering types of testing in software engineering
types of testing in software engineering preetikapri1
 
Software testing strategy
Software testing strategySoftware testing strategy
Software testing strategyijseajournal
 
Combinatorial testing ppt
Combinatorial testing pptCombinatorial testing ppt
Combinatorial testing pptKedar Kumar
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTijfcstjournal
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTijfcstjournal
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTijfcstjournal
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTijfcstjournal
 
Sorfware engineering presentation (software testing)
Sorfware engineering presentation (software testing)Sorfware engineering presentation (software testing)
Sorfware engineering presentation (software testing)1Arun_Pandey
 
Debugging Presentation Rehman Ali.pptx
Debugging Presentation Rehman Ali.pptxDebugging Presentation Rehman Ali.pptx
Debugging Presentation Rehman Ali.pptxRehmanAli69
 
Software testing
Software testingSoftware testing
Software testingAshu Bansal
 

Similar to Debbuger (20)

Debugging.pdf
Debugging.pdfDebugging.pdf
Debugging.pdf
 
Debugging (Part 2)
Debugging (Part 2)Debugging (Part 2)
Debugging (Part 2)
 
Debugging- bajju.pptx
Debugging- bajju.pptxDebugging- bajju.pptx
Debugging- bajju.pptx
 
Debugging Approaches.pptx
Debugging Approaches.pptxDebugging Approaches.pptx
Debugging Approaches.pptx
 
types of testing in software engineering
types of testing in software engineering types of testing in software engineering
types of testing in software engineering
 
Software testing strategy
Software testing strategySoftware testing strategy
Software testing strategy
 
Combinatorial testing ppt
Combinatorial testing pptCombinatorial testing ppt
Combinatorial testing ppt
 
Unit2 for st
Unit2 for stUnit2 for st
Unit2 for st
 
S440999102
S440999102S440999102
S440999102
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
 
Sorfware engineering presentation (software testing)
Sorfware engineering presentation (software testing)Sorfware engineering presentation (software testing)
Sorfware engineering presentation (software testing)
 
Debugging Presentation Rehman Ali.pptx
Debugging Presentation Rehman Ali.pptxDebugging Presentation Rehman Ali.pptx
Debugging Presentation Rehman Ali.pptx
 
Software testing
Software testingSoftware testing
Software testing
 
Software engg unit 4
Software engg unit 4 Software engg unit 4
Software engg unit 4
 
unit testing and debugging
unit testing and debuggingunit testing and debugging
unit testing and debugging
 
Software Testing
 Software Testing  Software Testing
Software Testing
 
Testing
TestingTesting
Testing
 

Debbuger

  • 1. What Are Different Debugging Techniques? Debugging techniques are not an easy process. It is as difficult as debugging tools. Below given are some important debugging techniques: 1) Brute force debugging 2) Backtracking debugging 3) Debugging by induction 4) Debugging by deduction 5) Cause elimination debugging 6) Debugging by testing 7) Debugging by program slicing These different debugging techniques are discussed below: 1) Brute force debugging · Brute force debugging techniques are applied when all else fails. Brute force debugging is the technique of debugging with a storage dump. · Brute force debugging is always considered as the most common debugging technique but also the least efficient one. · In this debugging technique, the program is always loaded with print statements to always print the common or intermediate values with the fortune that a few of the printed values will comfort to identify the statement with error. · This debugging technique becomes more systematic with the exertion of a symbolic debugger because values of disparate variables can be easily examined. 2) Backtracking debugging · Backtracking is a fairly common debugging technique. This involves “Backtracking“ the incorrect results always through the logic of the program. · In backtracking debugging technique, the source code is outlined backwards until the error is discovered. · This debugging technique considered as the unfit when the “no“ of source lines to be outlined back increases and the affecting number of potential backward paths becomes unmanageable. 3) Debugging by induction · This debugging technique is a process that always organizes, locates the data, and devises a hypothesis also. This hypothesis must then be proved too. · It is a technique in which clue structure may be used for following like what, where, when and how. 4) Debugging by deduction · Deduction is also used as a crucial debugging technique. · Terminate the possible causes and use data to eliminate causes. · This technique always refine the remaining cause into a hypothesis and than prove it. 5) Cause elimination debugging · In this debugging technique, a list of scrape or causes that could have promoted to the error symptom is prepared and tests are bear out to eliminate each cause. · A technique related to software fault tree analysis may be handled to classify or identify the errors from the “error symptom“.
  • 2. 6) Debugging by testing This thinking type debugging involves the use of test cases. There are always two types of test cases. · Test cases that always expose a previously undetected error/defect. · Test cases that also provide useful and crucial information in debugging to locate an error and defect. For an undetected error cases tend to cover several conditions per test case. But keep in mind that test cases for locating a specific error always cover a single condition for every test case. 7) Debugging by program slicing · This technique of debugging is very similar to backtracking debugging technique. · In this debugging technique, the overall search space is first divided in the program slices so that the effective search is moderate to the program slice only. · A program slice for a detailed variable at a detailed statement is the set or intent of source lines preceding this statement that can affect the value of that variable. Conclusion: At end we conclude that debugging techniques are quite important because they save the lots of time to detach or remove the problem. Related Post: