Detecting design pattern using subgraph discovery

  • Authors:
  • Ming Qiu;Qingshan Jiang;An Gao;Ergan Chen;Di Qiu;Shang Chai

  • Affiliations:
  • Software School of Xiamen University, Xiamen P.R. China;Software School of Xiamen University, Xiamen P.R. China;Software School of Xiamen University, Xiamen P.R. China;Software School of Xiamen University, Xiamen P.R. China;Software School of Xiamen University, Xiamen P.R. China;Software School of Xiamen University, Xiamen P.R. China

  • Venue:
  • ACIIDS'10 Proceedings of the Second international conference on Intelligent information and database systems: Part I
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Design patterns have been widely adopted by software industry to reuse the best practices and improve the quality of software systems. In order to enable software engineers to understand and reengineer the software program, quite a few approaches have been developed to identify design patterns from source code. However, the existing approaches generally identify patterns sequentially. As a result, the computation time of these approaches is linearly dependent on the number of design patterns to be detected. In this paper, a new approach based on subgraph discovery is proposed to recoginze a set of design patterns at a time. The computational time of the novel algorithm is sublinearly dependent on the number of patterns. A state space graph is introduced to avoid the search space explosion and reduce the opportunity to detect subgraph isomorphism. We run detailed experiments on three open source systems to evaluate our approach. The results of our experiments confirm on the efficiency and effectiveness of the proposed approach.