학술논문

A Model to Detect Readability Improvements in Incremental Changes
Document Type
Conference
Source
2020 IEEE/ACM 28th International Conference on Program Comprehension (ICPC) ICPC Program Comprehension (ICPC), 2020 IEEE/ACM 28th International Conference on. :25-36 Oct, 2020
Subject
Computing and Processing
Codes
Source coding
Buildings
Software quality
Machine learning
Maintenance engineering
Data models
Source code readability
Code quality
Language
ISSN
2643-7171
Abstract
Identifying source code that has poor readability allows developers to focus maintenance efforts on problematic code. Therefore, the effort to develop models that can quantify the readability of a piece of source code has been an area of interest for software engineering researchers for several years. However, recent research questions the usefulness of these readability models in practice. When applying these models to readability improvements that are made in practice, i.e., commits, they are unable to capture these incremental improvements, despite a clear perceived improvement by the developers. This results in a discrepancy between the models we have built to measure readability, and the actual perception of readability in practice. In this work, we propose a model that is able to detect incremental readability improvements made by developers in practice with an average precision of 79.2% and an average recall of 67% on an unseen test set. We then investigate the metrics that our model associates with developer perceived readability improvements as well as non-readability changes. Finally, we compare our model to existing state-of-the-art readability models, which our model outperforms by at least 23% in terms of precision and 42% in terms of recall.