Ninth Working Conference on Reverse Engineering, 2002. Proceedings. (2002)
Oct. 29, 2002 to Nov. 1, 2002
Without proper background, it is often very difficult for human beings to understand a legacy code. Domain knowledge is valuable to guide domain experts to efficiently comprehend and reengineer domain applications. In the comprehension process, what domain experts normally do is associates domain concepts in the human mind with their representations in the actual code. This paper is addressed as an effort to recover the representations of domain-specific concepts in an application and show the usefulness of such recovery in program comprehension. We describe two important aspects of this research; data-centered program analysis to recover the conceptual roles of data in a program; deriving a "program skeleton" aided by the conceptual roles to present an abstraction to capture the program behavior and the relationship between kernel variables in a program. We are developing a software engineering environment, named "SeeCORE", which incorporates these two approaches. SeeCORE can be customized for different domains by appropriately user-defined domain-specific rules. We have used a class of scientific applications as a domain to demonstrate our approach.
S. Kothari and Y. Deng, "Using Conceptual Roles of Data for Enhanced Program Comprehension," Ninth Working Conference on Reverse Engineering, 2002. Proceedings.(WCRE), Richmond, Virginia, 2002, pp. 0119.