Identifying Redundancies in Fork-based Development

Luyao Ren, Shurui Zhou, Christian Kästner, Andrzej Wasowski

Research output: Conference Article in Proceeding or Book/Report chapterArticle in proceedingsResearchpeer-review

Abstract

Fork-based development is popular and easy to use, but makes it difficult to maintain an overview of the whole community when the number of forks increases. This may lead to redundant development where multiple developers are solving the same problem in parallel without being aware of each other. Redundant development wastes effort for both maintainers and developers. In this paper, we designed an approach to identify redundant code changes in forks as early as possible by extracting clues indicating similarities between code changes, and building a machine learning model to predict redundancies. We evaluated the effectiveness from both the maintainer's and the developer's perspectives. The result shows that we achieve 57-83% precision for detecting duplicate code changes from maintainer's perspective, and we could save developers' effort of 1.9-3.0 commits on average. Also, we show that our approach significantly outperforms existing state-of-art.
Original languageEnglish
Title of host publicationThe 26th IEEE International Conference on Software Analysis Evolution and Reengineering, Hangzhou, China, Februrary 24-27, 2019
PublisherIEEE
Publication date2019
ISBN (Print)978-1-7281-0592-5
ISBN (Electronic)978-1-7281-0591-8
DOIs
Publication statusPublished - 2019

Keywords

  • Fork-based development
  • Redundant development
  • Machine learning model
  • Duplicate code detection
  • Software maintainers

Fingerprint

Dive into the research topics of 'Identifying Redundancies in Fork-based Development'. Together they form a unique fingerprint.

Cite this