2012 19th Working Conference on Reverse Engineering (2012)
Kingston, ON, Canada Canada
Oct. 15, 2012 to Oct. 18, 2012
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/WCRE.2012.19
As a new developer, getting to know a large unknown software system is a challenging task. If experienced developers are available, they can suggest which classes to read first, helping new developers to quickly grasp the system's most fundamental concepts. In practice, however, experienced developers often are no longer available. In these cases, the set of most important classes must be reverse engineered. This paper presents a thorough analysis of using different network analysis metrics on dependency graphs to retrieve central classes. An empirical study on four open source projects evaluates the results based on a survey among the systems' core developers. It demonstrates that the algorithmic results can compete with the suggestions of experienced developers.
Algorithm design and analysis, Software systems, Measurement, Software algorithms, Indexes, Markov processes, dependency graph, network analysis, program comprehension
D. Steidl, B. Hummel and E. Juergens, "Using Network Analysis for Recommendation of Central Software Classes," 2012 19th Working Conference on Reverse Engineering(WCRE), Kingston, ON, Canada Canada, 2012, pp. 93-102.