Detecting behavioral conflicts among crosscutting concerns

P.E.A. Durr, Lodewijk Bergmans, Mehmet Aksit

    Research output: Chapter in Book/Report/Conference proceedingChapterAcademic

    73 Downloads (Pure)


    Aspects have been successfully promoted as a means to improve the modularization of software in the presence of crosscutting concerns. Within the Ideals project, aspects have been shown to be valuable for improving the modularization of idioms (see also Chapter 1). The so-called aspect interference problem is considered to be one of the remaining challenges of aspect-oriented software development: aspects may interfere with the behavior of the base code or other aspects. Especially interference among aspects is dif��?cult to prevent, as this may be caused solely by the composition of aspects that behave correctly in isolation. A typical situation where this may occur is when multiple advices are applied at the same, or shared, join point. In this chapter we explain the problem of behavioral conflicts among aspects at shared join points, illustrated by aspects that represent idioms: Parameter checking and Error propagation. We present an approach for the detection of behavioral conflicts that is based on a novel abstraction model for representing the behavior of advice. The approach employs a set of conflict detection rules which can be used to detect both generic conflicts as well as domain or application speci��?c conflicts. One of the benefits of the approach is that it neither requires the application programmers to deal with the conflict models, nor does it require a background in formal methods for the aspect programmers.
    Original languageUndefined
    Title of host publicationIdeals: evolvability of software-intensive high-tech systems
    EditorsRemco van Engelen, Jeroen Voeten
    Place of PublicationEindhoven
    PublisherEmbedded Systems Institute ESI
    Number of pages13
    ISBN (Print)978-90-78679-03-5
    Publication statusPublished - Dec 2007

    Publication series

    PublisherEmbedded Systems Institute


    • EWI-11920
    • METIS-246021
    • IR-60250

    Cite this