Last updated on Monday, October 06, 2025
@inproceedings{Ramkisoen2022esecfse,
author = {Ramkisoen, Poedjadevie Kadjel and Businge, John and
Van Bradel, Brent and Decan, Alexandre and
Demeyer, Serge and De Roover, Coen and Khomh, Foutse},
booktitle = {Proceedings {ESEC/FSE 2022} (ACM Joint European
Software Engineering Conference and Symposium on the
Foundations of Software Engineering)},
title = {PaReco: Patched Clones and Missed Patches among the
Divergent Variants of a Software Family},
year = {2022},
abstract = {Re-using whole repositories as a starting point for
new projects isoften done by maintaining a variant
fork parallel to the original. However, the common
artifacts between both are not always keptup to date.
As a result, patches are not optimally integrated
acrossthe two repositories, which may lead to
sub-optimal maintenance between the variant and the
original project. A bug existing in both repositories
can be patched in one but not the other (we see this
as amissed opportunity) or it can be manually patched
in both probablyby different developers (we see this
as effort duplication). In this paper we present a
tool (named PaReco) which relies on clone detection
to mine cases of missed opportunity and effort
duplicationfrom a pool of patches. We analyzed 364
(source - target) variant pairs with 8,323 patches
resulting in a curated dataset containing1,116 cases
of effort duplication and 1,008 cases of missed
opportunities. We achieve a precision of 91\%, recall
of 80\%, accuracy of 88\%,and F1-score of 85\%.
Furthermore, we investigated the time intervalbetween
patches and found out that, on average, missed
patches inthe target variants have been introduced in
the source variants 52 weeks earlier. Consequently,
PaReco can be used to manage variability in ``time''
by automatically identifying interesting patches in
later project releases to be backported to supported
earlier releases.},
annote = {internationalconference},
top = {A* in CORE2021},
doi = {https://doi.org/10.1145/3540250.3549112},
}