TY - GEN
T1 - Understanding source code evolution using abstract syntax tree matching
AU - Neamtiu, Iulian
AU - Foster, Jeffrey S.
AU - Hicks, Michael
N1 - Publisher Copyright:
Copyright 2005 ACM.
PY - 2005/5/17
Y1 - 2005/5/17
N2 - Mining software repositories at the source code level can provide a greater understanding of how software evolves. We present a tool for quickly comparing the source code of different versions of a C program. The approach is based on partial abstract syntax tree matching, and can track simple changes to global variables, types and functions. These changes can characterize aspects of software evolution useful for answering higher level questions. In particular, we consider how they could be used to inform the design of a dynamic software updating system. We report results based on measurements of various versions of popular open source programs, including BIND, OpenSSH, Apache, Vsftpd and the Linux kernel.
AB - Mining software repositories at the source code level can provide a greater understanding of how software evolves. We present a tool for quickly comparing the source code of different versions of a C program. The approach is based on partial abstract syntax tree matching, and can track simple changes to global variables, types and functions. These changes can characterize aspects of software evolution useful for answering higher level questions. In particular, we consider how they could be used to inform the design of a dynamic software updating system. We report results based on measurements of various versions of popular open source programs, including BIND, OpenSSH, Apache, Vsftpd and the Linux kernel.
KW - Abstract syntax trees
KW - Software evolution
KW - Source code analysis
UR - http://www.scopus.com/inward/record.url?scp=85088065411&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85088065411&partnerID=8YFLogxK
U2 - 10.1145/1083142.1083143
DO - 10.1145/1083142.1083143
M3 - Conference contribution
AN - SCOPUS:85088065411
SN - 1595931236
SN - 9781595931238
T3 - Proceedings of the 2005 International Workshop on Mining Software Repositories, MSR 2005
BT - Proceedings of the 2005 International Workshop on Mining Software Repositories, MSR 2005
PB - Association for Computing Machinery, Inc
T2 - 2005 International Workshop on Mining Software Repositories, MSR 2005
Y2 - 17 May 2005
ER -