Design Pattern Detection by Using Cosine Similarity Technique

Author(s):  
Seema Dewangan ◽  
Rajwant Singh Rao
2008 ◽  
Vol E91-D (4) ◽  
pp. 933-944 ◽  
Author(s):  
S. HAYASHI ◽  
J. KATADA ◽  
R. SAKAMOTO ◽  
T. KOBAYASHI ◽  
M. SAEKI

2017 ◽  
Vol 120 ◽  
pp. 211-225 ◽  
Author(s):  
Bahareh Bafandeh Mayvan ◽  
Abbas Rasoolzadegan

Author(s):  
NADIA BOUASSIDA ◽  
HANENE BEN-ABDALLAH ◽  
IMENE ISSAOUI

Design patterns capitalize the knowledge of expert designers and offer reuse that provides for higher design quality and overall faster development. To attain these advantages, a designer must, however, overcome the difficulties in understanding design patterns and determining those appropriate for his/her particular application. On the other hand, one way to benefit from design patterns is to assist inexperienced designers in pattern detection during the design elaboration. Such detection should tolerate variations between the design and the pattern since the exact instantiation of a pattern is infrequent in a design. However, not all variations of a pattern are tolerated. In particular, some structural variations may result in non-optimal instantiations where the requirements are respected but the structure is different; such variations are called spoiled patterns and should also be detected and transformed into acceptable pattern instantiations. This paper first presents an improvement of our design/spoiled pattern detection approach, named MAPeD (Multi-phase Approach for Pattern Discovery). The latter uses an XML information retrieval technique to identify design/spoiled pattern occurrences in a design using, first, static and semantic information and, secondly, dynamic information. This multi-phase detection approach tolerates structural differences between the examined design and the identified design pattern. Furthermore, thanks to the matching information it collects, our identification technique can offer assistance for the improvement of a design. In its second contribution, this paper evaluates MAPeD by comparing its recall and precision rates for five open source systems: JHotDraw, JUnit, JRefactory, MapperXML, QuickUML. The latter were used by other approaches in experimental evaluations. Our evaluation shows that our design pattern identification approach has an average improvement of 9.98% in terms of precision over the best known approach.


Author(s):  
Arti Chaturvedi ◽  
Manjari Gupta ◽  
Sanjay Kumar Gupta

Design Pattern Detection is a part of re-engineering process and thus gives significant information to the designer. Detection of design patterns is helpful for improving the software characteristics. Therefore, a reliable design pattern discovery is required. The problem of finding an isomorphic sub-graph is used to solve design pattern detection in past. It is noticed that ordering of vertices of the design pattern saves the time of process. In this paper we are doing ordering of vertices for few design patterns proposed by Gamma, Helm, Johnson, and Vlissides (1995) using an algorithm Greatest Constraint First proposed by Bonnici, Giugno, Pulvirenti, Shasha, and Ferro (2013). After getting this ordering, we use a matching algorithm that uses subgraph isomorphism conditions to check whether a particular design pattern exists in the system design or not (Bonnici et al., 2013). We redefine sub-graph isomorphism conditions in the context of the problem of mining design patterns from the system design.


Sign in / Sign up

Export Citation Format

Share Document