CCE Theses and Dissertations

Date of Award


Document Type


Degree Name

Doctor of Philosophy in Computer Science (CISD)


College of Engineering and Computing


Francisco J. Mitropoulos

Committee Member

Renata Rand McFadden

Committee Member

Sumitra Mukherjee


Aspect mining, Computer science


Aspect oriented programming languages provide a new enhanced composition mechanism between the functional sub units as compared to earlier non aspect oriented languages. For this reason the refactoring process requires a new approach to the analysis of existing code that focuses on how the functions cross cut one another. Aspect mining is a process of studying an existing program in order to find these cross cutting functions or concerns so they may be implemented using new aspect oriented constructs and thus reduce the complexity of the existing code. One approach to the detection of these cross cutting concerns generates a method call tree that outlines the method calls made within the existing code. The call tree is then examined to find recurring patterns of methods that can be symptoms of cross cutting concerns. The conducted research focused on enhancing this approach to detect and quantify cross cutting concerns that are a result of code tangling as well as code scattering. The conducted research also demonstrates how this aspect mining approach can be used to overcome the difficulties in detection caused by variations in the coding structure introduced by over time.