Skip Navigation

IEICE Transactions on Information and Systems 2008 E91-D(4):933-944; doi:10.1093/ietisy/e91-d.4.933
This Article
Right arrow Full Text (PDF)
Right arrow References
Right arrow Alert me when this article is cited
Right arrow Alert me if a correction is posted
Services
Right arrow Email this article to a friend
Right arrow Similar articles in this journal
Right arrow Alert me to new issues of the journal
Right arrow Add to My Personal Archive
Right arrow Download to citation manager
Right arrow Request Permissions
Google Scholar
Right arrow Articles by HAYASHI, S.
Right arrow Articles by SAEKI, M.
Social Bookmarking
 Add to CiteULike   Add to Connotea   Add to Del.icio.us  
What's this?

Copyright © 2008 The Institute of Electronics, Information and Communication Engineers

Special Section on Knowledge-Based Software Engineering -- Papers -- Software Engineering

Design Pattern Detection by Using Meta Patterns

Shinpei HAYASHI1, Junya KATADA1,3, Ryota SAKAMOTO1, Takashi KOBAYASHI2 and Motoshi SAEKI1

1 The authors are with the Department of Computer Science, Graduate School of Information Science and Engineering, Tokyo Institute of Technology, Tokyo, 152–8552 Japan. E-mail: hayashi{at}se.cs.titech.ac.jp, 2 The author is with the Center for Embedded Computing Systems, Graduate School of Information Science, Nagoya University, Nagoya-shi, 464–8601 Japan., 3 Presently, with NTT COMWARE CORPORATION.


   Abstract

One of the approaches to improve program understanding is to extract what kinds of design pattern are used in existing object-oriented software. This paper proposes a technique for efficiently and accurately detecting occurrences of design patterns included in source codes. We use both static and dynamic analyses to achieve the detection with high accuracy. Moreover, to reduce computation and maintenance costs, detection conditions are hierarchically specified based on Pree's meta patterns as common structures of design patterns. The usage of Prolog to represent the detection conditions enables us to easily add and modify them. Finally, we have implemented an automated tool as an Eclipse plug-in and conducted experiments with Java programs. The experimental results show the effectiveness of our approach.

Key Words: design patterns, program understanding, meta patterns, dynamic analysis, Prolog


Manuscript received July 2, 2007. Manuscript revised October 17, 2007.


Add to CiteULike CiteULike   Add to Connotea Connotea   Add to Del.icio.us Del.icio.us    What's this?




Disclaimer:
Please note that abstracts for content published before 1996 were created through digital scanning and may therefore not exactly replicate the text of the original print issues. All efforts have been made to ensure accuracy, but the Publisher will not be held responsible for any remaining inaccuracies. If you require any further clarification, please contact our Customer Services Department.