DocumentCode
2155564
Title
Standing on the shoulders of giants - A data fusion approach to design pattern detection
Author
Kniesel, Günter ; Binun, Alexander
Author_Institution
Inst. for Comput. Sci. III, Univ. of Bonn, Bonn
fYear
2009
fDate
17-19 May 2009
Firstpage
208
Lastpage
217
Abstract
Identification of design patterns can deliver important information to designers. Therefore, automated design pattern detection (DPD) is highly desirable when it comes to understanding unknown code. In this paper, we present the results of evaluating five existing DPD tools on various Java projects. These results motivate our proposal of a novel DPD approach based on data fusion. It combines design pattern candidate sets coming from different tools implementing different DPD techniques. We show that a design pattern can be a witness for the existence of another pattern. Our approach is able (1) to provide correct diagnostics even if the inputs from the evaluated tools were partly wrong and (2) to detect patterns instances not identified by the individual tools. For the Decorator, Visitor and Observer pattern, the witness-based approach yields better precision and recall than provided by any single tool. In particular, it detects 24 out of 30 instances of these patterns missed in our experiments by the evaluated tools. We also found that on the analyzed instances of the Bridge, Mediator and Facade pattern data fusion could not improve results, demonstrating that research into improvements of the basic detection techniques is still necessary.
Keywords
object-oriented programming; program diagnostics; reverse engineering; sensor fusion; Java; automated design pattern detection; data fusion; diagnostic correction; unknown code understanding; Art; Bridges; Collaboration; Computer science; Concrete; Design methodology; Information retrieval; Java; Pattern analysis; Proposals;
fLanguage
English
Publisher
ieee
Conference_Titel
Program Comprehension, 2009. ICPC '09. IEEE 17th International Conference on
Conference_Location
Vancouver, BC
ISSN
1092-8138
Print_ISBN
978-1-4244-3998-0
Electronic_ISBN
1092-8138
Type
conf
DOI
10.1109/ICPC.2009.5090044
Filename
5090044
Link To Document