UBC Theses and Dissertations
The scalability of AspectJ Singh, Arjun
To assess the scalability of using AspectJ, we refactored concerns that crosscut over half of the plug-ins that comprise the Eclipse IDE. Eclipse is a suitable candidate for furthering other studies on AspectJ's scalability because the system has an additional modularization mechanism typical of large systems that introduces new complexities for defining advice and aspects. We evaluated quantitative and qualitative properties of our AO refactored version of Eclipse and compared them to their equivalents in the original, OO version of Eclipse. Quantitatively, we evaluated execution time and memory usage. Qualitatively, we evaluated changes in scattering, coupling, and abstractions. Our assessment of the scalability of AspectJ shows that using the language in Eclipse resulted in changes in performance and improvements in code similar to those seen in previous studies on the scalability of AspectJ. This leads us to conclude that AspectJ scales up to large systems. We also conclude that it may be necessary for the system to be aware of aspects in order to deal with defining advice that cross system boundaries.
Item Citations and Data