A Machine Learning Approach Towards Automatic Software Design Pattern Recognition Across Multiple Programming Languages
- As the amount of software source code increases, manual approaches for documentation or detection of software design patterns in source code become inefficient relative to the value. Furthermore, typical automatic pattern detection tools are limited to a single programming language. To address this, our Design Pattern Detection using Machine Learning (DPDML) offers a generalized and programming language agnostic approach for automated design pattern detection based on machine learning (ML). The focus of our evaluation was on ensuring DPDML can reasonably detect one design pattern in the structural, creational, and behavioral category for two popular programming languages (Java and C#). 60 unique Java and C# code projects were used to train the artificial neural network (ANN) and 15 projects were then used to test pattern detection. The results show the feasibility and potential for pursuing an ANN approach for automated design pattern detection.
Author: | Roy OberhauserORCiD |
---|---|
Institutional Author: | Roy Oberhauser |
URN: | urn:nbn:de:bsz:944-opus4-10255 |
URL: | https://www.thinkmind.org/index.php?view=article&articleid=icsea_2020_1_50_10024 |
ISBN: | 978-1-61208-827-3 |
ISSN: | 2308-4235 |
Source Title (English): | Proceedings of the Fifteenth International Conference on Software Engineering Advances |
Conference Name: | ICSEA 2020 |
Conference Date: | 18 - 22 Oktober |
Conference Place: | Porto, Portugal |
Publisher: | IARIA |
Document Type: | Conference Proceeding |
Language: | English |
Year of Completion: | 2020 |
Release Date: | 2020/12/14 |
Number of Pages: | 6 |
First Page: | 27 |
Last Page: | 32 |
DDC classes: | 000 Allgemeines, Informatik, Informationswissenschaft |
Open Access: | Open Access |