• DocumentCode
    3008634
  • Title

    Rejuvenate Pointcut: A Tool for Pointcut Expression Recovery in Evolving Aspect-Oriented Software

  • Author

    Khatchadourian, Raffi T. ; Rashid, Awais

  • Author_Institution
    Ohio State Univ., Columbus, OH
  • fYear
    2008
  • fDate
    28-29 Sept. 2008
  • Firstpage
    261
  • Lastpage
    262
  • Abstract
    Aspect-oriented programming (AOP) strives to localize the scattered and tangled implementations of crosscutting concerns (CCCs) by allowing developers to declare that certain actions (advice) should be taken at specific points (join points) during the execution of software where a CCC (an aspect) is applicable. However, it is non-trivial to construct optimal pointcut expressions (a collection of join points) that capture the true intentions of the programmer and, upon evolution, maintain these intentions. We demonstrate an AspectJ source-level inferencing tool called rejuvenate pointcut which helps developers maintain pointcut expressions over the lifetime of a software product. A key insight into the tool´s construction is that the problem of maintaining pointcut expressions bears strong similarity to the requirements traceability problem in software engineering; hence, the underlying algorithm was devised by adapting existing approaches for requirements traceability to pointcut maintenance. The Eclipse IDE-based tool identifies intention graph patterns pertaining to a pointcut and, based on these patterns, uncovers other potential join points that may fall within the scope of the pointcut with a given confidence. This work represents a significant step towards providing tool-supported maintainability for evolving aspect-oriented software.
  • Keywords
    formal specification; object-oriented programming; software maintenance; software tools; AspectJ; Eclipse IDE-based tool; aspect-oriented programming; aspect-oriented software; crosscutting concern; pointcut expression recovery; pointcut maintenance; rejuvenate pointcut; requirements traceability; software engineering; software product; Inference algorithms; Joining processes; Programming profession; Scattering; Software algorithms; Software engineering; Software maintenance; Software tools; aspect-oriented programming; inferencing; refactoring; source code analysis;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Source Code Analysis and Manipulation, 2008 Eighth IEEE International Working Conference on
  • Conference_Location
    Beijing
  • Print_ISBN
    978-0-7695-3353-7
  • Type

    conf

  • DOI
    10.1109/SCAM.2008.32
  • Filename
    4637558