A conflict between refactoring and AOP techniques can arise whenever an application with aspects is subjected to a refactoring application. When the units of code being restructured are also part of a pointcut definition, changes in the external behaviour of the application can occur. This study presents an approach to anticipate the impact of refactoring changes in AO applications. We first decompose refactorings into atomic change operations. Then we individually analyse and evaluate each of these operations. The overall results anticipate the consequences of the refactoring. Our approach is partially automated. We also provide some examples and introduce a discussion (left open in this work) about the relationship between different variables that characterize the refactorings.
展开▼