SlideShare a Scribd company logo
Interactive Fault Localization
Leveraging Simple User Feedback
Liang Gong1, David Lo2, Lingxiao Jiang2, and Hongyu Zhang1
Funded by
1

Tsinghua University

2

Singapore Management University
Interactive Fault Localization
Leveraging Simple User Feedback

• Motivation
•

Outline
Introduction &
Framework

Fault Localization

• Interactive Fault Localization
•
•

Technical Motivation
Detailed Approach

• Experiments
•

Settings & Results

• Conclusion & Future work
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

Debugging

Software errors cost the US economy
59.5 billion dollars (0.6% of 2002's GDP) [1]
Testing and debugging activities are
labor-intensive (30% to 90% of a Project) [2]

Problem

Presented by
Liang Gong

School of Software
Tsinghua University

[1] National Institute of Standards and Technology (NIST). Software Errors Cost
U.S. Economy $59.5 Billion Annually, June 28, 2002.
[2] B. Beizer. Software Testing Techniques. International Thomson Computer
Press, Boston, 2nd edition, 1990.
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

Spectrum-based Fault Localization(abbr. SBFL)
• Automatically recommend a list of suspicious
program elements for inspection.

SBFL

Introduction

• Program Spectra consists of coverage information
and execution labels.

Program Spectra

Coverage information of one
element (si) in all executions

Profile of an execution trace

Correct or incorrect?
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

For a given statement S
The formula
Tarantula calculates the suspiciousness of S.
No. of failed traces covering S

Approaches

Fault Localization

Ochiai
No. of failed traces

Jaccard

Presented by
Liang Gong

School of Software
Tsinghua University

No. of traces covering S

Intuition: If S is covered more in failed traces
and less in passed traces, it is more likely to
contain faults.
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

Program Goal:
Research Spectra

Process

Motivation

Fault Localization
Techniques

• An interactive fault localization
method leveraging user feedback
• Requires trivial or no additional effort
Developer
Static List of
Suspicious Elements

Batch Mode Fault Localization
No feedback from human is utilized.
Presented by
Liang Gong

School of Software
Tsinghua University
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

FaulT LocAlization Leveraging
User FeedbacK (TALK)

Our Method
Introduction

• Interactively and iteratively updates
model according to feedback
• Leveraging only simple feedback

• one-size-fits-all approach

Presented by
Liang Gong

School of Software
Tsinghua University
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

Process

Program Spectra

Feedback

Motivation

Fault Localization
Techniques
Developer

Interactive List of
Suspicious Elements

Interactive Fault Localization
Presented by
Liang Gong

School of Software
Tsinghua University
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

How to provide feedback which
requires trivial additional effort?

No.

Feedback

Opportunities

Susp.

S12
S11
S8
S9
S5

0.756
0.707
0.671
0.667
0.603

Program Element
other += 1;}
else if(isprint(c))
let += 1;
else if('0'<=c && '9'>c)
if('A'<=c && 'Z'>=c)

Proposed Inspection List (interactive)
Conventional Inspection List (static)

Presented by
Liang Gong

School of Software
Tsinghua University

Buggy?

Commit

When developer examine the inspection list, they
must judge if those statements are clean or faulty.
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

With provided feedback, how to improve
fault localization accuracy?
Once a false positive(symptom) has been found
Find the likely root cause for that symptom

Feedback

How to utilize ?

Adjust the suspiciousness of root cause and re-rank
No.

Susp.

S12
S11
S8
S9
S5

0.756
0.707
0.671
0.667
0.603

Program Element

Buggy?

other += 1;}
else if(isprint(c))
let += 1;
else if('0'<=c && '9'>c)
if('A'<=c && 'Z'>=c)

likely root cause
Presented by
Liang Gong

School of Software
Tsinghua University
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

How to find the likely root cause of a symptom?
Investigating co-occurrences of program elements in
failed executions to identify root cause candidate

Root Cause
How to find ?

t1
t2
t3

…
…
…
…

s1

s2

s3

s4

s5

s6





































…
…
…
…

p/f
fail
fail
pass

False positive (Symptom)

Intuition: If s3 has been identified as false positive,
Presented by
Liang Gong

School of Software
Tsinghua University

then s2 is more likely to be the root cause than s1.
As s2 co-appears more with s3 in failed traces.
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

Identifying a Root Cause from Its Symptom.
• Evaluate the co-appearance score of
statements (root cause candidate)

Rule: R1
Detailed Approach

Co-appearance from traces covering
less statements weights higher

• Select candidate with most co-appearance score
as the root cause

Presented by
Liang Gong

School of Software
Tsinghua University

Intuition: Statements co-appeared more with
symptom in failed traces covering less statements
are more likely to be chosen as the root cause.
With the spectra T and symptom S, and how to
Diversity Maximization Speedup
for Fault Localization
the suspiciousness score of the root cause Sr ?
Consists of all traces covering root cause Sr

adjust

If Sr is the real root cause,
then fT(Sr)(s) be very HIGH.

split

Test Case
Prioritization

introduction

Spectra T(Sr)

Suspiciousness
of Symptom: fT(Sr)(s)
fT(Sr)(s) - fT(Sr)(s)

Spectra T
Spectra T(Sr)

Presented by
Liang Gong

Consists of all traces
not covering root cause Sr

School of Software
Tsinghua University

The larger this metric is,
the more suspiciousness
Suspiciousness
score Sr will get.
of Symptom: fT(Sr)(s)

If Sr is the real root cause,
then fT(Sr)(s) be very LOW
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

Rule: R1
Detailed Approach

Presented by
Liang Gong

School of Software
Tsinghua University

With the symptom, how to adjust the
suspiciousness score of the root cause?

• Calculate the suspiciousness difference of symptom
in spectra covering and not covering root cause.
• Contribute the suspiciousness difference of symptom
to the suspiciousness of its root cause
Intuition: If the suspiciousness of symptom becomes
larger when root cause is covered, the root cause is
more suspicious.
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

Rule 2

Focusing on a Single Failed Execution Profile
t1
t2
t3

…
…
…
…

s1

s2

s3

s4

s5

s6





































…
…
…
…

p/f
fail
fail
pass

In this case, focusing on statements covered by
t1 will quickly identify at least one bug. As only
two statements have to be examined.

Introduction
•

Find out the failed profile tmin covering
the least number of unexamined elements.

•

For each program element si that is covered in tmin

Presented by
Liang Gong

School of Software
Tsinghua University

A constant making sure that statements
covered by tmin are examined first.
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

Initial Process: Conventional
Fault Localization

Processing
Overall
False Positive
with Rule
Algorithm1

Introduction

If a bug has been confirmed,
record it for Rule 2
Apply Rule 2
Presented by
Liang Gong

School of Software
Tsinghua University

Processing
Feedback
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

Benchmarks for Fault Localization

1

Experiment
Dataset &
Evaluation Metric

2

1 Siemens Suite

2 UNIX Programs

Evaluation Metric for Fault Localization:
Presented by
Liang Gong

School of Software
Tsinghua University
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

Research Questions Investigated:

Experiment
Research Questions

Presented by
Liang Gong

School of Software
Tsinghua University

Is user feedback helpful for improving
fault localization accuracy?
What is the relative effectiveness
of the two rules to improve fault
localization?
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

Conventional Fault Localization Technique

f

Interactive Fault Localization Technique f+

f+ vs f

f+ requires 40% less debugging cost
than f on faulty version 4

Comparison

Introduction

Presented by
Liang Gong

School of Software
Tsinghua University

f+ requires 30% more debugging cost
than f on faulty version 2
Diversity Maximization Speedup
for Fault Localization

Improvement of TALK on Existing Methods

Test Case
Prioritization
introduction

Ochiai+ vs Ochiai

Presented by
Liang Gong

School of Software
Tsinghua University

Jaccard+ vs Jaccard

Tarantula+ vs Tarantula

Pair-wised T-test shows the improvements are
statistically significant at 95% interval.
Diversity Maximization Speedup
Interactive Fault Localization
Leveraging Simple User Feedback
for Fault Localization

Research Questions Investigated:

Experiment
Research Questions

Presented by
Liang Gong

School of Software
Tsinghua University

Is user feedback helpful for improving
fault localization accuracy?
What is the relative effectiveness
of the two rules to improve fault
localization?
Contributions of R1 and R2

Diversity Maximization Speedup
for Fault Localization

on Improving Fault Localization Effectiveness

Test Case
Prioritization
introduction

Improvement from R1
Presented by
Liang Gong

School of Software
Tsinghua University

Improvement from R2
Improvement from R1 + R2
Diversity Maximization Speedup
Interactive Fault Localization
for Fault Localization
Leveraging Simple User Feedback

Fault Localization (state-of-the-arts)





Related Works
Introduction

WHITHER[Renieris and Reiss]
Liblit05[Liblit]
Delta Debugging[Zeller]
Tarantula[Harrold], Ochiai etc.

Interactive Fault Localization
Hao et al. propose an technique [JCST]
 Record sequential execution trace
 Judge whether the fault is executed before or after
the checking point.

Presented by
Liang Gong

School of Software
Tsinghua University

Lucia et al. adopt user feedback for clone-based bug
detection approaches [ICSE 12]
Insa et al. propose a strategy for algorithmic
debugging which asks user questions concerning
program state. [ASE 11]
Diversity Maximization Speedup
Interactive Fault Localization
for Fault Localization
Leveraging Simple User Feedback

Threats to

Validity

Construct Validity (Evaluation Metric)
We use a cost metric that has been utilized to
evaluate past fault localization techniques. We
believe this is a fair and well-accepted metric.

External Validity (Generalizability)
All of subjects are written in C. In the future,
we plan to investigate more programs written
in various programming languages.

What if user provides a wrong feedback?
Presented by
Liang Gong

School of Software
Tsinghua University
Diversity Maximization Speedup
Interactive Fault Localization
for Fault Localization
Leveraging Simple User Feedback

What if user provides a wrong feedback?
Since we use simple feedbacks,
mistakes can only be:

Threats to

Validity

 Clean Statement labeled as Faulty
In this case, when developers try to fix the
“bug”, they will realize their mistake.

 Faulty Statement labeled as Clean
Most fault localization techniques are evaluated
by assuming a user is always correct when
ascertaining if an element is buggy or correct.
Presented by
Liang Gong

School of Software
Tsinghua University

In future: Allow users to rollback their

feedback if they made mistakes.
Diversity Maximization Speedup
Interactive Fault Localization
for Fault Localization
Leveraging Simple User Feedback

• Conclusions

A novel interactive method TALK for fault localization:
 TALK leverages user feedback while limits the
additional manual cost incurred.

Conclusion
& Future Work

 TALK is a one-size-fits-all approach that can be
applied to most existing static SBFL techniques.

Thank you!

 Empirical studies on 12 C programs shows that TALK
can help to significantly improve the fault localization
accuracy.

•• Any questions?
Future Work

...

• Evaluate on more subject programs.
• Try different strategies to further utilize user feedback
Presented by
Liang Gong

School of Software
Tsinghua University

• Enhance TALK by allowing users to rollback their
feedback if they made mistakes

More Related Content

What's hot

Realtime, Non-Intrusive Evaluation of VoIP Using Genetic Programming
Realtime, Non-Intrusive Evaluation of VoIP Using Genetic ProgrammingRealtime, Non-Intrusive Evaluation of VoIP Using Genetic Programming
Realtime, Non-Intrusive Evaluation of VoIP Using Genetic Programming
adil raja
 
Software Defect Prediction Using Local and Global Analysis
Software Defect Prediction Using Local and Global AnalysisSoftware Defect Prediction Using Local and Global Analysis
Software Defect Prediction Using Local and Global Analysis
Editor IJMTER
 
[Tho Quan] Fault Localization - Where is the root cause of a bug?
[Tho Quan] Fault Localization - Where is the root cause of a bug?[Tho Quan] Fault Localization - Where is the root cause of a bug?
[Tho Quan] Fault Localization - Where is the root cause of a bug?
Ho Chi Minh City Software Testing Club
 
Industry-Academia Communication In Empirical Software Engineering
Industry-Academia Communication In Empirical Software EngineeringIndustry-Academia Communication In Empirical Software Engineering
Industry-Academia Communication In Empirical Software Engineering
Per Runeson
 
IRJET - Neural Network based Leaf Disease Detection and Remedy Recommenda...
IRJET -  	  Neural Network based Leaf Disease Detection and Remedy Recommenda...IRJET -  	  Neural Network based Leaf Disease Detection and Remedy Recommenda...
IRJET - Neural Network based Leaf Disease Detection and Remedy Recommenda...
IRJET Journal
 
Analytics for software development
Analytics for software developmentAnalytics for software development
Analytics for software developmentThomas Zimmermann
 
The International Journal of Engineering and Science (IJES)
The International Journal of Engineering and Science (IJES)The International Journal of Engineering and Science (IJES)
The International Journal of Engineering and Science (IJES)
theijes
 
An Application-Oriented Approach for Computer Security Education
An Application-Oriented Approach for Computer Security EducationAn Application-Oriented Approach for Computer Security Education
An Application-Oriented Approach for Computer Security Education
Xiao Qin
 
Software testing
Software testingSoftware testing
Software testing
Rico-j Laurente
 
Genetic algorithm based approach for
Genetic algorithm based approach forGenetic algorithm based approach for
Genetic algorithm based approach for
IJCSES Journal
 
Parameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE Method
Parameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE MethodParameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE Method
Parameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE Method
IRJET Journal
 
The adoption of machine learning techniques for software defect prediction: A...
The adoption of machine learning techniques for software defect prediction: A...The adoption of machine learning techniques for software defect prediction: A...
The adoption of machine learning techniques for software defect prediction: A...
RAKESH RANA
 
Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...
Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...
Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...
Chakkrit (Kla) Tantithamthavorn
 
The Impact of Mislabelling on the Performance and Interpretation of Defect Pr...
The Impact of Mislabelling on the Performance and Interpretation of Defect Pr...The Impact of Mislabelling on the Performance and Interpretation of Defect Pr...
The Impact of Mislabelling on the Performance and Interpretation of Defect Pr...
Chakkrit (Kla) Tantithamthavorn
 
Icsoc12 tooldemo.ppt
Icsoc12 tooldemo.pptIcsoc12 tooldemo.ppt
Icsoc12 tooldemo.ppt
Ptidej Team
 
Exploratory Testing
Exploratory TestingExploratory Testing
Exploratory Testingnazeer pasha
 
Software Quality Analysis Using Mutation Testing Scheme
Software Quality Analysis Using Mutation Testing SchemeSoftware Quality Analysis Using Mutation Testing Scheme
Software Quality Analysis Using Mutation Testing Scheme
Editor IJMTER
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)IJERD Editor
 
M018147883
M018147883M018147883
M018147883
IOSR Journals
 
IRJET- Data Reduction in Bug Triage using Supervised Machine Learning
IRJET- Data Reduction in Bug Triage using Supervised Machine LearningIRJET- Data Reduction in Bug Triage using Supervised Machine Learning
IRJET- Data Reduction in Bug Triage using Supervised Machine Learning
IRJET Journal
 

What's hot (20)

Realtime, Non-Intrusive Evaluation of VoIP Using Genetic Programming
Realtime, Non-Intrusive Evaluation of VoIP Using Genetic ProgrammingRealtime, Non-Intrusive Evaluation of VoIP Using Genetic Programming
Realtime, Non-Intrusive Evaluation of VoIP Using Genetic Programming
 
Software Defect Prediction Using Local and Global Analysis
Software Defect Prediction Using Local and Global AnalysisSoftware Defect Prediction Using Local and Global Analysis
Software Defect Prediction Using Local and Global Analysis
 
[Tho Quan] Fault Localization - Where is the root cause of a bug?
[Tho Quan] Fault Localization - Where is the root cause of a bug?[Tho Quan] Fault Localization - Where is the root cause of a bug?
[Tho Quan] Fault Localization - Where is the root cause of a bug?
 
Industry-Academia Communication In Empirical Software Engineering
Industry-Academia Communication In Empirical Software EngineeringIndustry-Academia Communication In Empirical Software Engineering
Industry-Academia Communication In Empirical Software Engineering
 
IRJET - Neural Network based Leaf Disease Detection and Remedy Recommenda...
IRJET -  	  Neural Network based Leaf Disease Detection and Remedy Recommenda...IRJET -  	  Neural Network based Leaf Disease Detection and Remedy Recommenda...
IRJET - Neural Network based Leaf Disease Detection and Remedy Recommenda...
 
Analytics for software development
Analytics for software developmentAnalytics for software development
Analytics for software development
 
The International Journal of Engineering and Science (IJES)
The International Journal of Engineering and Science (IJES)The International Journal of Engineering and Science (IJES)
The International Journal of Engineering and Science (IJES)
 
An Application-Oriented Approach for Computer Security Education
An Application-Oriented Approach for Computer Security EducationAn Application-Oriented Approach for Computer Security Education
An Application-Oriented Approach for Computer Security Education
 
Software testing
Software testingSoftware testing
Software testing
 
Genetic algorithm based approach for
Genetic algorithm based approach forGenetic algorithm based approach for
Genetic algorithm based approach for
 
Parameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE Method
Parameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE MethodParameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE Method
Parameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE Method
 
The adoption of machine learning techniques for software defect prediction: A...
The adoption of machine learning techniques for software defect prediction: A...The adoption of machine learning techniques for software defect prediction: A...
The adoption of machine learning techniques for software defect prediction: A...
 
Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...
Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...
Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...
 
The Impact of Mislabelling on the Performance and Interpretation of Defect Pr...
The Impact of Mislabelling on the Performance and Interpretation of Defect Pr...The Impact of Mislabelling on the Performance and Interpretation of Defect Pr...
The Impact of Mislabelling on the Performance and Interpretation of Defect Pr...
 
Icsoc12 tooldemo.ppt
Icsoc12 tooldemo.pptIcsoc12 tooldemo.ppt
Icsoc12 tooldemo.ppt
 
Exploratory Testing
Exploratory TestingExploratory Testing
Exploratory Testing
 
Software Quality Analysis Using Mutation Testing Scheme
Software Quality Analysis Using Mutation Testing SchemeSoftware Quality Analysis Using Mutation Testing Scheme
Software Quality Analysis Using Mutation Testing Scheme
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
 
M018147883
M018147883M018147883
M018147883
 
IRJET- Data Reduction in Bug Triage using Supervised Machine Learning
IRJET- Data Reduction in Bug Triage using Supervised Machine LearningIRJET- Data Reduction in Bug Triage using Supervised Machine Learning
IRJET- Data Reduction in Bug Triage using Supervised Machine Learning
 

Viewers also liked

Practitioners’ Expectations on Automated Fault Localization
Practitioners’ Expectations on Automated Fault LocalizationPractitioners’ Expectations on Automated Fault Localization
Practitioners’ Expectations on Automated Fault Localization
Pavneet Singh Kochhar
 
Locating Crashing Faults based on Crash Stack Traces
Locating Crashing Faults based on Crash Stack TracesLocating Crashing Faults based on Crash Stack Traces
Locating Crashing Faults based on Crash Stack Traces
Liang Gong
 
Tool-Supported 2014 07 sems_limitations_evaluation_practice
Tool-Supported 2014 07 sems_limitations_evaluation_practiceTool-Supported 2014 07 sems_limitations_evaluation_practice
Tool-Supported 2014 07 sems_limitations_evaluation_practicesemsworkshop
 
eTDR Fault Localization Accuracy - The effect of Multiple Impedance mismatches
eTDR Fault Localization Accuracy - The effect of Multiple Impedance mismatcheseTDR Fault Localization Accuracy - The effect of Multiple Impedance mismatches
eTDR Fault Localization Accuracy - The effect of Multiple Impedance mismatchesFrancisco Gastiazoro
 
C语言benchmark覆盖信息收集总结4
C语言benchmark覆盖信息收集总结4C语言benchmark覆盖信息收集总结4
C语言benchmark覆盖信息收集总结4Tao He
 
DLint: dynamically checking bad coding practices in JavaScript (ISSTA'15 Slides)
DLint: dynamically checking bad coding practices in JavaScript (ISSTA'15 Slides)DLint: dynamically checking bad coding practices in JavaScript (ISSTA'15 Slides)
DLint: dynamically checking bad coding practices in JavaScript (ISSTA'15 Slides)
Liang Gong
 
Statistical debuging for programs written in dynamic programming language ruby
Statistical debuging for programs written in dynamic programming language   rubyStatistical debuging for programs written in dynamic programming language   ruby
Statistical debuging for programs written in dynamic programming language ruby
Adeel Akhter
 
Cleansing test suites from coincidental correctness to enhance falut localiza...
Cleansing test suites from coincidental correctness to enhance falut localiza...Cleansing test suites from coincidental correctness to enhance falut localiza...
Cleansing test suites from coincidental correctness to enhance falut localiza...Tao He
 
2014 07 sems_debugging_models
2014 07 sems_debugging_models2014 07 sems_debugging_models
2014 07 sems_debugging_modelssemsworkshop
 
Cues for Better Scent in Debugging
Cues for Better Scent in DebuggingCues for Better Scent in Debugging
Cues for Better Scent in Debugging
Rui Maranhao Abreu
 
ISSTA 2010 Presentation
ISSTA 2010 PresentationISSTA 2010 Presentation
ISSTA 2010 Presentation
Julian Dolby
 
Testing group’s work on fault localization
Testing group’s work on fault localizationTesting group’s work on fault localization
Testing group’s work on fault localizationTao He
 
Falcon: Fault Localization in Concurrent Programs
Falcon: Fault Localization in Concurrent ProgramsFalcon: Fault Localization in Concurrent Programs
Falcon: Fault Localization in Concurrent ProgramsSangmin Park
 
Effective Fault-Localization Techniques for Concurrent Software
Effective Fault-Localization Techniques for Concurrent SoftwareEffective Fault-Localization Techniques for Concurrent Software
Effective Fault-Localization Techniques for Concurrent Software
Sangmin Park
 
fault localization in computer network..
fault localization in computer network..fault localization in computer network..
fault localization in computer network..
CDAC PUNE
 
Evaluating the Usefulness of IR-Based Fault LocalizationTechniques
Evaluating the Usefulness of IR-Based Fault LocalizationTechniquesEvaluating the Usefulness of IR-Based Fault LocalizationTechniques
Evaluating the Usefulness of IR-Based Fault LocalizationTechniques
Alex Orso
 
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
Debdoot Mukherjee
 
Constraint-Based Fault-Localization
Constraint-Based Fault-LocalizationConstraint-Based Fault-Localization
Constraint-Based Fault-Localization
Mohammed Bekkouche
 
Automated Debugging: Are We There Yet?
Automated Debugging: Are We There Yet?Automated Debugging: Are We There Yet?
Automated Debugging: Are We There Yet?
Alex Orso
 

Viewers also liked (20)

Practitioners’ Expectations on Automated Fault Localization
Practitioners’ Expectations on Automated Fault LocalizationPractitioners’ Expectations on Automated Fault Localization
Practitioners’ Expectations on Automated Fault Localization
 
Locating Crashing Faults based on Crash Stack Traces
Locating Crashing Faults based on Crash Stack TracesLocating Crashing Faults based on Crash Stack Traces
Locating Crashing Faults based on Crash Stack Traces
 
Tool-Supported 2014 07 sems_limitations_evaluation_practice
Tool-Supported 2014 07 sems_limitations_evaluation_practiceTool-Supported 2014 07 sems_limitations_evaluation_practice
Tool-Supported 2014 07 sems_limitations_evaluation_practice
 
eTDR Fault Localization Accuracy - The effect of Multiple Impedance mismatches
eTDR Fault Localization Accuracy - The effect of Multiple Impedance mismatcheseTDR Fault Localization Accuracy - The effect of Multiple Impedance mismatches
eTDR Fault Localization Accuracy - The effect of Multiple Impedance mismatches
 
C语言benchmark覆盖信息收集总结4
C语言benchmark覆盖信息收集总结4C语言benchmark覆盖信息收集总结4
C语言benchmark覆盖信息收集总结4
 
DLint: dynamically checking bad coding practices in JavaScript (ISSTA'15 Slides)
DLint: dynamically checking bad coding practices in JavaScript (ISSTA'15 Slides)DLint: dynamically checking bad coding practices in JavaScript (ISSTA'15 Slides)
DLint: dynamically checking bad coding practices in JavaScript (ISSTA'15 Slides)
 
2011/09/20 - Software Testing
2011/09/20 - Software Testing2011/09/20 - Software Testing
2011/09/20 - Software Testing
 
Statistical debuging for programs written in dynamic programming language ruby
Statistical debuging for programs written in dynamic programming language   rubyStatistical debuging for programs written in dynamic programming language   ruby
Statistical debuging for programs written in dynamic programming language ruby
 
Cleansing test suites from coincidental correctness to enhance falut localiza...
Cleansing test suites from coincidental correctness to enhance falut localiza...Cleansing test suites from coincidental correctness to enhance falut localiza...
Cleansing test suites from coincidental correctness to enhance falut localiza...
 
2014 07 sems_debugging_models
2014 07 sems_debugging_models2014 07 sems_debugging_models
2014 07 sems_debugging_models
 
Cues for Better Scent in Debugging
Cues for Better Scent in DebuggingCues for Better Scent in Debugging
Cues for Better Scent in Debugging
 
ISSTA 2010 Presentation
ISSTA 2010 PresentationISSTA 2010 Presentation
ISSTA 2010 Presentation
 
Testing group’s work on fault localization
Testing group’s work on fault localizationTesting group’s work on fault localization
Testing group’s work on fault localization
 
Falcon: Fault Localization in Concurrent Programs
Falcon: Fault Localization in Concurrent ProgramsFalcon: Fault Localization in Concurrent Programs
Falcon: Fault Localization in Concurrent Programs
 
Effective Fault-Localization Techniques for Concurrent Software
Effective Fault-Localization Techniques for Concurrent SoftwareEffective Fault-Localization Techniques for Concurrent Software
Effective Fault-Localization Techniques for Concurrent Software
 
fault localization in computer network..
fault localization in computer network..fault localization in computer network..
fault localization in computer network..
 
Evaluating the Usefulness of IR-Based Fault LocalizationTechniques
Evaluating the Usefulness of IR-Based Fault LocalizationTechniquesEvaluating the Usefulness of IR-Based Fault LocalizationTechniques
Evaluating the Usefulness of IR-Based Fault LocalizationTechniques
 
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
 
Constraint-Based Fault-Localization
Constraint-Based Fault-LocalizationConstraint-Based Fault-Localization
Constraint-Based Fault-Localization
 
Automated Debugging: Are We There Yet?
Automated Debugging: Are We There Yet?Automated Debugging: Are We There Yet?
Automated Debugging: Are We There Yet?
 

Similar to Interactive fault localization leveraging simple user feedback - by Liang Gong

Enabling and Supporting the Debugging of Field Failures (Job Talk)
Enabling and Supporting the Debugging of Field Failures (Job Talk)Enabling and Supporting the Debugging of Field Failures (Job Talk)
Enabling and Supporting the Debugging of Field Failures (Job Talk)James Clause
 
Information hiding based on optimization technique for Encrypted Images
Information hiding based on optimization technique for Encrypted ImagesInformation hiding based on optimization technique for Encrypted Images
Information hiding based on optimization technique for Encrypted Images
IRJET Journal
 
IRJET- Windows Log Investigator System for Faster Root Cause Detection of a D...
IRJET- Windows Log Investigator System for Faster Root Cause Detection of a D...IRJET- Windows Log Investigator System for Faster Root Cause Detection of a D...
IRJET- Windows Log Investigator System for Faster Root Cause Detection of a D...
IRJET Journal
 
178 - A replicated study on duplicate detection: Using Apache Lucene to searc...
178 - A replicated study on duplicate detection: Using Apache Lucene to searc...178 - A replicated study on duplicate detection: Using Apache Lucene to searc...
178 - A replicated study on duplicate detection: Using Apache Lucene to searc...
ESEM 2014
 
Stc 2015 regional-round-ppt-exlopratory mobile testing with risk analysis
Stc 2015 regional-round-ppt-exlopratory mobile testing with risk analysisStc 2015 regional-round-ppt-exlopratory mobile testing with risk analysis
Stc 2015 regional-round-ppt-exlopratory mobile testing with risk analysis
Archana Krushnan
 
CRIME EXPLORATION AND FORECAST
CRIME EXPLORATION AND FORECASTCRIME EXPLORATION AND FORECAST
CRIME EXPLORATION AND FORECAST
IRJET Journal
 
Continuous testing & devops with @petemar5hall
Continuous testing & devops with @petemar5hallContinuous testing & devops with @petemar5hall
Continuous testing & devops with @petemar5hall
Peter Marshall
 
Introduction to Software Testing
Introduction to Software TestingIntroduction to Software Testing
Introduction to Software Testing
Henry Muccini
 
SURVEY ON LINK LAYER ATTACKS IN COGNITIVE RADIO NETWORKS
SURVEY ON LINK LAYER ATTACKS IN COGNITIVE RADIO NETWORKSSURVEY ON LINK LAYER ATTACKS IN COGNITIVE RADIO NETWORKS
SURVEY ON LINK LAYER ATTACKS IN COGNITIVE RADIO NETWORKS
ijcseit
 
Thinking in software testing
Thinking in software testingThinking in software testing
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
Kevin Moran
 
A Complexity Based Regression Test Selection Strategy
A Complexity Based Regression Test Selection StrategyA Complexity Based Regression Test Selection Strategy
A Complexity Based Regression Test Selection Strategy
CSEIJJournal
 
Optimal Selection of Software Reliability Growth Model-A Study
Optimal Selection of Software Reliability Growth Model-A StudyOptimal Selection of Software Reliability Growth Model-A Study
Optimal Selection of Software Reliability Growth Model-A Study
IJEEE
 
The Rationale for Continuous Delivery
The Rationale for Continuous DeliveryThe Rationale for Continuous Delivery
The Rationale for Continuous Delivery
Perforce
 
Taking Open Source Security to the Next Level
Taking Open Source Security to the Next LevelTaking Open Source Security to the Next Level
Taking Open Source Security to the Next Level
WhiteSource
 
Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2
Gurpreet singh
 
Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...
Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...
Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...
Pavneet Singh Kochhar
 
Sensors, threats, responses and challenges - Dr Emil Lupu (Imperial College L...
Sensors, threats, responses and challenges - Dr Emil Lupu (Imperial College L...Sensors, threats, responses and challenges - Dr Emil Lupu (Imperial College L...
Sensors, threats, responses and challenges - Dr Emil Lupu (Imperial College L...
Comit Projects Ltd
 

Similar to Interactive fault localization leveraging simple user feedback - by Liang Gong (20)

Debug me
Debug meDebug me
Debug me
 
Enabling and Supporting the Debugging of Field Failures (Job Talk)
Enabling and Supporting the Debugging of Field Failures (Job Talk)Enabling and Supporting the Debugging of Field Failures (Job Talk)
Enabling and Supporting the Debugging of Field Failures (Job Talk)
 
Information hiding based on optimization technique for Encrypted Images
Information hiding based on optimization technique for Encrypted ImagesInformation hiding based on optimization technique for Encrypted Images
Information hiding based on optimization technique for Encrypted Images
 
IRJET- Windows Log Investigator System for Faster Root Cause Detection of a D...
IRJET- Windows Log Investigator System for Faster Root Cause Detection of a D...IRJET- Windows Log Investigator System for Faster Root Cause Detection of a D...
IRJET- Windows Log Investigator System for Faster Root Cause Detection of a D...
 
178 - A replicated study on duplicate detection: Using Apache Lucene to searc...
178 - A replicated study on duplicate detection: Using Apache Lucene to searc...178 - A replicated study on duplicate detection: Using Apache Lucene to searc...
178 - A replicated study on duplicate detection: Using Apache Lucene to searc...
 
Stc 2015 regional-round-ppt-exlopratory mobile testing with risk analysis
Stc 2015 regional-round-ppt-exlopratory mobile testing with risk analysisStc 2015 regional-round-ppt-exlopratory mobile testing with risk analysis
Stc 2015 regional-round-ppt-exlopratory mobile testing with risk analysis
 
CRIME EXPLORATION AND FORECAST
CRIME EXPLORATION AND FORECASTCRIME EXPLORATION AND FORECAST
CRIME EXPLORATION AND FORECAST
 
Continuous testing & devops with @petemar5hall
Continuous testing & devops with @petemar5hallContinuous testing & devops with @petemar5hall
Continuous testing & devops with @petemar5hall
 
Introduction to Software Testing
Introduction to Software TestingIntroduction to Software Testing
Introduction to Software Testing
 
SURVEY ON LINK LAYER ATTACKS IN COGNITIVE RADIO NETWORKS
SURVEY ON LINK LAYER ATTACKS IN COGNITIVE RADIO NETWORKSSURVEY ON LINK LAYER ATTACKS IN COGNITIVE RADIO NETWORKS
SURVEY ON LINK LAYER ATTACKS IN COGNITIVE RADIO NETWORKS
 
Thinking in software testing
Thinking in software testingThinking in software testing
Thinking in software testing
 
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
 
A Complexity Based Regression Test Selection Strategy
A Complexity Based Regression Test Selection StrategyA Complexity Based Regression Test Selection Strategy
A Complexity Based Regression Test Selection Strategy
 
Optimal Selection of Software Reliability Growth Model-A Study
Optimal Selection of Software Reliability Growth Model-A StudyOptimal Selection of Software Reliability Growth Model-A Study
Optimal Selection of Software Reliability Growth Model-A Study
 
The Rationale for Continuous Delivery
The Rationale for Continuous DeliveryThe Rationale for Continuous Delivery
The Rationale for Continuous Delivery
 
Keerthi report
Keerthi reportKeerthi report
Keerthi report
 
Taking Open Source Security to the Next Level
Taking Open Source Security to the Next LevelTaking Open Source Security to the Next Level
Taking Open Source Security to the Next Level
 
Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2
 
Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...
Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...
Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...
 
Sensors, threats, responses and challenges - Dr Emil Lupu (Imperial College L...
Sensors, threats, responses and challenges - Dr Emil Lupu (Imperial College L...Sensors, threats, responses and challenges - Dr Emil Lupu (Imperial College L...
Sensors, threats, responses and challenges - Dr Emil Lupu (Imperial College L...
 

Recently uploaded

Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 

Recently uploaded (20)

Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 

Interactive fault localization leveraging simple user feedback - by Liang Gong

  • 1. Interactive Fault Localization Leveraging Simple User Feedback Liang Gong1, David Lo2, Lingxiao Jiang2, and Hongyu Zhang1 Funded by 1 Tsinghua University 2 Singapore Management University
  • 2. Interactive Fault Localization Leveraging Simple User Feedback • Motivation • Outline Introduction & Framework Fault Localization • Interactive Fault Localization • • Technical Motivation Detailed Approach • Experiments • Settings & Results • Conclusion & Future work
  • 3. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization Debugging Software errors cost the US economy 59.5 billion dollars (0.6% of 2002's GDP) [1] Testing and debugging activities are labor-intensive (30% to 90% of a Project) [2] Problem Presented by Liang Gong School of Software Tsinghua University [1] National Institute of Standards and Technology (NIST). Software Errors Cost U.S. Economy $59.5 Billion Annually, June 28, 2002. [2] B. Beizer. Software Testing Techniques. International Thomson Computer Press, Boston, 2nd edition, 1990.
  • 4. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization Spectrum-based Fault Localization(abbr. SBFL) • Automatically recommend a list of suspicious program elements for inspection. SBFL Introduction • Program Spectra consists of coverage information and execution labels. Program Spectra Coverage information of one element (si) in all executions Profile of an execution trace Correct or incorrect?
  • 5. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization For a given statement S The formula Tarantula calculates the suspiciousness of S. No. of failed traces covering S Approaches Fault Localization Ochiai No. of failed traces Jaccard Presented by Liang Gong School of Software Tsinghua University No. of traces covering S Intuition: If S is covered more in failed traces and less in passed traces, it is more likely to contain faults.
  • 6. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization Program Goal: Research Spectra Process Motivation Fault Localization Techniques • An interactive fault localization method leveraging user feedback • Requires trivial or no additional effort Developer Static List of Suspicious Elements Batch Mode Fault Localization No feedback from human is utilized. Presented by Liang Gong School of Software Tsinghua University
  • 7. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization FaulT LocAlization Leveraging User FeedbacK (TALK) Our Method Introduction • Interactively and iteratively updates model according to feedback • Leveraging only simple feedback • one-size-fits-all approach Presented by Liang Gong School of Software Tsinghua University
  • 8. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization Process Program Spectra Feedback Motivation Fault Localization Techniques Developer Interactive List of Suspicious Elements Interactive Fault Localization Presented by Liang Gong School of Software Tsinghua University
  • 9. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization How to provide feedback which requires trivial additional effort? No. Feedback Opportunities Susp. S12 S11 S8 S9 S5 0.756 0.707 0.671 0.667 0.603 Program Element other += 1;} else if(isprint(c)) let += 1; else if('0'<=c && '9'>c) if('A'<=c && 'Z'>=c) Proposed Inspection List (interactive) Conventional Inspection List (static) Presented by Liang Gong School of Software Tsinghua University Buggy? Commit When developer examine the inspection list, they must judge if those statements are clean or faulty.
  • 10. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization With provided feedback, how to improve fault localization accuracy? Once a false positive(symptom) has been found Find the likely root cause for that symptom Feedback How to utilize ? Adjust the suspiciousness of root cause and re-rank No. Susp. S12 S11 S8 S9 S5 0.756 0.707 0.671 0.667 0.603 Program Element Buggy? other += 1;} else if(isprint(c)) let += 1; else if('0'<=c && '9'>c) if('A'<=c && 'Z'>=c) likely root cause Presented by Liang Gong School of Software Tsinghua University
  • 11. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization How to find the likely root cause of a symptom? Investigating co-occurrences of program elements in failed executions to identify root cause candidate Root Cause How to find ? t1 t2 t3 … … … … s1 s2 s3 s4 s5 s6                   … … … … p/f fail fail pass False positive (Symptom) Intuition: If s3 has been identified as false positive, Presented by Liang Gong School of Software Tsinghua University then s2 is more likely to be the root cause than s1. As s2 co-appears more with s3 in failed traces.
  • 12. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization Identifying a Root Cause from Its Symptom. • Evaluate the co-appearance score of statements (root cause candidate) Rule: R1 Detailed Approach Co-appearance from traces covering less statements weights higher • Select candidate with most co-appearance score as the root cause Presented by Liang Gong School of Software Tsinghua University Intuition: Statements co-appeared more with symptom in failed traces covering less statements are more likely to be chosen as the root cause.
  • 13. With the spectra T and symptom S, and how to Diversity Maximization Speedup for Fault Localization the suspiciousness score of the root cause Sr ? Consists of all traces covering root cause Sr adjust If Sr is the real root cause, then fT(Sr)(s) be very HIGH. split Test Case Prioritization introduction Spectra T(Sr) Suspiciousness of Symptom: fT(Sr)(s) fT(Sr)(s) - fT(Sr)(s) Spectra T Spectra T(Sr) Presented by Liang Gong Consists of all traces not covering root cause Sr School of Software Tsinghua University The larger this metric is, the more suspiciousness Suspiciousness score Sr will get. of Symptom: fT(Sr)(s) If Sr is the real root cause, then fT(Sr)(s) be very LOW
  • 14. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization Rule: R1 Detailed Approach Presented by Liang Gong School of Software Tsinghua University With the symptom, how to adjust the suspiciousness score of the root cause? • Calculate the suspiciousness difference of symptom in spectra covering and not covering root cause. • Contribute the suspiciousness difference of symptom to the suspiciousness of its root cause Intuition: If the suspiciousness of symptom becomes larger when root cause is covered, the root cause is more suspicious.
  • 15. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization Rule 2 Focusing on a Single Failed Execution Profile t1 t2 t3 … … … … s1 s2 s3 s4 s5 s6                   … … … … p/f fail fail pass In this case, focusing on statements covered by t1 will quickly identify at least one bug. As only two statements have to be examined. Introduction • Find out the failed profile tmin covering the least number of unexamined elements. • For each program element si that is covered in tmin Presented by Liang Gong School of Software Tsinghua University A constant making sure that statements covered by tmin are examined first.
  • 16. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization Initial Process: Conventional Fault Localization Processing Overall False Positive with Rule Algorithm1 Introduction If a bug has been confirmed, record it for Rule 2 Apply Rule 2 Presented by Liang Gong School of Software Tsinghua University Processing Feedback
  • 17. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization Benchmarks for Fault Localization 1 Experiment Dataset & Evaluation Metric 2 1 Siemens Suite 2 UNIX Programs Evaluation Metric for Fault Localization: Presented by Liang Gong School of Software Tsinghua University
  • 18. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization Research Questions Investigated: Experiment Research Questions Presented by Liang Gong School of Software Tsinghua University Is user feedback helpful for improving fault localization accuracy? What is the relative effectiveness of the two rules to improve fault localization?
  • 19. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization Conventional Fault Localization Technique f Interactive Fault Localization Technique f+ f+ vs f f+ requires 40% less debugging cost than f on faulty version 4 Comparison Introduction Presented by Liang Gong School of Software Tsinghua University f+ requires 30% more debugging cost than f on faulty version 2
  • 20. Diversity Maximization Speedup for Fault Localization Improvement of TALK on Existing Methods Test Case Prioritization introduction Ochiai+ vs Ochiai Presented by Liang Gong School of Software Tsinghua University Jaccard+ vs Jaccard Tarantula+ vs Tarantula Pair-wised T-test shows the improvements are statistically significant at 95% interval.
  • 21. Diversity Maximization Speedup Interactive Fault Localization Leveraging Simple User Feedback for Fault Localization Research Questions Investigated: Experiment Research Questions Presented by Liang Gong School of Software Tsinghua University Is user feedback helpful for improving fault localization accuracy? What is the relative effectiveness of the two rules to improve fault localization?
  • 22. Contributions of R1 and R2 Diversity Maximization Speedup for Fault Localization on Improving Fault Localization Effectiveness Test Case Prioritization introduction Improvement from R1 Presented by Liang Gong School of Software Tsinghua University Improvement from R2 Improvement from R1 + R2
  • 23. Diversity Maximization Speedup Interactive Fault Localization for Fault Localization Leveraging Simple User Feedback Fault Localization (state-of-the-arts)     Related Works Introduction WHITHER[Renieris and Reiss] Liblit05[Liblit] Delta Debugging[Zeller] Tarantula[Harrold], Ochiai etc. Interactive Fault Localization Hao et al. propose an technique [JCST]  Record sequential execution trace  Judge whether the fault is executed before or after the checking point. Presented by Liang Gong School of Software Tsinghua University Lucia et al. adopt user feedback for clone-based bug detection approaches [ICSE 12] Insa et al. propose a strategy for algorithmic debugging which asks user questions concerning program state. [ASE 11]
  • 24. Diversity Maximization Speedup Interactive Fault Localization for Fault Localization Leveraging Simple User Feedback Threats to Validity Construct Validity (Evaluation Metric) We use a cost metric that has been utilized to evaluate past fault localization techniques. We believe this is a fair and well-accepted metric. External Validity (Generalizability) All of subjects are written in C. In the future, we plan to investigate more programs written in various programming languages. What if user provides a wrong feedback? Presented by Liang Gong School of Software Tsinghua University
  • 25. Diversity Maximization Speedup Interactive Fault Localization for Fault Localization Leveraging Simple User Feedback What if user provides a wrong feedback? Since we use simple feedbacks, mistakes can only be: Threats to Validity  Clean Statement labeled as Faulty In this case, when developers try to fix the “bug”, they will realize their mistake.  Faulty Statement labeled as Clean Most fault localization techniques are evaluated by assuming a user is always correct when ascertaining if an element is buggy or correct. Presented by Liang Gong School of Software Tsinghua University In future: Allow users to rollback their feedback if they made mistakes.
  • 26. Diversity Maximization Speedup Interactive Fault Localization for Fault Localization Leveraging Simple User Feedback • Conclusions A novel interactive method TALK for fault localization:  TALK leverages user feedback while limits the additional manual cost incurred. Conclusion & Future Work  TALK is a one-size-fits-all approach that can be applied to most existing static SBFL techniques. Thank you!  Empirical studies on 12 C programs shows that TALK can help to significantly improve the fault localization accuracy. •• Any questions? Future Work ... • Evaluate on more subject programs. • Try different strategies to further utilize user feedback Presented by Liang Gong School of Software Tsinghua University • Enhance TALK by allowing users to rollback their feedback if they made mistakes