loading...
Debugging Support for Aspect-Oriented Program Based on Program Slicing and Call Graph
Chicago, Illinois September 11-September 14
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ICSM.2004.135780220th IEEE International Conference on ...
 This Article 
 
PDF
HTML
 
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Takashi Ishio, Osaka University
Shinji Kusumoto, Osaka University
Katsuro Inoue, Osaka University
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. In this paper, 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.
Citation:
Takashi Ishio, Shinji Kusumoto, Katsuro Inoue, "Debugging Support for Aspect-Oriented Program Based on Program Slicing and Call Graph," icsm, pp.178-187, 20th IEEE International Conference on Software Maintenance (ICSM'04), 2004
Usage of this product signifies your acceptance of the Terms of Use.