Blogs (1) >>
ICSE 2019
Sat 25 - Fri 31 May 2019 Montreal, QC, Canada
Wed 29 May 2019 12:10 - 12:20 at Place du Canada - Mining of Software Properties and Patterns Chair(s): Julia Rubin

When multiple developers change a software system in parallel, these concurrent changes need to be merged to all appear in the software being developed. Numerous merge techniques have been proposed to support this task, but none of them can fully automate the merge process. Indeed, it has been reported that as much as 10% to 20% of all merge attempts result in a merge conflict, meaning that a developer has to manually complete the merge. To date, we have little insight into the nature of these merge conflicts. What do they look like, in detail? How do developers resolve them? Do any patterns exist that might suggest new merge techniques that could reduce the manual effort? This paper contributes an in-depth study of the merge conflicts found in the histories of 2,731 open source Java projects. Seeded by the manual analysis of the histories of five projects, our automated analysis of all 2,731 projects: (1) characterizes the merge conflicts in terms of number of chunks, size, and programming language constructs involved, (2) classifies the manual resolution strategies that developers use to address these merge conflicts, and (3) analyzes the relationships between various characteristics of the merge conflicts and the chosen resolution strategies. Our results give rise to three primary recommendations for future merge techniques, that – when implemented – could on one hand help in automatically resolving certain types of conflicts and on the other hand provide the developer with tool-based assistance to more easily resolve other types of conflicts that cannot be automatically resolved.

Wed 29 May
Times are displayed in time zone: (GMT-04:00) Eastern Time (US & Canada) change

11:00 - 12:30: Papers - Mining of Software Properties and Patterns at Place du Canada
Chair(s): Julia RubinUniversity of British Columbia
icse-2019-Technical-Papers11:00 - 11:20
Musfiqur RahmanConcordia University, Montreal, Canada, Dharani PalaniConcordia University, Peter RigbyConcordia University, Montreal, Canada
icse-2019-Technical-Papers11:20 - 11:40
Vaibhav SainiMicrosoft, USA, Farima FarmahinifarahaniUniversity of California at Irvine, USA, Yadong LuUniversity of California at Irvine, USA, Di YangUniversity of California at Irvine, USA, Pedro MartinsUniversity of California at Irvine, USA, Hitesh SajnaniMicrosoft , Pierre BaldiUniversity of California at Irvine, USA, Crista Lopes
icse-2019-Journal-First-Paper11:40 - 11:50
Patanamon ThongtanunamThe University of Melbourne, Weiyi ShangConcordia University, Canada, Ahmed E. HassanQueen's University
icse-2019-Journal-First-Paper11:50 - 12:00
Elder Vicente De Paulo SobrinhoFederal University of Triangulo Mineiro, Andrea De LuciaUniversity of Salerno, Marcelo De Almeida MaiaFederal University of Uberlandia
icse-2019-Journal-First-Paper12:00 - 12:10
Fabio PalombaUniversity of Zurich, Damian Andrew TamburriTU/e, Francesca Arcelli FontanaUniversity of Milano-Bicocca, Rocco OlivetoUniversity of Molise, Andy ZaidmanTU Delft, Alexander SerebrenikEindhoven University of Technology
icse-2019-Journal-First-Paper12:10 - 12:20
Gleiph GhiottoUFJF, Leonardo MurtaUniversidade Federal Fluminense (UFF), Marcio BarrosUNIRIO, Andre van der Hoek University of California, Irvine
icse-2019-Paper-Presentations12:20 - 12:30