SANER 2025
Tue 4 - Fri 7 March 2025 Montréal, Québec, Canada

To improve the efficiency of software maintenance, change prediction techniques have been proposed to predict modules that change frequently.While existing techniques primarily focus on class-level prediction, method-level prediction allows for more direct identification of change locations.Although method-level change prediction techniques have also been proposed, developers cannot decide when to use which one due to the lack of comparisons with class-level predictions.In this paper, we evaluated the performance of method-level change prediction in comparison with class-level prediction from three perspectives: direct comparison, method-level comparison , and maintenance effort-aware comparison.The results from 15 open source projects show that, although method-level prediction has lower performance than class-level prediction in usual evaluation, method-level prediction outperformed class-level prediction when both were evaluated at method-level, leading to a median difference of 0.26 in accuracy.Furthermore, effort-aware evaluation shows that method-level prediction had significantly better performance when maintenance effort is little.