Well-designed object-oriented programs typically consist of a few key classes that work tightly together to provide the bulk of the functionality. As such, these key classes are excellent starting points for the program comprehension process. We propose a technique that uses web-mining principles on execution traces to discover these important and tightly interacting classes. Based on two medium-scale case studies — Apache Ant and Jakarta JMeter — and detailed architectural information from its developers, we show that our heuristic does in fact find a sizeable number of the classes deemed important by the developers.
Index Terms:
Reverse engineering, dynamic analysis, web-mining, program comprehension
Citation:
Andy Zaidman, Toon Calders, Serge Demeyer, Jan Paredaens, "Applying Webmining Techniques to Execution Traces to Support the Program Comprehension Process," csmr, pp.134-142, Ninth European Conference on Software Maintenance and Reengineering (CSMR'05), 2005