On the assignment of commits to releases

被引:0
作者
Felipe Curty do Rego Pinto
Leonardo Gresta Paulino Murta
机构
[1] Universidade Federal Fluminense,Instituto de Computação
来源
Empirical Software Engineering | 2023年 / 28卷
关键词
Release; Release mining; Commit assignment; Release analysis;
D O I
暂无
中图分类号
学科分类号
摘要
Release is a ubiquitous concept in software development, referring to grouping multiple independent changes into a deliverable piece of software. Mining releases can help developers understand the software evolution at coarse grain, identify which features were delivered or bugs were fixed, and pinpoint who contributed on a given release. A typical initial step of release mining consists of identifying which commits compose a given release. We could find two main strategies used in the literature to perform this task: time-based and range-based. Some release mining works recognize that those strategies are subject to misclassifications but do not quantify the impact of such a threat. This paper analyzed 13,419 releases and 1,414,997 commits from 100 relevant open-source projects hosted at GitHub to assess both strategies in terms of precision and recall. We observed that, in general, the range-based strategy has superior results than the time-based strategy. Nevertheless, even when the range-based strategy is in place, some releases still show misclassifications. Thus, our paper also discusses some situations in which each strategy degrades, potentially leading to bias on the mining results if not adequately known and avoided.
引用
收藏
相关论文
共 36 条
[11]  
Borges H(undefined)undefined undefined undefined undefined-undefined
[12]  
Tulio Valente M(undefined)undefined undefined undefined undefined-undefined
[13]  
Hammad M(undefined)undefined undefined undefined undefined-undefined
[14]  
Khomh F(undefined)undefined undefined undefined undefined-undefined
[15]  
Adams B(undefined)undefined undefined undefined undefined-undefined
[16]  
Dhaliwal T(undefined)undefined undefined undefined undefined-undefined
[17]  
Zou Y(undefined)undefined undefined undefined undefined-undefined
[18]  
Mäntylä MV(undefined)undefined undefined undefined undefined-undefined
[19]  
Adams B(undefined)undefined undefined undefined undefined-undefined
[20]  
Khomh F(undefined)undefined undefined undefined undefined-undefined