Identifying composite crosscutting concerns with scatter-based graph clustering

Identifying composite crosscutting concerns (CCs) is a research task and challenge of aspect mining. In this paper, we propose a scatter-based graph clustering approach to identify composite CCs. Inspired by the state-of-the-art link analysis techniques, we propose a two-state model to approximate how CCs tangle with core modules. According to this model, we obtain scatter and centralization scores for each program element. Especially, the scatter scores are adopted to select CC seeds. Furthermore, to identify composite CCs, we adopt a novel similarity measurement and develop an undirected graph clustering to group these seeds. Finally, we compare it with the previous work and illustrate its effectiveness in identifying composite CCs.

[1]  D.M. Mount,et al.  An Efficient k-Means Clustering Algorithm: Analysis and Implementation , 2002, IEEE Trans. Pattern Anal. Mach. Intell..

[2]  Jennifer Widom,et al.  SimRank: a measure of structural-context similarity , 2002, KDD.

[3]  Hans-Arno Jacobsen,et al.  Horizontal decomposition of Prevayler , 2005, CASCON.

[4]  Danfeng Zhang,et al.  Automated Aspect Recommendation through Clustering-Based Fan-in Analysis , 2008, 2008 23rd IEEE/ACM International Conference on Automated Software Engineering.

[5]  Jens Krinke,et al.  Aspect mining using event traces , 2004 .

[6]  MarinMarius,et al.  Identifying Crosscutting Concerns Using Fan-In Analysis , 2007 .

[7]  Marco Gori,et al.  Web page scoring systems for horizontal and vertical search , 2002, WWW.

[8]  Leon Moonen,et al.  An Integrated Crosscutting Concern Migration Strategy and its Application to JHOTDRAW , 2007, Seventh IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2007).

[9]  Acm Sigsoft,et al.  International Conference on Aspect-Oriented Software Development : AOSD ... , 2002 .

[10]  Robert H. Halstead,et al.  Matrix Computations , 2011, Encyclopedia of Parallel Computing.

[11]  João M. Fernandes,et al.  Towards a catalog of aspect-oriented refactorings , 2005, AOSD '05.

[12]  Sven Apel,et al.  How AspectJ is Used: An Analysis of Eleven AspectJ Programs , 2010, J. Object Technol..

[13]  Gabriela Serban Czibula,et al.  A New k-means Based Clustering Algorithm in Aspect Mining , 2006, 2006 Eighth International Symposium on Symbolic and Numeric Algorithms for Scientific Computing.

[14]  Hong Cheng,et al.  Graph Clustering Based on Structural/Attribute Similarities , 2009, Proc. VLDB Endow..

[15]  Richard C. Waters,et al.  The Programmer's Apprentice: Knowledge Based Program Editing , 1982, IEEE Transactions on Software Engineering.

[16]  Jon Kleinberg,et al.  Authoritative sources in a hyperlinked environment , 1999, SODA '98.

[17]  Hans-Arno Jacobsen,et al.  Mining Crosscutting Concerns through Random Walks , 2012, IEEE Transactions on Software Engineering.

[18]  Jens Krinke,et al.  Aspect mining using event traces , 2004, Proceedings. 19th International Conference on Automated Software Engineering, 2004..

[19]  Maximilian Störzer,et al.  Aspect Mining for Aspect Refactoring : An Experience Report , 2006 .

[20]  G.S. Cojocar,et al.  On clustering based aspect mining , 2008, 2008 4th International Conference on Intelligent Computer Communication and Processing.

[21]  Mariano Ceccato,et al.  Aspect mining through the formal concept analysis of execution traces , 2004, 11th Working Conference on Reverse Engineering.

[22]  Leon Moonen,et al.  An Integrated Crosscutting Concern Migration Strategy and its Application to JHOTDRAW , 2007 .

[23]  Rajeev Motwani,et al.  The PageRank Citation Ranking : Bringing Order to the Web , 1999, WWW 1999.