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 Deursen | 1 | 4034 | 254.98 |
Marius Marin | 2 | 270 | 13.70 |
Leon Moonen | 3 | 1432 | 72.21 |