Title :
Using conceptual roles of data for enhanced program comprehension
Author :
Deng, Yunbo ; Kothari, Suraj
Author_Institution :
Dept. of Electr. & Comput. Eng., Iowa State Univ., Ames, IA, USA
Abstract :
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 associate 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.
Keywords :
program diagnostics; programming environments; reverse engineering; SeeCORE; data-centered program analysis; domain knowledge; legacy code; program behavior; program comprehension; program skeleton; software engineering environment; user-defined domain-specific rules; Reverse engineering;
Conference_Titel :
Reverse Engineering, 2002. Proceedings. Ninth Working Conference on
Print_ISBN :
0-7695-1799-4
DOI :
10.1109/WCRE.2002.1173070