Title :
Refactoring Aspects into Java Code
Author :
Kleyman, M. ; Tyszberowicz, S. ; Yehudai, A.
Abstract :
One of the principles of the agile development methodology is to "welcome changing requirements even late in development". Refactoring is a major technique used to cope with changes. It enables to reorganize code while preserving the external behavior. Several refactorings can be performed automatically. Aspect oriented programming (AOP) is a powerful technology that greatly improves programmer\´s ability to quickly introduce changes to a software system. AOP enables easily modifying behavior of numerous locations in the system code or adding new behavior. AOP is perceived by some people not to be mature enough; hence they avoid using it in production software. We have developed ACME, a prototype tool that implements a refactoring process for aspects. ACME enables a developer to convert AspectJ code to pure Java code according to conversion patterns. The available patterns are creating a singleton class from an aspect and merging aspects into existing classes. The tool creates modular and readable object-oriented code. This paper presents ACME functionality using example transformations and discusses the tool\´s applicability and decisions made during its design.
Keywords :
Authentication; Authorization; Educational institutions; Java; Libraries; Production; Programming profession; Prototypes; Software prototyping; Software systems;
Conference_Titel :
Software-Science, Technology & Engineering, 2007. SwSTE 2007. IEEE International Conference on
Conference_Location :
Herzlia, Israel
Print_ISBN :
978-0-7695-3021-5
DOI :
10.1109/SwSTE.2007.7