Loading...
Please wait, while we are loading the content...
Similar Documents
Witnessing Patterns: A Data Fusion Approach to Design (2009)
| Content Provider | CiteSeerX |
|---|---|
| Author | Binun, Er Kniesel, Günter Binun, Er Kniesel, Günter |
| 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 (Fujaba, PINOT, Ptidej, DP-Miner and SSA) on various Java projects. These tools jointly cover almost all known DPD techniques but mix them in different ways, focusing on different indicators for the supported design patterns. Given that each tool designer is forced to make a choice of available techniques, trading precision for recall or speed (or vice-versa), we argue that instead of updating a concrete DPD tool it would be preferrable to fuse the outputs of several different DPD tools. 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 canwitnessfor the existence of another pattern. The particular strength of the witness-based approach is its ability (1) to provide correct diagnostics even if the inputs from the evaluated tools were partly wrong and (2) to detect even patterns that the individual tools do not identify or do not support at all. 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. |
| File Format | |
| Language | English |
| Publisher Date | 2009-01-01 |
| Publisher Institution | Pattern Detection,” CS Department III |
| Access Restriction | Open |
| Subject Keyword | Data Fusion Approach Design Pattern Evaluated Tool Several Different Dpd Tool Witness-based Approach Yield Design Pattern Detection Tool Designer Dpd Tool Dpd Technique Various Java Project Different Way Observer Pattern Correct Diagnostics Witness-based Approach Different Dpd Technique Concrete Dpd Tool Different Indicator Unknown Code Trading Precision Different Tool Available Technique Individual Tool Single Tool Supported Design Pattern Particular Strength Data Fusion Important Information Novel Dpd Approach Design Pattern Candidate Set |
| Content Type | Text |
| Resource Type | Technical Report |