This document revisits the effect of different branch handling strategies on change recommendation performance. It examines two settings - one that excludes commits in branches and one that includes merging changes. The authors investigate how the setting difference influences recommendation results and which branch characteristics, like length and merge size, affect performance of the change recommendations. They find that the setting difference does influence performance and that longer branches and larger merge sizes tend to have a positive impact on recommendation precision.
Revisiting the Effect of Branch Handling Strategies on Change Recommendation
1. Revisiting the Effect of
Branch Handling Strategies
on Change Recommendation
Keisuke
Isemoto
Shinpei
Hayashi
Takashi
Kobayashi TokyoTech.
Japan
[ Branches by ishyam79: https://www.flickr.com/photos/sjekkiebunzing/13009723845/ ]
Preprint: https://arxiv.org/abs/2204.04423
2. Change Recommendation
Based on Evolutionary Coupling
2
Change
history
A B
C D
A B
C D
C
A B
Changed
A
How
about
?
B
Changesets Change
recommendation
Association
rules
3. [ Branches by ishyam79: https://www.flickr.com/photos/sjekkiebunzing/13009723845/ ]
Branches
Changes directly commited
on the main branch
Merging change
Changes commited
on a branch
4. Branch Handling Strategies by Kovalenko et al.
4
Slightly
better!
Full
First
Parent
A B
C
A
A
A
A
all commits
w/o merging
changes
excluding
commits
in branches
Kovalenko et al.: Mining file histories: should we consider branchces? ASE 2018.
5. Branch Handling Strategies by Kovalenko et al.
5
Slightly
better!
Full
First
Parent
A B
C
A
A
A
A
all commits
w/o merging
changes
excluding
commits
in branches
Kovalenko et al.: Mining file histories: should we consider branchces? ASE 2018.
?
6. Branch Handling Strategies
6
Full
First
Parent
M First
Parent
M
A B
C
A
A
A
A
A B C
A
A
all commits
w/o merging
changes
excluding
commits
in branches
excluding commits
in branches but
w/ merging changes
7. Research Questions
RQ1:
Does the setting difference influence
recommendation performance?
7
[ protractors by Dean Hochman: https://www.flickr.com/photos/deanhochman/14481958642/ ]
RQ2:
Which branches characteristics affect the
performance of change recommendations?
8. Difference of Studies
8
Setting by
Kovalenko et al.
Replication setting
(Impno_merge)
Setting using
merging changes
(Impmerge)
Strategies
# repos 20 24 30
Evaluation
criteria
Success rate
# recommendations
Success rate
# recommendations
MAP
# wins in AP
Success rate
# recommendations
MAP
# wins in AP
Effect of
metrics
Effect of
implementation
Effect of
repositories
Full First
Parent
M
First
Parent
M
Full
First
Parent
M
Full
vs. vs. vs.
9. Does the setting difference influence
recommendation performance?
9
RQ
1
# wins in AP
Success rate
16 13
15 12
13 9
15 2
5 5
8 0
MAPall
(5% significant level)
Full
First
Parent
M
vs.
First
Parent
M
Full vs.
YES
10. Which branches characteristics
affect the performance?
10
RQ
2
Precision
Length⬆ → Branch👍
Merge commit size
Branch length
Branch
First
Parent
M
Full Merge
Size⬆ → Branch👍
11. [ Branches by ishyam79: https://www.flickr.com/photos/sjekkiebunzing/13009723845/ ]
Revisiting the Effect of
Branch Handling Strategies
on Change Recommendation
Does the setting difference influence
recommendation performance?
9
RQ
1
# wins in AP
Success rate
16 13
15 12
13 9
15 2
5 5
8 0
MAPall
(5% significant level)
Full
First
Parent
M
vs.
First
Parent
M
Full vs.
YES
Branch Handling Strategies
6
Full
First
Parent
M First
Parent
M
A B
C
A
A
A
A
A B C
A
A
all commits
w/o merging
changes
excluding
commits
in branches
excluding commits
in branches but
w/ merging changes
Which branches characteristics
affect the performance?
10
RQ
2
Precision
Length⬆ → Branch"
Merge commit size
Branch length
Branch
First
Parent
M
Full Merge
Size⬆ → Branch"