TL;DR
This paper presents a Naive Bayes classifier that automates mapping source code entities to architectural modules using semantic and syntactic features, outperforming existing methods in Java systems.
Contribution
It introduces a machine learning approach with Naive Bayes for automatic code-to-architecture mapping, reducing parameterization and improving accuracy over state-of-the-art techniques.
Findings
Naive Bayes classifier outperforms existing mapping functions
The approach requires fewer parameters and is more effective
It provides a useful baseline for semi-automatic clustering
Abstract
Background: The process of mapping a source code entity onto an architectural module is to a large degree a manual task. Automating this process could increase the use of static architecture conformance checking methods, such as reflexion modeling, in industry. Current techniques rely on user parameterization and a highly cohesive design. A machine learning approach would potentially require fewer parameters and better use of the available information to aid in automatic mapping. Aim: We investigate how a classifier can be trained to map from source code to architecture modules automatically. This classifier is trained with semantic and syntactic dependency information extracted from the source code and from architecture descriptions. The classifier is implemented using multinomial naive Bayes and evaluated. Method: We perform experiments and compare the classifier with three…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
