Reducing Program Comprehension Effort in Evolving Software by Recognizing Feature Implementation Convergence

J. Kothari, T. Denton, A. Shokoufandeh, S. Mancoridis
2007 15th IEEE International Conference on Program Comprehension (ICPC '07)  
The implementations of software features evolve as an application matures. We define a measure of feature implementation overlap that determines how similar features are in their execution by examining their call graphs. We consider how this measure changes over time, and evaluate the hypothesis that over time and subsequent versions of a software application, the implementations of semantically similar features converge. As the features of an application converge in their implementation, we
more » ... able to more effectively determine groups of semantically similar features and to reduce the cost of program comprehension by selecting few key features that give an overview of the system. We present a case study analyzing the features of the Jext, Firefox, and Gaim software systems to support our hypothesis.
doi:10.1109/icpc.2007.33 dblp:conf/iwpc/KothariDSM07 fatcat:c3eszy2rmrebpbac5xbnt7zlmu