Crosscutting Concerns in J2EE Applications
The paper explores the evolution benefits of adopting aspects in a J2EE setting by studying crosscutting concerns in a typical J2EE application. To identify these concerns, the paper takes a top-down as well as a bottom-up approach. In the top-down view the paper focuses on typical concerns that are known to be crosscutting (e.g., persistence), the way they are currently implemented and the possible gains and benefits if solved by aspects. In the bottom-up approach the paper takes a look at the application's source code, and applies aspect mining techniques in order to find crosscutting concerns. The paper discusses how such concerns can be represented in an aspect-oriented language (viz. AspectJ), and reflect on the results in terms of maintainability and evolvability of the affected system.