DocumentCode
2037417
Title
Aspect mining using model-based clustering
Author
McFadden, Renata Rand ; Mitropoulos, Frank J.
Author_Institution
Grad. Sch. of Comput. & Inf. Sci., Nova Southeastern Univ., Fort Lauderdale, FL, USA
fYear
2012
fDate
15-18 March 2012
Firstpage
1
Lastpage
8
Abstract
Legacy systems contain critical and complex business code that has been in use for a long time. This code is difficult to understand, maintain, and evolve, in large part due to crosscutting concerns: software system features, such as persistence, logging, and error handling, whose implementation is spread across multiple modules. Aspect-oriented techniques separate crosscutting concerns from the base code, using separate modules called aspects and, thus, simplify the legacy code. Aspect mining techniques identify aspect candidates so that the legacy code can then be refactored into aspects. This study shows that model-based clustering using a carefully selected vector-space of features can be more effective than extant aspect mining methods based on heuristic methods as such hierarchical or partitional clustering. Three model-based algorithms were experimentally compared against existing heuristic methods, such as k-means clustering and agglomerative hierarchical clustering, using six different vector-space models. Model-based algorithms performed better in not spreading the methods of the concerns across the multiple clusters and were significantly better at partitioning the data such that, given an ordered list of clusters, fewer clusters and methods were needed to be analyzed to find all the concerns. In addition, model-based algorithms automatically determined the optimal number of clusters, a great advantage over the heuristic-based algorithms. Lastly, the newly defined vector-space models performed better, relative to aspect mining, than the previously defined vector-space models.
Keywords
aspect-oriented programming; data mining; pattern clustering; software maintenance; software metrics; agglomerative hierarchical clustering; aspect candidate; aspect mining; aspect-oriented programming; aspect-oriented technique; base code; business code; crosscutting concern; data partitioning; heuristic method; heuristic-based algorithm; k-means clustering; legacy code; legacy system; model-based algorithm; model-based clustering; partitional clustering; software metrics; software system; vector-space model; Clustering algorithms; Heuristic algorithms; Measurement; Partitioning algorithms; Shape; Solid modeling; Vectors; Aspect Mining; Aspect-Oriented Programming; Crosscutting Concerns; Fan-in metric; Heuristic-Based Clustering; Model-Based Clustering; Software Metrics;
fLanguage
English
Publisher
ieee
Conference_Titel
Southeastcon, 2012 Proceedings of IEEE
Conference_Location
Orlando, FL
ISSN
1091-0050
Print_ISBN
978-1-4673-1374-2
Type
conf
DOI
10.1109/SECon.2012.6196984
Filename
6196984
Link To Document