Zásuvný modul do programu SonarQube umožňující detekci návrhových vzorů ve zdrojovém kódu
Loading...
Files
Downloads
6
Date issued
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Vysoká škola báňská – Technická univerzita Ostrava
Location
Signature
Abstract
Design patterns are widely recognized as proven solutions to common problems in software design.
However, the automatic detection of design patterns in source code remains a challenge. This work
presents a comprehensive approach to detecting design patterns in Java code using a combination
of attribute detection and integration into existing static code analysis tools. The proposed solution
involves two main steps. Firstly, an initial analysis examines individual objects and searches for
attributes, methods, and relationships characteristic of specific design patterns. This initial pass
assigns a probability score to each potential pattern instance. In the second step, relationships
between classes are further analyzed to confirm the presence of design pattern structures. This
approach was evaluated on various test cases, from textbook implementations of design patterns to
real-world projects with open-source code. The results demonstrate the ability to identify design
pattern structures in code. The benefits of this work include solution for design pattern detection
and insights into practical issues associated with their detection. The acquired knowledge can serve
as a foundation for developing more robust tools for design pattern detection, supporting activities
related to software understanding, refactoring, and quality assurance.
Description
Subject(s)
Automated design pattern detection, Static code analysis, Java code analysis, Software design, Software comprehension, Software quality assurance, Design pattern taxonomy, Design
pattern heuristics, Structural
analysis of design patterns, Design pattern implementation challenges, Software engineering tools, Software maintenance and evolution