Identification and removal of semantic interference in AspectJ programs
G. Barani, S. Senthil Velan, R.V. Sindhu Priya · 2016
The motivation behind introducing Aspect Oriented Programming (AOP) has been to increase the modularity of software by allowing a clear separation of core and cross-cutting concerns in software. AspectJ is a common AO programming technique used by programmers with excellent support from the Eclipse community. In AspectJ, complex interactions between the base code and aspects can make the code very difficult to understand and maintain. Added to this, there is also a possibility for the occurrence of semantic interference between cross-cutting functionalities offered through advices and woven at the join points in AspectJ software. These semantic interferences cannot be identified by the developer without a proper analysis on its existence. In order to address the problems arising out of semantic interferences in AspectJ programs, this paper summarizes the work done to provide capabilities to define and identify the rules of violations. A tool has been developed to define and identify semantic interferences and also to provide possible solutions for the removal of interferences in a given AspectJ code.