Mining static and dynamic crosscutting concerns: a role‐based approach

Abstract

The implementation of crosscutting concerns in object‐oriented (OO) systems entails scattering and tangling of code across several components increasing code duplication and making the system harder to comprehend, maintain, evolve and reuse. Therefore, identification of crosscutting concerns drives the re‐engineering or refactoring tasks in order to improve modularization of an existing system and increasing its overall internal quality. This paper proposes an approach to identify and analyse the components implementing the static and dynamic crosscutting in OO systems. The approach defines a meta‐model representing the structure of an OO system in terms of its components. A static analysis of an OO software system is performed to create an instance of this meta‐model. Such meta‐model is finally analysed to find static and dynamic crosscutting among concerns. The effectiveness and efficiency of the proposed approach have been validated in an empirical assessment where it was applied to some OO java systems. The obtained results show a good level of effectiveness for the crosscutting analysis.

Publication
In Journal of Software Evolution and Process, Wiley.
Date
Links