A Hierarchical Clustering Based Approach in Aspect Mining
keywords: Hierarchical clustering, aspect mining, crosscutting concern, quality measure, evaluation
Clustering is a division of data into groups of similar objects. Aspect mining is a process that tries to identify crosscutting concerns in existing software systems. The goal is to refactor the existing systems to use aspect oriented programming, in order to make them easier to maintain and to evolve. The aim of this paper is to present a new hierarchical clustering based approach in aspect mining. For this purpose we propose HAC algorithm (Hierarchical Agglomerative Clustering in aspect mining). Clustering is used in order to identify crosscutting concerns. We evaluate the obtained results from the aspect mining point of view, based on two quality measures that we have previously introduced and a newly defined one. The proposed approach is compared with other similar existing approaches in aspect mining and two case studies are also reported.
mathematics subject classification 2000: 68N99, 62H30
reference: Vol. 29, 2010, No. 6, pp. 881–900