Aspect mining using model-based clustering

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...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: McFadden, R. R., Mitropoulos, F. J.
Format: Tagungsbericht
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung: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.
ISSN:1091-0050
1558-058X
DOI:10.1109/SECon.2012.6196984