Title
A Systematic Aspect-Oriented Refactoring and Testing Strategy, and its Application to JHotDraw
Abstract
Aspect oriented programming aims at achieving better modulariza- tion for a system's crosscutting concerns in order to improve its key quality attributes, such as evolvability and reusability. Consequently, the adoption of aspect-oriented techniques in existing (legacy) software systems is of interest to remediate software aging. The refactoring of existing systems to employ aspect- orientation will be considerably eased by a systematic approach that will ensure a safe and consistent migration. In this paper, we propose a refactoring and testing strategy that supports such an approach and consider issues of behavior conservation and (incremental) in- tegration of the aspect-oriented solution with the original system. The strategy is applied to the JHOTDRAW open source project and illustrated on a group of se- lected concerns. Finally, we abstract from the case study and present a number of generic refactorings which contribute to an incremental aspect-oriented refactor- ing process and associate particular types of crosscutting concerns to the model and features of the employed aspect language. The contributions of this paper are both in the area of supporting migration towards aspect-oriented solutions and supporting the development of aspect languages that are better suited for such migrations.
Year
Venue
Keywords
2005
Information Retrieval
aspect oriented,legacy software,aspect oriented programming,software engineering,programming language
Field
DocType
Volume
Programming language,Aspect-oriented programming,Computer science,Software system,Software aging,Modular programming,Code refactoring,Test strategy,Legacy system,Reusability
Journal
abs/cs/050
Citations 
PageRank 
References 
14
1.27
14
Authors
3
Name
Order
Citations
PageRank
A. van Deursen14034254.98
Marius Marin227013.70
Leon Moonen3143272.21