A degree-driven approach to design pattern mining based on graph matching

被引:3
作者
Zhang, Ping [1 ]
Yu, Dongjin [1 ]
Wang, Jiaojiao [1 ]
机构
[1] Hangzhou Dianzi Univ, Dept Comp Sci, Hangzhou, Zhejiang, Peoples R China
来源
2017 24TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC 2017) | 2017年
关键词
design patterns; design pattern mining; graph matching; in degree; out degree; data graph;
D O I
10.1109/APSEC.2017.24
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Design patterns play an important role in the understanding and implementation of software design process, as well as the restoration of architecture. Consequently, the detection of a design pattern represents a pivotal problem for the comprehension of many complex software systems. However, most approaches based on graph matching are faced with search space explosions and low efficiency in terms of mining speed. To address this problem, this paper proposes an approach to mine design pattern instances in source code by degree-driven matching which is divided into two parts. The first part concerns the sub-system division, in which all the information related to detection is included in the relevant region for the data graph. The other concerns the match with the cross-validation sequence based on certain rules to obtain the instances of an effective region. Extensive experiments, using a design instance library, are conducted to evaluate the approach's performance in comparison with other tools on eight open source software projects. The results show that the proposed approach can detect design patterns more effectively than current state-of-the-art approaches.
引用
收藏
页码:179 / 188
页数:10
相关论文
共 23 条
[1]   Rule-based detection of design patterns in program code [J].
Alnusair, Awny ;
Zhao, Tian ;
Yan, Gongjun .
INTERNATIONAL JOURNAL ON SOFTWARE TOOLS FOR TECHNOLOGY TRANSFER, 2014, 16 (03) :315-334
[2]  
Babrahem A S, 2014, COMPUTER SCI
[3]  
Bernardi M L, 2015, J SOFTWARE EVOLUTION, V26, P1233
[4]   A Matrix-Based Approach to Recovering Design Patterns [J].
Dong, Jing ;
Zhao, Yajing ;
Sun, Yongtao .
IEEE TRANSACTIONS ON SYSTEMS MAN AND CYBERNETICS PART A-SYSTEMS AND HUMANS, 2009, 39 (06) :1271-1282
[5]   Understanding the relevance of micro-structures for design patterns detection [J].
Fontana, F. Arcelli ;
Maggioni, S. ;
Raibulet, C. .
JOURNAL OF SYSTEMS AND SOFTWARE, 2011, 84 (12) :2334-2347
[6]  
Galli L, 2014, ARCH MAL COEUR, P1
[7]   Improving design-pattern identification: a new approach and an exploratory study [J].
Gueheneuc, Yann-Gael ;
Guyomarc'h, Jean-Yves ;
Sahraoui, Houari .
SOFTWARE QUALITY JOURNAL, 2010, 18 (01) :145-174
[8]  
Gueheneuc Yann-gael, 2008, P MART PATTERN LIKE
[9]  
Gupta M., 2011, ACM SIGSOFT SOFTW EN, V36, P01, DOI [10.1145/1921532.1921541, DOI 10.1145/1921532.1921541]
[10]   Using metric-based filtering to improve design pattern detection approaches [J].
Issaoui, Imene ;
Bouassida, Nadia ;
Ben-Abdallah, Hanene .
INNOVATIONS IN SYSTEMS AND SOFTWARE ENGINEERING, 2015, 11 (01) :39-53