DocumentCode
3153687
Title
Object oriented design pattern inference
Author
Tonella, Paolo ; Antoniol, Giulio
Author_Institution
ITC, Trento, Italy
fYear
1999
fDate
1999
Firstpage
230
Lastpage
238
Abstract
When designing a new application, experienced software engineers usually try to employ solutions that proved successful in previous projects. Such reuse of code organizations is seldom made explicit. Nevertheless it represents important information about the system, that can be extremely valuable in the maintenance phase by documenting the design choices underlying the implementation. In addition, having it available, it can be reused whenever a similar problem is encountered. In this paper an approach is proposed to the inference of recurrent design patterns directly from the code or the design. No assumption is made on the availability of any pattern library and the concept analysis algorithm, adapted for this purpose, is able to infer the presence of class groups which instantiate a common, repeated pattern. In fact, concept analysis provides sets of objects sharing attributes, which, in the case of object oriented design patterns, become class members or inter-class relations. The approach was applied to a C++ application, for which the structural relations among classes led to the extraction of a set of structural design patterns, which could be enriched with non structural information about class members and method invocations. The resulting patterns could be interpreted as meaningful organizations aimed at solving general problems which have several instances in the analyzed application
Keywords
inference mechanisms; object-oriented programming; software reusability; C++ application; class groups; concept analysis; inference; object oriented design patterns; recurrent design patterns; Computer science; Concrete; Design engineering; Design methodology; Educational institutions; Electrical capacitance tomography; Maintenance engineering; Reverse engineering; Software systems; Writing;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Maintenance, 1999. (ICSM '99) Proceedings. IEEE International Conference on
Conference_Location
Oxford
ISSN
1063-6773
Print_ISBN
0-7695-0016-1
Type
conf
DOI
10.1109/ICSM.1999.792619
Filename
792619
Link To Document