Refactoring of Crosscutting Concerns with Metaphor-Based Heuristics

  • Authors:
  • Bruno Carreiro da Silva;Eduardo Figueiredo;Alessandro Garcia;Daltro Nunes

  • Affiliations:
  • Institute of Informatics, Federal University of Rio Grande do Sul, Porto Alegre, Brazil;Computing Department, Lancaster University, Lancaster, United Kingdom;Computing Department, Lancaster University, Lancaster, United Kingdom;Institute of Informatics, Federal University of Rio Grande do Sul, Porto Alegre, Brazil

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

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 two categories towards a metaphor-based classification of crosscutting concerns driven by their manifested shapes through a system's modular structure. The proposed categories provide an intuitive and fundamental terminology for detecting concern-oriented design flaws and identifying refactorings in terms of recurring crosscutting structures. On top of this classification, we define a suite of metaphor-based refactorings to guide the ''aspectisation'' of each concern category. We evaluate our technique by classifying concerns of 23 design patterns and by proposing refactorings to aspectise them according to observations made in previous empirical studies. Based on our experience, we also determine a catalogue of potential additional categories and heuristics for refactoring of crosscutting concerns.