arrow
Return

RefactorScore: Evaluating Refactor Prone Code

delete2023-11-01
delete1
PRE
AI
K
Kevin Jesse *
C
Christoph Kuhmuench
A
Anand Ashok Sawant
DOI:10.1109/TSE.2023.3324613delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
We propose RefactorScore, an automatic evaluation metric for code. RefactorScore computes the number of refactor prone locations on each token in a candidate file and maps the occurrences into a quantile to produce a score. RefactorScore is evaluated across 61,735 commits and uses a model called RefactorBERT trained to predict refactors on 1,111,246 commits. Finally, we validate RefactorScore on a set of industry leading projects providing each with a RefactorScore. We calibrate RefactorScore's detection of low quality code with human developers through a human subject study. RefactorBERT, the model driving the scoring mechanism, is capable of predicting defects and refactors predicted by RefDiff 2.0. To our knowledge, our approach, coupled with the use of large scale data for training and validated with human developers, is the first code quality scoring metric of its kind.
Keywords:
Codes
Java
Measurement
Unified modeling language
Predictive models
C plus plus languages
Computational modeling
Refactor
automatic evaluation
machine learning
software repositories

Journal

IEEE Transactions on Software Engineering cover
IEEE Transactions on Software Engineering
IF:
5.6
Papers:
2.8K
Citations:
1.1W

Organization

S
siemens ag
Scholars:
5.6K
Papers: 4.6K
Citations: 3
U
university of california davis
Scholars:
3.4W
Papers: 2.6W
Citations: 45
University of California System cover
University of California System
Scholars:
37.5W
Papers: 33.7W
Citations: 6.6K
researcher View more organizations