Boosting Automatic Commit Classification Into Maintenance Activities By Utilizing Source Code Changes
Stanislav Levin, Amiram Yehudai

TL;DR
This paper presents a novel, source code change-based method for classifying software commits into maintenance activities, achieving high accuracy and cross-project applicability, outperforming previous models.
Contribution
It introduces a new classification approach combining source code changes and word frequency analysis, improving accuracy and generalizability across different projects.
Findings
Achieved 76% accuracy and 63% Cohen's kappa in commit classification.
Boosted cross-project classification performance by ~40%.
Combining code changes with message analysis enhances model effectiveness.
Abstract
Background: Understanding maintenance activities performed in a source code repository could help practitioners reduce uncertainty and improve cost-effectiveness by planning ahead and pre-allocating resources towards source code maintenance. The research community uses 3 main classification categories for maintenance activities: Corrective: fault fixing; Perfective: system improvements; Adaptive: new feature introduction. Previous work in this area has mostly concentrated on evaluating commit classification (into maintenance activities) models in the scope of a single software project. Aims: In this work we seek to design a commit classification model capable of providing high accuracy and Kappa across different projects. In addition, we wish to compare the accuracy and kappa characteristics of classification models that utilize word frequency analysis, source code changes, and…
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software Reliability and Analysis Research · Software Engineering Techniques and Practices
