Design Pattern Detection in Code : A Hybrid Approach Utilizing a Bayesian Network, Machine Learning with Graph Embeddings, and Micropattern Rules
- Software design patterns and the abstractions they offer can support developers and maintainers with program code comprehension. Yet manually-created pattern documentation within code or code-related assets, such as documents or models, can be unreliable, incomplete, and labor-intensive. While various Design Pattern Detection (DPD) techniques have been proposed, industrial adoption of automated DPD remains limited. This paper contributes a hybrid DPD solution approach that leverages a Bayesian network integrating developer expertise via rule-based micropatterns with our machine learning subsystem that utilizes graph embeddings. The prototype shows its feasibility, and the evaluation using three design patterns shows its potential for detecting both design patterns and variations.
Author: | Roy OberhauserORCiD, Sandro Moser |
---|---|
URN: | urn:nbn:de:bsz:944-opus4-32541 |
URL: | https://www.thinkmind.org/index.php?view=article&articleid=icsea_2023_1_200_10112 |
Source Title (English): | Proceedings of the Eighteenth International Conference on Software Engineering Advances |
Conference Name: | ICSEA |
Conference Date: | 13-17 November |
Conference Place: | Valencia, Spain |
Document Type: | Conference Proceeding |
Language: | English |
Year of Completion: | 2023 |
Release Date: | 2024/01/16 |
Tag: | artificial neural networks; graph embeddings; machine learning; rule-based expert system; software design pattern detection |
Number of Pages: | 8 |
First Page: | 122 |
Last Page: | 129 |
Faculty: | Elektronik und Informatik |
Open Access: | Open Access |
Relevance: | peer reviewed |
Licence (German): | ![]() |