DocumentCode :
2370292
Title :
Design recovery by automated search for structural design patterns in object-oriented software
Author :
Krämer, Christian ; Prechelt, Lutz
Author_Institution :
Software Eng. Dept., Computec GmbH, Karlsruhe, Germany
fYear :
1996
fDate :
11-10 Nov. 1996
Firstpage :
208
Lastpage :
215
Abstract :
The object-oriented design community has recently begun to collect so-called design patterns: cliches plus hints to their recommended use in software construction. The structural design patterns Adapter, Bridge, Composite, Decorator, and Proxy represent packaged problem/context/solution/properties descriptions to common problems in object-oriented design. Localizing instances of these patterns in existing software produced without explicit use of patterns can improve the maintainability of software. In the authors´ approach, called the Pat system, design information is extracted directly from C++ header files and stored in a repository. The patterns are expressed as PROLOG rules and the design information is translated into facts. A single PROLOG query is then used to search for all patterns. They examined four applications, including the popular class libraries zApp and LEDA, with Pat. With some restrictions all pattern instances are found; the precision is about 40 percent. Since manual filtering of the output is relatively easy, they consider Pat a useful tool for discovering or recovering design information.
Keywords :
object-oriented programming; Adapter; Bridge; C++ header files; Composite; Decorator; LEDA class library; PROLOG query; PROLOG rules; Pat system; Proxy; automated structural design pattern search; design information; design information discovery; design information recovery; design recovery; facts; manual output filtering; object-oriented software; pattern instances; software construction; software maintainability; zApp class library; Bridges; Computer aided software engineering; Context; Microarchitecture; Packaging; Reverse engineering; Software engineering; Software maintenance; Software tools; Terminology;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Reverse Engineering, 1996., Proceedings of the Third Working Conference on
Conference_Location :
Monterey, CA, USA
Print_ISBN :
0-8186-7674-4
Type :
conf
DOI :
10.1109/WCRE.1996.558905
Filename :
558905
Link To Document :
بازگشت