How are Discussions Associated with Bug Reworking? An Empirical Study on Open Source Projects
1. How Are Discussions Associated with Bug
Reworking? An Empirical Study on Open
Source Projects
Feng
Zhang
Ying Zou Ahmed
E.Hassan
Emad
Shihab
Yu Zhao
3. Motivating Example
3
“All in all, I am not convinced that
these shortcuts been discussed enough
and this issue should not be closed”
“Reopening. Unfortunately, the
current implementation isn’t quite
right”
During the bug fixing, developers discuss like this
Does the discussion impact bug
reworking?
4. Dataset
4
Project LOC # Fixed
Linux 17.6M 8,410
Firefox 7.0M 27,759
PDE 472K 8,510
Ant 136K 2704
HTTP 510K 2,333
5. Research Questions
• RQ1: (Quantitative) How do the
initial-fix discussions impact the
likelihood of experiencing bug
reworking?
• RQ2: (Qualitative) Do initial-fix
discussions raise different topics in
the reworked bug fixes as compared
to the bug fixes without reworking?
5
9. RQ1:How do the initial-fix discussions
impact the likelihood of experiencing
bug reworking?
9
Control
Group
Bug Report
Use Fisher’s
Exact Test to
Evaluate the
Hypothesis
Experiment
al Group
the proportion of reworked bug fixes in the
experimental group and the control group has no
difference.
10. RQ1: Results
10
Initial-fix discussions with more
comments, more developers are more
likely to experience bug re-opening and
re-patching.
0
0.5
1
1.5
2
OddsRatio
Bug Re-opening
0
0.5
1
1.5
2
2.5
Duration #
Comments
Dispersion #
Developer
OddsRatio
Bug Re-patching
11. RQ1: Manual Analysis Results
11
Initial-fix discussions with more
comments, more developers are more
likely to experience bug re-opening and
re-patching.
0
0.5
1
1.5
2
OddsRatio
Bug Re-opening
0
0.5
1
1.5
2
2.5
Duration #
Comments
Dispersion #
Developer
OddsRatio
Bug Re-patching
a)Defective Fixes: Approaches are
not fully discussed
b)Incorrect Categorization of
Duplicated Bugs.
12. RQ1: Manual Analysis Results
12
Initial-fix discussions with more
comments, more developers are more
likely to experience bug re-opening and
re-patching.
0
0.5
1
1.5
2
OddsRatio
Bug Re-opening
0
0.5
1
1.5
2
2.5
Duration #
Comments
Dispersion #
Developer
OddsRatio
Bug Re-patching
13. RQ1: Manual Analysis Results
13
Initial-fix discussions with more
comments, more developers are more
likely to experience bug re-opening and
re-patching.
0
0.5
1
1.5
2
OddsRatio
Bug Re-opening
0
0.5
1
1.5
2
2.5
Duration #
Comments
Dispersion #
Developer
OddsRatio
Bug Re-patching
Did not reach a consens
14. RQ1: Manual Analysis Results
14
Initial-fix discussions with more
comments, more developers are more
likely to experience bug re-opening and
re-patching.
0
0.5
1
1.5
2
OddsRatio
Bug Re-opening
0
0.5
1
1.5
2
2.5
Duration #
Comments
Dispersion #
Developer
OddsRatio
Bug Re-patching
a)Burst of Discussion: Address a
particular problem
b)Throughout the initial-fix period: lack
of code review and testing
15. RQ2: Do initial-fix discussions raise different
topics in the reworked bug fixes as compared
to the bug fixes without reworking?
15
There is no difference in the distribution of topics
between bugs that are never reworked and ones that
are reworked.
Apply LDA to
Extract Topics
Perform
Wilcoxon
Rank-Sum
Test
Bug
Reports
Reworked
Never
Reworked
16. RQ2: Results
16
Bug Re-opening
Bug Re-patching
Topic
Code Inspection <
Customization Settings >
Patch Creation <
Topic
Content
Misunderstanding
>
Solution Implementation >
Code Testing <
Among all the
extracted topics,
there are several
topics showing a
consistent
association with
bug re-opening
and bug re-
patching.