ConE: A Concurrent Edit Detection Tool for Large Scale Software Development

by Maddila, Chandra and Nagappan, Nachiappan and Bird, Christian and Gousios, Georgios and van Deursen, Arie

You can get a pre-print version from here.

Abstract

Developers from different teams or organizations, co-located or distributed, making changes to the same source code files or areas, through pull requests that are active in the same time period, is an essential part of developing complex software systems. With such a dynamically changing environment spanning several boundaries, geographic and organizational, there is little awareness about the changes that are flowing in through other active pull requests in the system leading to complex merge conflicts, hard-to-detect logical bugs or duplication of work and wasted developer productivity. In order to address this problem, we studied changes produced in eight very large repositories, in Microsoft to understand the extent of concurrent edits and their relation to subsequent bugs and bug fixes. Motivated by our findings, we developed a system called ConE (Concurrent Edit Detector) that proactively detects concurrent edits to help mitigate the problems caused by them. We present the results of ConE’s deployment through early intervention techniques such as pull request notifications, by which ConE facilitates better communication among all the stakeholders participating in collaborative software development, helping avoid future problems.

Bibtex record

@misc{MNBGD21pp,
  title = {ConE: A Concurrent Edit Detection Tool for Large Scale Software Development},
  author = {Maddila, Chandra and Nagappan, Nachiappan and Bird, Christian and Gousios, Georgios and van Deursen, Arie},
  year = {2021},
  eprint = {2101.06542},
  archiveprefix = {arXiv},
  primaryclass = {cs.SE},
  url = {https://arxiv.org/pdf/2101.06542}
}

The paper