Software functionalities and behavior are accomplished by the cooperation of code artifacts. The understanding of this type of source code collaboration provides an important aid to the maintenance and evolution of legacy systems. However, the original collaboration design information is dispersed at the implementation level. The extraction of code artifacts' collaborations and the roles is therefore an important support in legacy software comprehension and design recovery. In this paper, we present a novel approach to automatically detect and analyze code collaborations and roles based on dynamic program analysis technique. We also demonstrate the tools that we have developed to support our approach and illustrate the viability of our approach in a case study.

Date of creation, presentation, or exhibit



Proceedings from the 11th annual IEEE Asia-pacific software engineering conference. Copyright 2004 IEEE.

Document Type

Conference Proceeding

Department, Program, or Center

Software Engineering (GCCIS)


RIT – Main Campus