Software Architecture Decomposition Using Clustering Techniques

Abdulaziz Alkhalid, Chung–Horng Lung, Duo Liu, Samuel A. Ajila · 2013

While applying clustering techniques to software system decomposition, the software designer faces two practical issues: (1) determination of the number of clusters that will be mapped to software modules and (2) determination of a specific cluster or software module for some highly coupled components. This paper presents an approach for software architecture decomposition with an emphasis on finding solutions to those two issues. The approach uses fuzzy c-means clustering together with three hierarchical agglomerative clustering methods and the adaptive K-nearest neighbor algorithm. We applied the approach to real industrial software systems. The results show that our approach provides objective and insightful information to the software designer in dealing with those two issues.

Read the paper · More papers on PaperTik