Exploring the Usefulness of Version Control Information for Program Comprehension

Date
2012-10-03
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Understanding a concern in source code can involve understanding its evolution. This work explores the usefulness of version control system information in supporting program understanding, by analyzing the evolution of twenty different concerns from five open source software projects. Our analysis showed that 66.9% of commits are not helpful for understanding concerns and only 19.5% are very helpful. This result implies that it can be time consuming for programmers to find relevant commits when reviewing a concern history and motivates the need for tool support for ranking commits associated with a concern. Hence, we have explored ranking commits based on a recommender system built on top of a classifier whose input is some commit attributes. The accuracy of such ranking reached 75.5%. The analysis of mis-ranked commits demonstrated that improving on the current results will require a more sophisticated way for determining when a change is conceptually important or unimportant.
Description
Keywords
Statistics, Artificial Intelligence, Computer Science
Citation
Al Baba, M. S. (2012). Exploring the Usefulness of Version Control Information for Program Comprehension (Master's thesis, University of Calgary, Calgary, Canada). Retrieved from https://prism.ucalgary.ca. doi:10.11575/PRISM/26123