A Customizable Approach to Design Patterns Recognition Based on Feature Types
详细信息    查看全文
  • 作者:Ghulam Rasool (1)
    Patrick M?der (2)
  • 关键词:Design patterns ; Design recovery ; Design motifs ; Pattern definitions ; Micro ; structures
  • 刊名:Arabian Journal for Science and Engineering
  • 出版年:2014
  • 出版时间:December 2014
  • 年:2014
  • 卷:39
  • 期:12
  • 页码:8851-8873
  • 全文大小:1,198 KB
  • 参考文献:1. Gamma E., Helm R., Johnson R., Vlissides J.: Design Patterns: Elements of Reusable Object Oriented Software. Addison Wesley, Boston (1995)
    2. Kr?mer, C.; Prechelt, L.: Design recovery by automated search for structural design patterns in object-oriented software. In Working conference on reverse engineering (WCRE), pp. 208-15. Monterey-CA, EUA, November (1996)
    3. Arcelli, F.; Luca, C.: Enhancing software evolution through design pattern detection. In: Third international IEEE workshop on software evolvability, 2007, pp. 7-4 October (2007)
    4. Guéhéneuc Y., Antoniol G.: DeMIMA: a multilayered approach for design pattern identification. IEEE Trans. Softw. Eng. 34(5), 667-84 (2008) CrossRef
    5. Antoniol, G.; Casazza, G.; Di Penta, M.; Fiutem, R.: Object-oriented design patterns recovery. J. Syst. Softw. 59(2), 181-96, ISSN: 0164-1212 (2001)
    6. Shi, N.; Olsson, R. A.: Reverse engineering of design patterns from java source code. In: 21st IEEE international conference on automated software engineering (ASE-6), pp. 123-34 (2006)
    7. Tsantalis N., Chatzigeorgiou A., Stephanides G., Halkidis S.T.: Design pattern detection using similarity scoring. IEEE Trans. Softw. Eng. 32(11), 896-09 (2006) CrossRef
    8. Rasool, G.; M?der, P.: Flexible design pattern detection based on feature types. In: International conference on automated software engineering (ASE), 26th IEEE/ACM, pp. 243-52 (2011)
    9. Pettersson N., L?we W., Nivre J.: Evaluation of accuracy in design pattern occurrence detection. IEEE Trans. Softw. Eng. 36(4), 575-90 (2010) doi:10.1109/TSE.2009.92 CrossRef
    10. Arcelli Fontana, F.; Zanoni, M.; Caracciolo, A.: A benchmark platform for design pattern detection. In: IARIA, 2010, pp. 42-7 (2010)
    11. Fulop, L.J.; Ferenc, R.; Gyimothy, T.: Towards a benchmark for evaluating design pattern miner tools. In: European conference on software maintenance and reengineering, pp. 143-52 (2008)
    12. Experimental results for the five evaluated systems. URL http://research.ciitlahore.edu.pk/Groups/SERC/DesignPatterns.aspx (2013)
    13. De Lucia A, Deufemia V., Gravino C., Risi M.: Design pattern recovery through visual language parsing and source code analysis. J. Syst. Softw. 82(7), 1177-193 (2009) CrossRef
    14. Dong J., Zhao Y., Peng T.: A review of design pattern mining techniques. Int. J. Softw. Eng. Knowl. Eng. 19(6), 823-55 (2009) CrossRef
    15. Ampatzoglou, A; Charalampidou, S; Stamelos, I: Research state of the art on GoF design patterns: a mapping study. J. Syst. Softw. 86(7), 1945-64 (2013)
    16. Costagliola, G.; De Lucia, A.; Deufemia, V.; Gravino, C.; Risi, M.: Case studies of visual language based design patterns recovery. In: Conference on software maintenance and reengineering (CSMR-6), pp. 165-74. IEEE Computer Society. ISBN 0-7695-2536-9 (2006). doi:10.1109/CSMR.2006.14
    17. De Lucia, A.; Deufemia, V.; Gravino, C.; Risi, M.: A two phase approach to design pattern recovery. In 11th European conference on software maintenance and reengineering (CSMR-7), pp. 297-06 (2007)
    18. De Lucia, A.; Deufemia, V.; Gravino, C.; Risi, M.: Behavioral pattern identification through visual language parsing and code instrumentation. In: Proceedings of the 2009 European conference on software maintenance and reengineering, pp. 99-08. IEEE Computer Society, Washington (2009)
    19. De Lucia, A.; Deufemia, V.; Gravino, C.; Risi, M.: Improving behavioral design pattern detection through model checking. In: 14th European conference on Software maintenance and reengineering (CSMR), pp. 176-85 (2010)
    20. Guéhéneuc Y.-G., Guyomarc’h J.-Y., Sahraoui H.A.: Improving design-pattern identification: a new approach and an exploratory study. Softw. Qual. J. 18(1), 145-74 (2010) doi:10.1007/s11219-009-9082-y Ghulam Rasool (1)
    Patrick M?der (2)

    1. COMSATS Institute of Information Technology, Lahore, Pakistan
    2. Software Systems/Process Informatics Group, Technische Universit?t Ilmenau, Ilmenau, Germany
文摘
Accurate recognition of design patterns from source code supports development-related tasks such as program comprehension, maintenance, reverse engineering, and re-engineering. Researchers focused on this problem for many years, and a variety of recognition approaches have been proposed. Though, much progress has been made, we still identify a lack of flexibility and accuracy in the pattern recognition process. This paper evaluates different design pattern recovery approaches and examines the detection accuracy of these approaches. We found that the major impedance in the accurate recovery of design patterns is the large number of variations for implementing the same pattern. Furthermore, we realized that the combination of multiple searching techniques is required to improve accuracy of pattern detection. Based on these observations, we propose variable pattern definitions, which can be customized and improved towards a pattern catalog that detects patterns in all their variations. The customizable pattern definitions are created from reusable feature types. Each feature type can use one or more searching techniques for efficient detection. The proposed approach supports detection of patterns from multiple programming languages. A prototype implementation of the approach was tested on seven different open-source software projects. For each software project, a baseline was determined and the trustworthiness of each pattern–project combination was rated. The extracted results have been compared with established baselines and with the results of previous techniques.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700