Using Hierarchical Agglomerative Clustering to Locate Potential Aspect Interference

Document Type

Conference Proceeding

Publication Date



Systems created within the aspect-oriented paradigm (AOP) are difficult for programmers to understand fully. AOP suggests moving crosscutting concerns scattered throughout class code into an individual module, known as an aspect. The process of aspect weaving injects the crosscutting concern back into class code at specific locations, known as joinpoints. A side effect of the weaving process is aspect interference-when aspect code creates unexpected results at a joinpoint. Therefore, developing an understanding of locations that could either cause or exhibit aspect interference problems is essential to developing an interference-free AOP system. This study used the interference potential (IP) and interference causality potential (ICP) metrics, and derived a new metric called total interference potential (TIP), to classify areas of potential interference problems. In addition, the project performs a hierarchical agglomerative clustering using the three metrics. Experiments conducted on two AOP systems identified clusters within each program that could cause or exhibit aspect interference problems. Results showed the merit of using clustering analysis as a technique to locate portions of a system to review or alter to prevent interference problems.