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 efficiently recover and analyze code collaborations and semantic roles based on dynamic program analysis technique. We also demonstrate the software tools that we have developed to support our approach and illustrate the viability of our approach in a case study.
Keywords
Data Mining, Code Collaboration Pattern, Semantic Role, Design Recovery, Dynamic Program Analysis, Software Visualization, Reverse Engineering.
User
Font Size
Information