• DocumentCode
    1398677
  • Title

    Aspect-Oriented Refactoring of Legacy Applications: An Evaluation

  • Author

    Mortensen, Michael ; Ghosh, Sudipto ; Bieman, James

  • Author_Institution
    Google, Boulder, CO, USA
  • Volume
    38
  • Issue
    1
  • fYear
    2012
  • Firstpage
    118
  • Lastpage
    140
  • Abstract
    The primary claimed benefits of aspect-oriented programming (AOP) are that it improves the understandability and maintainability of software applications by modularizing crosscutting concerns. Before there is widespread adoption of AOP, developers need further evidence of the actual benefits as well as costs. Applying AOP techniques to refactor legacy applications is one way to evaluate costs and benefits. We replace crosscutting concerns with aspects in three industrial applications to examine the effects on qualities that affect the maintainability of the applications. We study several revisions of each application, identifying crosscutting concerns in the initial revision and also crosscutting concerns that are added in later revisions. Aspect-oriented refactoring reduced code size and improved both change locality and concern diffusion. Costs include the effort required for application refactoring and aspect creation, as well as a decrease in performance.
  • Keywords
    aspect-oriented programming; software maintenance; AOP techniques; application refactoring; aspect creation; aspect-oriented programming; aspect-oriented refactoring; benefits evaluation; change locality; code size; concern diffusion; cost evaluation; crosscutting concerns; legacy applications; primary claimed benefits; software maintainability; software understandability; Aspect-oriented programming; Java; Legacy systems; Maintenance engineering; Programming; Software measurement; Aspect-oriented programming; crosscutting concerns; legacy systems; maintainability.; refactoring;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/TSE.2010.109
  • Filename
    5661792