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
Link To Document