Blogs (1) >>
ASE 2019
Sun 10 - Fri 15 November 2019 San Diego, California, United States
Thu 14 Nov 2019 16:00 - 16:20 at Cortez 2&3 - Untangling and Merging Chair(s): Iftekhar Ahmed

Merge conflicts often occur when developers concurrently change the same code artifacts. While state-of-practice unstructured merge tools (e.g git merge) try to automatically resolve merge conflicts based on textual similarity, semistructured and structured merge tools try to go further by exploiting the syntactic structure and semantics of the involved artifacts. Although there is evidence that semistructured merge has significant advantages over unstructured merge, and that structured merge reports significantly less conflicts than unstructured merge, it is unknown how semistructured merge compares with structured merge. To help developers decide which kind of tool to use, we compare semistructured and structured merge in an empirical study by reproducing more than 40,000 merge scenarios from more than 500 projects. In particular, we assess how often the two merge strategies report different results, we identify conflicts incorrectly reported by one but not by the other (false positives), and conflicts correctly reported by one but missed by the other (false negatives). Our results show that semistructured and structured merge differ on 24% of the scenarios with conflicts. Semistructured merge reports more false positives, whereas structured merge has more false negatives. Finally, we observe that adapting a semistructured merge tool to resolve a particular kind of conflict makes semistructured and structured merge even closer.

Thu 14 Nov

ase-2019-paper-presentations
16:00 - 17:40: Papers - Untangling and Merging at Cortez 2&3
Chair(s): Iftekhar AhmedUniversity of California at Irvine, USA
ase-2019-papers16:00 - 16:20
Talk
The Impact of Structure on Software Merging: Semistructured versus Structured Merge
Guilherme CavalcantiFederal University of Pernambuco, Brazil, Paulo BorbaFederal University of Pernambuco, Brazil, Georg SeibtUniversity of Passau, Sven ApelSaarland University
Pre-print
ase-2019-papers16:20 - 16:40
Talk
Semistructured Merge in JavaScript Systems
Alberto Trindade TavaresFederal University of Pernambuco, Paulo BorbaFederal University of Pernambuco, Brazil, Guilherme CavalcantiFederal University of Pernambuco, Brazil, Sergio SoaresFederal University of Pernambuco
Pre-print
ase-2019-papers16:40 - 17:00
Talk
CLCDSA: Cross Language Code Clone Detection using Syntactical Features and API Documentation
Kawser NafiUniversity of Saskatchewan, Tonny Shekha KarUniversity of Saskatchewan, Canada, Banani RoyUniversity of Saskatchewan, Chanchal K. RoyUniversity of Saskatchewan, Kevin SchneiderUniversity of Saskatchewan
ase-2019-papers17:00 - 17:20
Talk
B2SFinder: Detecting Open-Source Software Reuse in COTS Software
Muyue FengInstitute of Information Engineering, Chinese Academy of Sciences, Zimu YuanInstitute of Information Engineering, Chinese Academy of Sciences, Feng LiInstitute of Computing Technology at Chinese Academy of Sciences, China, Gu BanInstitute of Information Engineering, Chinese Academy of Sciences, Yang XiaoInstitute of Information Engineering, Chinese Academy of Sciences & School of Cyber Security, University of Chinese Academy of Sciences, Shiyang WangInstitute of Information Engineering, Chinese Academy of Sciences, Qian TangInstitute of Information Engineering, Chinese Academy of Sciences, He SuInstitute of Information Engineering, Chinese Academy of Sciences, Chendong YuUniversity of Chinese Academy of Sciences, Jiahuan XuInstitute of Information Engineering, Chinese Academy of Sciences, Aihua PiaoInstitute of Information Engineering, Chinese Academy of Sciences, Jingling XueUNSW Sydney, Wei HuoInstitute of Information Engineering, Chinese Academy of Sciences
ase-2019-papers17:20 - 17:40
Talk
CoRA: Decomposing and Describing Tangled Code Changes for Reviewer
Min WangPeking University, Zeqi LinMicrosoft Research, China, Yanzhen ZouPeking University, Bing XiePeking University