Abstract: Mapping source code entities manually to architectural modules is labor-intensive and time-consuming. Automating this process can help adopt static architecture compliance checking techniques like reflexion modeling. We propose a graph-based semi-supervised learning approach to automate this mapping. Our method leverages syntactic and semantic dependencies extracted from compiled software artifacts and formulates the problem as a node classification task on a graph. We investigate two Graph Convolutional Network (GCN) variants: (1) a homogeneous graph approach that treats all dependencies uniformly and (2) a heterogeneous graph approach that maintains distinct dependency types, utilizing a Relational Graph Convolutional Network (RGCN). The proposed method was evaluated on eight open-source Java systems and benchmarked against the state-of-the-art Naive Bayes classifier. Results demonstrate that the RGCN variant outperforms the baseline, offering improved accuracy for mapping source code entities to architectural modules.
External IDs:dblp:conf/icsa/JabeenENW25
Loading