Semantic conflict detection with overriding assignment analysis

  • Matheus Barbosa UFPE
  • Paulo Borba UFPE
  • Rodrigo Bonifacio UnB
  • Galileu Santos UFPE

Resumo


Developers typically work collaboratively and often need to embed their code into a major version of the system. This process can cause merge conflicts, affecting team productivity. Some of these conflicts require understanding software behavior (semantic conflicts) and current version control tools are not able to detect that. So here we explore how such conflicts could be automatically detected using static analysis of the integrated code. We propose and implement an assignment overriding analysis, which aims to detect interference between changes introduced by two different developers, where write paths, without intermediate assignments, to a common target indicate interference. To evaluate the implementations of the proposed analysis, a set of 78 code integration scenarios was used. The results show that the proposed analysis is able to detect scenarios with assignment overriding and with locally observable interference between the contributions.

Publicado
03/10/2022
Como Citar

Selecione um Formato
BARBOSA, Matheus; BORBA, Paulo; BONIFACIO, Rodrigo; SANTOS, Galileu. Semantic conflict detection with overriding assignment analysis. In: SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE (SBES), 36. , 2022, Uberlândia. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2022 . p. 435–445.