A fine-grained debugger for aspect-oriented programming

Haihan Yin, Christoph Bockisch, Mehmet Akşit

    Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

    7 Citations (Scopus)
    4 Downloads (Pure)


    To increase modularity, aspect-oriented programming provides a mechanism based on implicit invocation: An aspect can influence runtime behavior of other modules without the need that these modules refer to the aspect. Recent studies show that a significant part of reported bugs in aspect-oriented programs are caused exactly by this implicitness. These bugs are difficult to detect because aspect-oriented source code elements and their locations are transformed or even lost after compilation. We investigate four dedicated fault models and identify ten tasks that a debugger should be able to perform for detecting aspect-orientation-specific faults. We show that existing debuggers are not powerful enough to support all identified tasks because the aspect-oriented abstractions are lost after compilation. This paper describes the design and implementation of a debugger for aspect-oriented languages using a dedicated intermediate representation preserving the abstraction level of aspect-oriented source code. We define a debugging model which is aware of aspect-oriented concepts. Based on the model, we implement a user interface with functionalities supporting the identified tasks, like visualizing pointcut evaluation and program composition.
    Original languageEnglish
    Title of host publicationAOSD '12
    Subtitle of host publicationProceedings of the 11th Annual International Conference on Aspect-oriented Software Development
    Place of PublicationNew York, NY
    PublisherAssociation for Computing Machinery
    Number of pages12
    ISBN (Print)978-1-4503-1092-5
    Publication statusPublished - 25 Mar 2012
    Event11th International Conference on Aspect-Oriented Software Development, AOSD 2012 - Potsdam, Germany
    Duration: 24 Mar 201230 Mar 2012
    Conference number: 11


    Conference11th International Conference on Aspect-Oriented Software Development, AOSD 2012
    Abbreviated titleAOSD
    Internet address


    • METIS-296117
    • Advanced dispatching
    • AOP
    • IR-83373
    • EWI-22382
    • Debugger
    • fine-grained intermediate representation
    • ﬿ne-grained intermediate representation
    • Visualization


    Dive into the research topics of 'A fine-grained debugger for aspect-oriented programming'. Together they form a unique fingerprint.

    Cite this