Citation: | XIAO Zhuoyu, HE Pei, YU Boet al. A multi-stage approach based on interactive clues driven for design pattern identification[J]. Journal of Beijing University of Aeronautics and Astronautics, 2017, 43(9): 1746-1756. doi: 10.13700/j.bh.1001-5965.2016.0750(in Chinese) |
Aimed at inaccuracy and difficulty to extend the traditional design pattern automatic detection method, and in order to improve the accuracy of the design pattern instance recovery, an interactive clue-driven approach for design pattern detection was presented. Concept of clue was introduced based on the constraint satisfaction problem (CSP) of traditional design pattern detection, and expert experience feedback mechanism was proposed by investigation. The significant clues were converted into the information based on CSP in the refining stage, the clues were classified by information characteristics, and the clues were added in design pattern detection process until the candidate sets of design pattern instance were produced. Experimental results show that the proposed method can gradually reduce the false negative results and the false positive results of design pattern detection instance, and further more, the novel method can solve design pattern overlap problem. Compared to the F-score index of other well-known algorithms, the proposed method shows better detection effect.
[1] |
ZHANG C, BUDGEN D.What do we know about the effectiveness of software design patterns [J].IEEE Transactions on Software Engineering, 2012, 38(5):1213-1231. doi: 10.1109/TSE.2011.79
|
[2] |
SCANNIELLO G, GRAVINO C, RISI M, et al.Documenting design-pattern instances:A family of experiments on source-code comprehensibility[J].ACM Transactions on Software Engineering and Methodology, 2015, 24(3):1-41. http://www.academia.edu/22417252/Documenting_Design-Pattern_Instances_a_Family_of_Experiments_on_Source_Code_Comprehensibility
|
[3] |
AMPATZOGLOU A, FRANTZESKOU G, STAMELOS I.A methodology to assess the impact of design patterns on software quality[J].Information and Software Technology, 2012, 54(4):331-346. doi: 10.1016/j.infsof.2011.10.006
|
[4] |
AMPATZOGLOU A, CHARALAMPIDOU S, STAMELOS I.Research state of the art on GoF design patterns:A mapping study[J].Journal of Systems and Software, 2013, 86(7):1945-1964. doi: 10.1016/j.jss.2013.03.063
|
[5] |
FONTANA F A, MAGGIONI S, RAIBULET C.Design patterns:A survey on their micro-structures[J].Journal of Software:Evolution and Process, 2013, 25(1):27-52. doi: 10.1002/smr.v25.1
|
[6] |
FONTANA F A, MAGGIONI S, RAIBULET C.Understanding the relevance of micro-structures for design patterns detection[J].Journal of Systems and Software, 2011, 84(12):2334-2347. doi: 10.1016/j.jss.2011.07.006
|
[7] |
ZANONI M, FONTANA F A, STELLA F.On applying machine learning techniques for design pattern detection[J].Journal of Systems and Software, 2015, 88(5):102-117. http://dl.acm.org/citation.cfm?id=2902376.2902591
|
[8] |
肖卓宇, 何锫, 余波, 等.基于FCA与CBR的设计模式检测[J].山东大学学报(工学版), 2016, 46(2):22-28. doi: 10.6040/j.issn.1672-3961.1.2015.046
XIAO Z Y, HE P, YU B, et al.Design patterns detection based on FCA and CBR[J].Journal of Shandong University (Engineering Science), 2016, 46(2):22-28(in Chinese). doi: 10.6040/j.issn.1672-3961.1.2015.046
|
[9] |
CHIHADA A, JALILI S, HASHEMINEJAD S M H, et al.Source code and design conformance, design pattern detection from source code by classification approach[J].Applied Soft Computing, 2015, 26(1):357-367. http://www.sciencedirect.com/science/article/pii/S1568494614005389
|
[10] |
YU D, ZHANG Y, CHEN Z.A comprehensive approach to the recovery of design pattern instances based on sub-patterns and method signatures[J].Journal of Systems and Software, 2015, 88(5):1-16. http://www.sciencedirect.com/science/article/pii/S016412121500014X
|
[11] |
YU D, ZHANG Y, GE J, et al.From sub-patterns to patterns:An approach to the detection of structural design pattern instances by subgraph mining and merging[C]//2013 IEEE 37th Annual Computer Software and Applications Conference (COMPSAC).Piscataway, NJ:IEEE Press, 2013:579-588.
|
[12] |
DONG J, ZHAO J, SUN Y.A matrix based approach to recovering design patterns[J].IEEE Transactions on Systems, Man and Cybernatics, 2009, 39(6):1271-1282. doi: 10.1109/TSMCA.2009.2028012
|
[13] |
BERNARDI M L, CIMITILE M, DI LUCCA G.Design pattern detection using a DSL-driven graph matching approach[J].Journal of Software:Evolution and Process, 2014, 26(12):1233-1266. doi: 10.1002/smr.v26.12
|
[14] |
SABO M, PORUBÄN J.Preserving design patterns using source code annotations[J].Journal of Computer Science and Control Systems, 2009, 32(2):53-56. http://www.oalib.com/paper/2779809
|
[15] |
RASOOL G, PHILIPPOW I, MADER P.Design pattern recovery based on annotations[J].International Journal of Advances in Engineering Software, 2010, 41(4):519-526. doi: 10.1016/j.advengsoft.2009.10.014
|
[16] |
RASOOL G, MÄDER P.A customizable approach to design patterns recognition based on feature types[J].Arabian Journal for Science and Engineering, 2014, 39(12):8851-8873. doi: 10.1007/s13369-014-1449-0
|
[17] |
GARLAN D, MONROE R, WILE D.ACME:An architecture description interchange language[C]//CASCON'97 Proceedings of the 1997 Conference of the Centre for Advanced Studies on Collaborative Research, 2010:159-173.
|
[18] |
GUÉHÉNEUC Y G, ANTONIOL G.DeMIMA:A multilayered approach for design pattern identification[J].IEEE Transactions on Software Engineering, 2008, 34(5):667-684. doi: 10.1109/TSE.2008.48
|
[19] |
PETTERSON N, LÖWE W, NIVRE J.Evaluation of accuracy in design pattern occurrence detection[J].IEEE Transactions on Software Engineering, 2010, 36(4):575-590. doi: 10.1109/TSE.2009.92
|
[20] |
肖卓宇, 何锫, 黎妍.基于设计模式角色的附加关系检测研究[J].计算机应用研究, 2015, 32(7):2042-2045. http://www.cnki.com.cn/Article/CJFDTOTAL-JSYJ201507032.htm
XIAO Z Y, HE P, LI Y.Study on the additional relationships based on design pattens's roles[J].Application Research of Computers, 2015, 32(7):2042-2045(in Chinese). http://www.cnki.com.cn/Article/CJFDTOTAL-JSYJ201507032.htm
|
[21] |
GUÉHÉNEUC Y G, GUYOMARC'H J Y, SAHRAOUI H.Improving design-pattern identification:A new approach and an exploratory study[J].Software Quality Journal, 2010, 18(1):145-174. doi: 10.1007/s11219-009-9082-y
|
[22] |
KITCHENHAM B A, PFLEEGER S L, PICKARD L M, et al.Preliminary guidelines for empirical research in software engineering[J].IEEE Transactions on Software Engineering, 2002, 28(8):721-734. doi: 10.1109/TSE.2002.1027796
|
[23] |
MERA S, BJØRNER N.DKAL and Z3:A logic embedding experiment[M]//BLASS A, DERSHOWITZ N, REISIG W.Fields of logic and computation.Berlin:Springer, 2010:504-528.
|