Mining version histories to guide software changes

被引:395
作者
Zimmermann, T
Weissgerber, P
Diehl, S
Zeller, A
机构
[1] Univ Saarland, Dept Comp Sci, D-66041 Saarbrucken, Germany
[2] Catholic Univ Eichstatt Ingolstadt, Dept Comp Sci, D-85072 Eichstatt, Germany
关键词
programming environments/construction tools; distribution; maintenance; enhancement; configuration management; clustering; classification; association rules; data mining;
D O I
10.1109/TSE.2005.72
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
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.
引用
收藏
页码:429 / 445
页数:17
相关论文
共 36 条
[1]  
Agrawal R, 1994, P 20 INT C VER LARG, V1215, P487
[2]  
[Anonymous], 2004, P 1 INT WORKSHOP MIN, DOI DOI 10.1049/IC:20040466
[3]  
ATKINS DL, 1998, P C SYST CONF MAN SC
[4]  
BALL T, 1997, P ICSE WORKSH PROC M
[5]  
Berliner B., 1990, Proceedings of the Winter 1990 USENIX Conference, P341
[6]  
Bieman JM, 2003, PROG COMPREHEN, P44
[7]  
BURCH M, 2005, P ACM S SOFTW VIS SO
[8]  
Chen I., 2001, BUSINESS PROCESS MAN, V7, P374, DOI DOI 10.1108/14637150110406768
[9]   Hipikat: Recommending pertinent software development artifacts [J].
Cubranic, D ;
Murphy, GC .
25TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, PROCEEDINGS, 2003, :408-418
[10]  
FOGEL K, 2002, CVS2CLPL CVS LOG MES