Issue No. 09 - September (2004 vol. 30)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TSE.2004.52
Gail C. Murphy , IEEE Computer Society
Software developers are often faced with modification tasks that involve source which is spread across a code base. Some dependencies between source code, such as those between source code written in different languages, are difficult to determine using existing static and dynamic analyses. To augment existing analyses and to help developers identify relevant source code during a modification task, we have developed an approach that applies data mining techniques to determine change patterns—sets of files that were changed together frequently in the past—from the change history of the code base. Our hypothesis is that the change patterns can be used to recommend potentially relevant source code to a developer performing a modification task. We show that this approach can reveal valuable dependencies by applying the approach to the Eclipse and Mozilla open source projects and by evaluating the predictability and interestingness of the recommendations produced for actual modification tasks on these systems.
Enhancement, maintainability, clustering, classification, association rules, data mining.
G. C. Murphy, A. T. Ying, M. C. Chu-Carroll and R. Ng, "Predicting Source Code Changes by Mining Change History," in IEEE Transactions on Software Engineering, vol. 30, no. , pp. 574-586, 2004.