Crosscutting, what is and what is not? A Formal definition based on a Crosscutting Pattern

J.M. Conejero, J. Hernández, E. Jurado, Klaas van den Berg

    Research output: Book/ReportReportProfessional

    201 Downloads (Pure)


    Crosscutting is usually described in terms of scattering and tangling. However, the distinction between these concepts is vague, which could lead to ambiguous statements. Sometimes, precise definitions are required, e.g. for the formal identification of crosscutting concerns. We propose a conceptual framework for formalizing these concepts based on a crosscutting pattern that shows the mapping between elements at two levels, e.g. concerns and representations of concerns. The definitions of the concepts are formalized in terms of linear algebra, and visualized with matrices and matrix operations. In this way, crosscutting can be clearly distinguished from scattering and tangling. Using linear algebra, we demonstrate that our definition generalizes other definitions of crosscutting as described by Masuhara & Kiczales [21] and Tonella and Ceccato [28]. The framework can be applied across several refinement levels assuring traceability of crosscutting concerns. Usability of the framework is illustrated by means of applying it to several areas such as change impact analysis, identification of crosscutting at early phases of software development and in the area of model driven software development.
    Original languageUndefined
    Place of PublicationExtremadura
    PublisherUniversity of Extremadura, Spain
    Number of pages30
    Publication statusPublished - 2007

    Publication series

    PublisherUniversity of Extremadura, Spain


    • METIS-247013
    • SE-SMM: Software Measurement and Metrics
    • SE-Q: Quality Modelling and Verification
    • EWI-12012
    • IR-64648

    Cite this