Refactoring of Crosscutting Concerns With Metaphor-Based Heuristics
Source: Lancaster University
It has been advocated that Aspect-Oriented Programming (AOP) is an effective technique to improve software maintainability through explicit support for modularising crosscutting concerns. However, in order to take the advantages of AOP, there is a need for supporting the systematic refactoring of crosscutting concerns to aspects. Existing techniques for aspect-oriented refactoring are too fine-grained and do not take the concern structure into consideration. This paper presents a metaphor-based classification of crosscutting concerns, which is driven by their manifested shapes through a system's modular structure. The authors' categories provide an intuitive vocabulary for concern-oriented design flaws and identify refactorings in terms of recurring crosscutting structures.