Identification and Characterization of Crosscutting Concerns in MATLAB Systems

The current state-of-the-art in aspect mining is well advanced for object-oriented programming languages but until now neglected the MATLAB language. This paper contributes to fill that gap by proposing a novel notion of crosscutting concern, tailored for the specific characteristics of MATLAB code bases. We present an exploratory, token-based, approach to aspect mining for MATLAB. An analysis of data obtained from a tool using this approach over 209 publicly available MATLAB files indicate the approach is valid for detecting several kinds of crosscutting concerns in MATLAB systems.

[1]  João Saraiva,et al.  A domain-specific aspect language for transforming MATLAB programs , 2010 .

[2]  João M. Fernandes,et al.  Towards a Catalogue of Refactorings and Code Smells for AspectJ , 2006, LNCS Trans. Aspect Oriented Softw. Dev..

[3]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[4]  Laurie J. Hendren,et al.  AspectMatlab: an aspect-oriented scientific programming language , 2010, AOSD.

[5]  Stanley M. Sutton,et al.  N degrees of separation: multi-dimensional separation of concerns , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[6]  Emily Hill,et al.  Using natural language program analysis to locate and understand action-oriented concerns , 2007, AOSD.

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

[8]  Stanley M. Sutton,et al.  Multi-Dimensional Separation of Concerns , 1999 .

[9]  Arie van Deursen,et al.  Identifying aspects using fan-in analysis , 2004, 11th Working Conference on Reverse Engineering.

[10]  Paolo Tonella,et al.  A Survey of Automated Code-Level Aspect Mining Techniques , 2007, LNCS Trans. Aspect Oriented Softw. Dev..

[11]  Miguel P. Monteiro,et al.  Adding aspect-oriented features to MATLAB , 2006 .