Title :
Mining version histories to guide software changes
Author :
Zimmermann, Thomas ; Zeller, Andreas ; Weissgerber, P. ; Diehl, Stephan
Author_Institution :
Dept. of Comput. Sci., Saarlandes Univ., Saarbrucken, Germany
fDate :
6/1/2005 12:00:00 AM
Abstract :
We apply data mining to version histories in order to guide programmers along related changes: "Programmers who changed these functions also changed...." Given a set of existing changes, the mined association rules 1) suggest and predict likely further changes, 2) show up item coupling that is undetectable by program analysis, and 3) can prevent errors due to incomplete changes. After an initial change, our ROSE prototype can correctly predict further locations to be changed; the best predictive power is obtained for changes to existing software. In our evaluation based on the history of eight popular open source projects, ROSE\´s topmost three suggestions contained a correct location with a likelihood of more than 70 percent.
Keywords :
configuration management; data mining; programming environments; software maintenance; software prototyping; software tools; ROSE prototype; association rule; classification; clustering; configuration management; construction tools; data mining; program analysis; programming environments; software changes; software maintenance; Association rules; Books; Computer Society; Computer science; Data mining; Environmental management; History; Open source software; Programming profession; Software prototyping; Index Terms- Programming environments/construction tools; association rules; classification; clustering; configuration management; data mining.; distribution; enhancement; maintenance;
Journal_Title :
Software Engineering, IEEE Transactions on
DOI :
10.1109/TSE.2005.72