2014
DOI: 10.1002/smr.1674
|View full text |Cite
|
Sign up to set email alerts
|

Design pattern detection using a DSL-driven graph matching approach

Abstract: Knowledge about design pattern (DP) instances improves program comprehension and reengineering of object‐oriented systems. Effectively, it helps to discover developer design decisions and trade‐offs that often are not documented. This work describes an approach to automatically detect DPs in existing object‐oriented systems by tracing systems' source code components with the roles they play in the patterns. In the proposed approach, DPs are modeled based on their high‐level structural properties (e.g., inherit… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
4
0

Year Published

2016
2016
2024
2024

Publication Types

Select...
5
3
2

Relationship

0
10

Authors

Journals

citations
Cited by 25 publications
(6 citation statements)
references
References 53 publications
0
4
0
Order By: Relevance
“…While SparT [17] was also evaluated, we excluded it from the analysis as the off-the-shelf implementation did not include specifications for creational and structural patterns. We excluded Tools that are unavailable for download (e.g., [19,20]) or those for which a core dependency is deprecated (e.g., [21,15]) from the comparison.…”
Section: Comparing Patternscout With Existing Toolsmentioning
confidence: 99%
“…While SparT [17] was also evaluated, we excluded it from the analysis as the off-the-shelf implementation did not include specifications for creational and structural patterns. We excluded Tools that are unavailable for download (e.g., [19,20]) or those for which a core dependency is deprecated (e.g., [21,15]) from the comparison.…”
Section: Comparing Patternscout With Existing Toolsmentioning
confidence: 99%
“…On the other hand, these methods cannot distinguish design patterns with similar structures [9,22]. For this reason, using behavioral analysis along with structural analysis increases the accuracy of the detection results [7,[30][31][32][33][34].…”
Section: Detection Approachesmentioning
confidence: 99%
“…While the former reduces the search space by conveniently partitioning the project graph, the latter defines ordered sequences to guide the search in such an order that the most representative classes of the pattern are discovered first, filtering irrelevant classes at an early stage. DPF is a model-based graph matching tool for which a meta-model and a domain-specific language are proposed to specify the structural and behavioural relationships describing DPs (Bernardi et al, 2014). Another popular tool, PINOT (Shi and Olsson, 2006), uses graphs as an abstract representation of methods taking part in candidate DP implementations, from which control flow is statically analysed.…”
Section: Related Workmentioning
confidence: 99%