Title :
Debugging support for aspect-oriented program based on program slicing and call graph
Author :
Ishio, Takashi ; Kusumoto, Shinji ; Inoue, Katsuro
Author_Institution :
Graduate Sch. of Inf. Sci. & Technol., Osaka Univ., Japan
Abstract :
Aspect-oriented programming (AOP) introduces a new software module unit named aspect to encapsulate crosscutting concerns. While AOP modularizes crosscutting concerns to improve maintainability and reusability, AOP introduces a new factor of complexity. It is difficult to find defects caused by an aspect modifying or preventing the behavior of other objects and aspects. We examine a method to support a debugging task in aspect-oriented software development. We propose an application of a call graph generation and program slicing to assist in debugging. A call graph visualizes control dependence relations between objects and aspects and supports the detection of an infinite loop. On the other hand, program slicing shows the user changes of dependence relations caused by aspects. We implement a program-slicing tool for AspectJ and apply it to certain programs. The experiment illustrates how our approach effectively helps developers understand the influence of aspects in a program.
Keywords :
directed graphs; object-oriented programming; program debugging; program slicing; AspectJ; aspect-oriented programming; call graph; control dependence relations; debugging support; program slicing; software debugging; software development; software maintenance; software module unit; software reusability; Application software; Debugging; Information science; Object detection; Programming profession; Scattering; Software maintenance; Visualization;
Conference_Titel :
Software Maintenance, 2004. Proceedings. 20th IEEE International Conference on
Print_ISBN :
0-7695-2213-0
DOI :
10.1109/ICSM.2004.1357802