Using Design Pattern Clues to Improve the Precision of Design Pattern Detection Tools

被引:11
|
作者
Fontana, Francesca Arcelli [1 ]
Zanoni, Marco [1 ]
Maggioni, Stefano [1 ]
机构
[1] Univ Milano Bicocca, DISCo Dipartimento Informat Sistemist & Comunicaz, Viale Sarca,336 Bldg U14, I-20126 Milan, Italy
来源
关键词
Software re-engineering; software maintenance; reverse engineering; design recovery; design pattern detection;
D O I
10.5381/jot.2011.10.1.a4
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Design pattern detection, or rather the detection of structures that match design patterns, is useful for reverse engineering, program comprehension and for design recovery as well as for re-documenting object-oriented systems. Finding design patterns inside the code gives hints to software engineers about the methodologies adopted and the problems found during its design phases, and helps the engineers to evolve and maintain the system. In this paper, we present the results provided by four different design pattern detection tools on the analysis of JHotDraw 6.0b1, a well-known Java GUI framework. We show that the tools generally provide different results, even while evaluating the same system. From this observation, we introduce an approach based on micro structures detection that aims to discard the false positives from the detected results, hence improving the precision of the analyzed tools results. For this purpose we exploit a set of micro structures called design pattern clues, which give useful hints for the detection of design patterns.
引用
收藏
页码:1 / 31
页数:31
相关论文
共 50 条
  • [31] A Design Pattern Detection Approach Based on Semantics
    Issaoui, Imene
    Bouassida, Nadia
    Ben-Abdallah, Hanene
    [J]. SOFTWARE ENGINEERING RESEARCH, MANAGEMENT AND APPLICATIONS 2012, 2012, 430 : 49 - 63
  • [32] Detection of Design Pattern Using Graph Isomorphism and Normalized Cross Correlation
    Pradhan, Prayasee
    Dwivedi, Ashish Kumar
    Rath, Santanu Kumar
    [J]. 2015 EIGHTH INTERNATIONAL CONFERENCE ON CONTEMPORARY COMPUTING (IC3), 2015, : 208 - 213
  • [33] Design Pattern Ranking Based on the Design Pattern Intent Ontology
    Bou, Channa
    Laosen, Nasith
    Nantajeewarawat, Ekawit
    [J]. INTELLIGENT INFORMATION AND DATABASE SYSTEMS, ACIIDS 2018, PT I, 2018, 10751 : 25 - 35
  • [34] Building design optimization using a convergent pattern search algorithm with adaptive precision simulations
    Wetter, M
    Polak, E
    [J]. ENERGY AND BUILDINGS, 2005, 37 (06) : 603 - 612
  • [35] E-LEARNING TOOLS FOR TEACHING CLOTHING PATTERN DESIGN
    Avadanei, Manuela
    Ionescu, Irina
    Ionesi, Savin-Dorin
    Dulgheriu, Ionut
    [J]. LET'S BUILD THE FUTURE THROUGH LEARNING INNOVATION!, VOL IV, 2014, : 271 - 278
  • [36] A comparison of reverse engineering tools based on design pattern decomposition
    Arcelli, F
    Masiero, S
    Raibulet, C
    Tisato, F
    [J]. 2005 AUSTRALIAN SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS, 2005, : 262 - 269
  • [37] Evaluating C plus plus design pattern miner tools
    Fulop, Lajos Jeno
    Gyovai, Tamas
    Ferenc, Rudolf
    [J]. SIXTH IEEE INTERNATIONAL WORKSHOP ON SOURCE CODE ANALYSIS AND MANIPULATION, PROCEEDINGS, 2006, : 127 - +
  • [38] Implement a network intrusion detection system using a design pattern: Virtual interface machine to improve decoupling and efficiency of development?
    Han, H
    Lu, XL
    Lu, J
    Cheng, B
    [J]. 2002 INTERNATIONAL CONFERENCE ON COMMUNICATIONS, CIRCUITS AND SYSTEMS AND WEST SINO EXPOSITION PROCEEDINGS, VOLS 1-4, 2002, : 738 - 742
  • [39] Design Pattern Builder A Concept for Refinable Reusable Design Pattern Libraries
    Duerschmid, Tobias
    [J]. COMPANION PROCEEDINGS OF THE 2016 ACM SIGPLAN INTERNATIONAL CONFERENCE ON SYSTEMS, PROGRAMMING, LANGUAGES AND APPLICATIONS: SOFTWARE FOR HUMANITY (SPLASH COMPANION'16), 2016, : 45 - 46
  • [40] The Inspiration of Traditional Chinese Pattern Design Thoughts to Modern Pattern Design
    Lu, Shang-wei
    Zeng, Shan
    [J]. INTERNATIONAL CONFERENCE ON SOCIAL SCIENCE AND DEVELOPMENT (ICSSD 2015), 2015, : 94 - 96