Object-oriented design patterns are frequently used in real-world applications. Detection of design patterns is essential for comprehension of the intent and design of a software project. This paper presents a graph-mining approach for detecting design patterns. Our approach is based on searching input design patterns in the space of model graph of the source code by isomorphic sub-graph search method. We developed a tool called DesPaD to apply our pattern detection approach in an automated-way. We successfully detected 23 GoF design patterns in the demo source code of the Applied Java Patterns book and also obtained encouraging results out of our experiments that we conducted on JUnit 3.8, JUnit 4.1 and Java AWT open source projects.
Software project, design pattern, subgraphs mining, object-oriented
International Journal of Trend in Scientific Research and Development - IJTSRD having
online ISSN 2456-6470. IJTSRD is a leading Open Access, Peer-Reviewed International
Journal which provides rapid publication of your research articles and aims to promote
the theory and practice along with knowledge sharing between researchers, developers,
engineers, students, and practitioners working in and around the world in many areas
like Sciences, Technology, Innovation, Engineering, Agriculture, Management and
many more and it is recommended by all Universities, review articles and short communications
in all subjects. IJTSRD running an International Journal who are proving quality
publication of peer reviewed and refereed international journals from diverse fields
that emphasizes new research, development and their applications. IJTSRD provides
an online access to exchange your research work, technical notes & surveying results
among professionals throughout the world in e-journals. IJTSRD is a fastest growing
and dynamic professional organization. The aim of this organization is to provide
access not only to world class research resources, but through its professionals
aim to bring in a significant transformation in the real of open access journals
and online publishing.