In this project, we have developed and implemented a new design pattern detection method based on the graph theory. The proposed detection process is subdivided into two sequential phases. In the first phase, we concern both the semantics and the syntax of the structural signature of patterns. To do so, the system under study and the patterns asked to be detected, are transformed into semantic graphs. Now, the initial problem is converted into the problem of finding matches in the system graph for the pattern graph. To reduce the exploration space, based on a predetermined set of criteria, the system graph is broken into the possible subsystem graphs. After applying a semantic matching algorithm and obtaining the candidate instances, by analyzing the behavioral signature of the patterns, in the second phase, final matches will be obtained.
More Info: Bafandeh Mayvan, Bahareh, and Abbas Rasoolzadegan. "Design pattern detection based on the graph theory." Knowledge-Based Systems 120 (2017): 211-225.