Software maintenance and evolution can be made easier if program comprehension techniques are used. Understanding a software system would typically necessitate a combination of st...
Programming is modeling the reality. Most of the times, the mapping between source code and the real world concepts is captured implicitly in the names of identifiers. Making the...
An Executable Concept Slice extracts from a program an executable subprogram that captures the semantics of a specified high-level concept from the program. Executable concept sl...
David Binkley, Nicolas Gold, Mark Harman, Zheng Li...
Often, the only sources of information about the evolution of software systems are the systems themselves and their histories. Version control repositories contain information on ...
Software clustering algorithms presented in the literature rarely incorporate in the clustering process dynamic information, such as the number of function invocations during runt...
Bill Andreopoulos, Aijun An, Vassilios Tzerpos, Xi...