Multiple Layer Clustering of Large Software Systems

  • Authors:
  • Bill Andreopoulos;Aijun An;Vassilios Tzerpos;Xiaogang Wang

  • Affiliations:
  • York University;York University;York University;York University

  • Venue:
  • WCRE '05 Proceedings of the 12th Working Conference on Reverse Engineering
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software clustering algorithms presented in the literature rarely incorporate in the clustering process dynamic information, such as the number of function invocations during runtime. Moreover, the structure of a software system is often multi-layered, while existing clustering algorithms often create flat system decompositions. This paper presents a software clustering algorithm called MULICsoft that incorporates in the clustering process both static and dynamic information. MULICsoft produces layered clusters with the core elements of each cluster assigned to the top layer. We present experimental results of applying MULICsoft to a large open-source system. Comparison with existing software clustering algorithms indicates that MULICsoft is able to produce decompositions that are close to those created by system experts.