Enhancing Software Maintenance: A Learning to Rank Approach for Co-changed Method Identification
Yiping Jia, Safwat Hassan, Ying Zou

TL;DR
This paper introduces a learning-to-rank method leveraging source code features and change history to accurately identify co-changed methods at the pull request level, improving software maintenance efficiency.
Contribution
It presents a novel learning-to-rank approach combining code features and change history, outperforming existing baselines in co-changed method prediction at the pull request level.
Findings
Random Forest model outperforms others by 2.5-12.8% in NDCG@5
Our approach surpasses baselines like file proximity and code clones by up to 537.5%
Bi-monthly retraining maintains high accuracy, with performance declining after 60 days
Abstract
With the increasing complexity of large-scale software systems, identifying all necessary modifications for a specific change is challenging. Co-changed methods, which are methods frequently modified together, are crucial for understanding software dependencies. However, existing methods often produce large results with high false positives. Focusing on pull requests instead of individual commits provides a more comprehensive view of related changes, capturing essential co-change relationships. To address these challenges, we propose a learning-to-rank approach that combines source code features and change history to predict and rank co-changed methods at the pull-request level. Experiments on 150 open-source Java projects, totaling 41.5 million lines of code and 634,216 pull requests, show that the Random Forest model outperforms other models by 2.5 to 12.8 percent in NDCG@5. It also…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Industrial Vision Systems and Defect Detection · Manufacturing Process and Optimization
