arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2005.13904cs.SEcs.LG
收藏

利用Source Code密度提高维修活动自动提交分类的准确性

Using Source Code Density to Improve the Accuracy of Automatic Commit Classification into Maintenance Activities

Linnaeus University(林奈大学)

Sebastian Hönel, Morgan Ericsson, Welf Löwe, Anna Wingkvist

摘要:

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

英文摘要:

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.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑