Addressing S/W Concerns In An Aspect-Oriented Approach

Meena Nagappan

Abstract

Aspect-oriented programming (AOP) is an innovative and rapidly growing approach in designing and developing software systems. AOP reduces code redundancy, enables portable modification, reduces system complexity and encourages code re-usability of software systems. AOP achieves the above goals by separating non-functional concerns that crosscut the main system into aspects. Non-functional concerns are concerns that are not the main functionality of the system behavior but are necessary for the system in order to work efficiently and reliably. One example of a non-functional concern is user-authentication. We evaluated this new approach by comparing with the traditional object-oriented programming (OOP) approach. For the comparison purpose, the OOP language we used to implement is Java and the AOP language we used to implement is AspectJ. Our implementation evaluation shows, how this new AOP approach enhances the OOP approach to improve code modularit! y. We also experienced, how this approach could be applied for new as well as existing systems that does not use AOP.