Write a Blog >>
SPLASH 2019
Sun 20 - Fri 25 October 2019 Athens, Greece
Fri 25 Oct 2019 12:07 - 12:30 at Templars - Repair & Transformation Chair(s): Bor-Yuh Evan Chang

In modern software development, developers rely on version control systems like Git to collaborate in the branch-based development workflow. One downside of this workflow is the conflicts occurred when merging contributions from different developers: these conflicts are tedious and error-prone to be correctly resolved, reducing the efficiency of collaboration and introducing potential bugs. The situation becomes even worse, with the popularity of refactorings in software development and evolution, because current merging tools (usually based on the text or tree structures of source code) are unaware of refactorings. In this paper, we present IntelliMerge, a graph-based refactoring-aware merging algorithm for Java programs. We explicitly enhance this algorithm's ability in detecting and resolving refactoring-related conflicts. Through the evaluation on 1,070 merge scenarios from 10 popular open-source Java projects, we show that IntelliMerge reduces the number of merge conflicts by 58.90% comparing with GitMerge (the prevalent unstructured merging tool) and 11.84% comparing with jFSTMerge (the state-of-the-art semi-structured merging tool) without sacrificing the auto-merging precision (88.48%) and recall (90.22%). Besides, the evaluation of performance shows that IntelliMerge takes 539 milliseconds to process one merge scenario on the median, which indicates its feasibility in real-world applications.

Fri 25 Oct

Displayed time zone: Beirut change

11:00 - 12:30
Repair & TransformationOOPSLA at Templars
Chair(s): Bor-Yuh Evan Chang University of Colorado Boulder | Amazon
11:00
22m
Talk
Detecting Nondeterministic Payment Bugs in Ethereum Smart Contracts
OOPSLA
Shuai Wang Hong Kong University of Science and Technology, Chengyu Zhang East China Normal University, Zhendong Su ETH Zurich
DOI
11:22
22m
Talk
Automatic Repair of Regular Expressions
OOPSLA
Rong Pan University of Texas at Austin, Qinheping Hu University of Wisconsin, Madison, Gaowei Xu University of Wisconsin Madison, Loris D'Antoni University of Wisconsin Madison
DOI Pre-print
11:45
22m
Talk
Getafix: Learning to Fix Bugs Automatically
OOPSLA
Johannes Bader Facebook, Andrew Scott Facebook, Michael Pradel University of Stuttgart, Satish Chandra Facebook
DOI Pre-print
12:07
22m
Talk
IntelliMerge: A Refactoring-Aware Software Merging Technique
OOPSLA
Bo Shen Peking University, Wei Zhang Peking University, Haiyan Zhao Peking University, Guangtai Liang Huawei Technologies Co. Ltd, Zhi Jin Peking University, Qianxiang Wang Huawei Technologies Co. Ltd
DOI