Predictive models for software projects' characteristics have been traditionally based on project-level metrics, employing only little developer-level information, or none at all. In this work we suggest novel metrics that capture temporal and semantic developer-level information collected on a per developer basis. To address the scalability challenges involved in computing these metrics for each and every developer for a large number of source code repositories, we have built a designated repository mining platform. This platform was used to create a metrics dataset based on processing nearly 1000 highly popular open source GitHub repositories, consisting of 147 million LOC, and maintained by 30,000 developers. The computed metrics were then employed to predict the corrective, perfective, and adaptive maintenance activity profiles identified in previous works. Our results show both strong correlation and promising predictive power with R 2 values of 0.83, 0.64, and 0.75. We also show how these results may help project managers to detect anomalies in the development process and to build better development teams. In addition, the platform we built has the potential to yield further predictive models leveraging developer-level metrics at scale.
Our previous work REF explored semantic change types in the context of maintenance activities, and reported predictive models for developers' maintenance activity profiles.
Using Temporal and Semantic Developer-Level Information to Predict Maintenance Activity Profiles
2016 IEEE International Conference on Software Maintenance and Evolution (ICSME)
2016 IEEE International Conference on Software Maintenance and Evolution (ICSME)
Computer Science