Recommending change clusters to support software investigation: an empirical study
Journal of Software Maintenance and Evolution: Research and Practice - Working Conference on Reverse Engineering (WCRE 2008)
Controversy Corner: Preserving knowledge in software projects
Journal of Systems and Software
Hi-index | 0.00 |
In this paper, we present an approach that examines the evolution of code stored in source control repositories. The technique identifies Change Clusters, which can help managers to classify different code change activities as either a software maintenance or a new development. Furthermore, identifying the variations in Change Clusters over time exposes trends in the development of a software system. We present a case study that uses a sequence of Change Clusters to track the evolution of the PostgreSQL software project. Our case study demonstrates that our technique reveals interesting patterns about the progress of code development within each release of PostgreSQL. We show that the increase in the number of clusters not only identifies the areas where development has occurred, but also reflects the amount of structural change in code. We also compare how the Change Clusters vary over time in order to make generalizations about the focus of development.