Towards Software Analytics: Modeling Maintenance Activities
Autor: | Levin, Stanislav, Yehudai, Amiram |
---|---|
Rok vydání: | 2019 |
Předmět: | |
Druh dokumentu: | Working Paper |
Popis: | Lehman's Laws teach us that a software system will become progressively less satisfying to its users over time, unless it is continually adapted to meet new needs. Understanding software maintenance can potentially relieve many of the pains currently experienced by practitioners in the industry and assist in reducing uncertainty, improving cost-effectiveness, reliability and more. The research community classifies software maintenance into 3 main activities: Corrective: fault fixing; Perfective: system improvements; Adaptive: new feature introduction. In this work we seek to model software maintenance activities and design a commit classification method capable of yielding a high quality classification model. We performed a comparative analysis of our method and existing techniques based on 11 popular open source projects from which we had manually classified 1151 commits, over 100 commits from each of the studied projects. The model we devised was able to achieve an accuracy of 76% and Kappa of 63% (considered '"Good" in this context) for the test dataset, an improvement of over 20 percentage points, and a relative improvement of ~40% in the context of cross-project classification. We then leverage our commit classification method to demonstrate two applications: (1) a tool aimed at providing an intuitive visualization of software maintenance activities over time, and (2) an in-depth analysis of the relationship between maintenance activities and unit tests. Comment: arXiv admin note: substantial text overlap with arXiv:1711.05340 |
Databáze: | arXiv |
Externí odkaz: |