当前位置: X-MOL 学术J. Syst. Softw. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Using source code density to improve the accuracy of automatic commit classification into maintenance activities
Journal of Systems and Software ( IF 3.5 ) Pub Date : 2020-10-01 , DOI: 10.1016/j.jss.2020.110673
Sebastian Hönel , Morgan Ericsson , Welf Löwe , Anna Wingkvist

Source code is changed for a reason, e.g., to adapt, correct, or adapt it. This reason can provide valuable insight into the development process but is rarely explicitly documented when the change is committed to a source code repository. Automatic commit classification uses features extracted from commits to estimate this reason. We introduce source code density, a measure of the net size of a commit, and show how it improves the accuracy of automatic commit classification compared to previous size-based classifications. We also investigate how preceding generations of commits affect the class of a commit, and whether taking the code density of previous commits into account can improve the accuracy further. We achieve up to 89% accuracy and a Kappa of 0.82 for the cross-project commit classification where the model is trained on one project and applied to other projects. Models trained on single projects yield accuracies of up to 93% with a Kappa approaching 0.90. The accuracy of the automatic commit classification has a direct impact on software (process) quality analyses that exploit the classification, so our improvements to the accuracy will also improve the confidence in such analyses.

中文翻译:

使用源代码密度提高自动提交分类到维护活动的准确性

出于某种原因更改源代码,例如,为了适应、更正或适应它。这个原因可以提供对开发过程的宝贵见解,但在将更改提交到源代码存储库时很少明确记录。自动提交分类使用从提交中提取的特征来估计这个原因。我们介绍了源代码密度,这是对提交净大小的一种度量,并展示了与以前基于大小的分类相比,它如何提高自动提交分类的准确性。我们还研究了前几代提交如何影响提交的类别,以及考虑前几代提交的代码密度是否可以进一步提高准确性。我们实现了高达 89% 的准确率和 0 的 Kappa。82 用于跨项目提交分类,其中模型在一个项目上训练并应用于其他项目。在单个项目上训练的模型的准确率高达 93%,Kappa 接近 0.90。自动提交分类的准确性对利用分类的软件(过程)质量分析有直接影响,因此我们对准确性的改进也将提高对此类分析的信心。
更新日期:2020-10-01
down
wechat
bug