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.9K
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.7W
Papers: 33.8W
Citations: 6.6K
researcher View more organizations
Cited Papers

Cited Papers

Television Viewing and Children's Health
err2007-02-23
err0
PREAI
errJyu‐Lin Chen; Christine M. Kennedy; Ann Froese‐Fretz
errShare
errSave
Self‐Stabilized Hydrogenation of Amorphous InGaZnO Schottky Diode with Bilayer Passivation
err2022-06-23
err0
PREAI
errJitong Zhou; Wengao Pan; Dawei Zheng; Fayang Liu; Guijun Li; Xianda Zhou; Kai Wang; Shengdong Zhang; Lei Lu
errShare
errSave
The Effectiveness of Supervised Machine Learning Algorithms in Predicting Software Refactoring
err2022-04-01
err40
errOAAI
errAniche, Mauricio; Maziero, Erick; Durelli, Rafael; Durelli, Vinicius H. S.
errShare
errSave
errShare
errSave
Caveolin-1 and -2 regulate cell motility in castration-resistant prostate cancer
err2018-10-01
err0
errOAAI
errToyoharu Kamibeppu; Koji Yamasaki; Kozue Nakahara; Takahiro Nagai; Naoki Terada; Hiromasa Tsukino; Shoichiro Mukai; Toshiyuki Kamoto
errShare
errSave
Popping Balloons: A Case Study of Dynamical Fragmentation
err2015-10-30
err0
PREAI
errSébastien Moulinet; Mokhtar Adda-Bedia
errShare
errSave
Comparing and experimenting machine learning techniques for code smell detection
err2015-06-06
err277
PREAI
errFontana, Francesca Arcelli; Mantyla, Mika V.; Zanoni, Marco; Marino, Alessandro
errShare
errSave
Recombination between an expressed immunoglobulin heavy-chain gene and a germline variable gene segment in a Ly 1+ B-cell lymphoma
err1986-08-01
err0
PREAI
errRobert Kleinfield; Richard R. Hardy; David Tarlinton; Jeffery Dangl; Leonard A. Herzenberg; Martin Weigert
errShare
errSave
researcher View more