DocumentCode :
2359849
Title :
Pattern matching for design concept localization
Author :
Kontogiannis, K. ; DeMori, R. ; Bernstein, M. ; Galler, M. ; Merlo, Ettore
Author_Institution :
Sch. of Comput. Sci., McGill Univ., Montreal, Que., Canada
fYear :
1995
fDate :
14-16 Jul 1995
Firstpage :
96
Lastpage :
103
Abstract :
The effective synergy of a number of different techniques is the key to the successful development of an efficient reverse engineering environment. Compiler technology, pattern matching techniques, visualization tools, and software repositories play an important role for the identification of procedural, data, and abstract-data-type related concepts in the source code. This paper describes a number of techniques used for the development of a distributed reverse engineering environments. Design recovery is investigated through code-to-code and abstract-descriptions-to-code pattern matching techniques used to locate code that may implement a particular plan or algorithm. The code-to-code matching uses dynamic programming techniques to locate similar code fragments and is targeted for large software systems (1MLOC). Patterns are specified either as source code or as a sequence of abstract statements written in an concept language developed for this purpose. Markov models are used to compute similarity measures between an abstract description and or code fragment in terms of the probability that a given abstract statement can generate a given code fragment. The abstract-description-to-code matcher is under implementation and early experiments show it is a promising technique
Keywords :
Markov processes; dynamic programming; pattern matching; program compilers; programming environments; reverse engineering; software libraries; software tools; Markov models; abstract statements; abstract-data-type; code-to-code matching; compiler; design concept localization; design recovery; distributed reverse engineering environment; dynamic programming; large software systems; pattern matching; probability; reverse engineering environment; software repositories; source code; visualization tools; Algorithm design and analysis; Computer architecture; Computer science; Councils; Data visualization; Laboratories; Pattern matching; Reverse engineering; Software systems; Software tools;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Reverse Engineering, 1995., Proceedings of 2nd Working Conference on
Conference_Location :
Toronto, Ont.
Print_ISBN :
0-8186-711-43
Type :
conf
DOI :
10.1109/WCRE.1995.514698
Filename :
514698
Link To Document :
بازگشت