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.

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

Mario Luca Bernardi;Di Lucca G.
2016-01-01

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.
2016
reverse engineering; aspect mining; MOF; Software Evolution; aspect Oriented Programming
File in questo prodotto:
File Dimensione Formato  
JSME_2016_Asp_Mining.pdf

non disponibili

Licenza: Non specificato
Dimensione 6.34 MB
Formato Adobe PDF
6.34 MB Adobe PDF   Visualizza/Apri   Richiedi una copia

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.12070/6247
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 2
  • ???jsp.display-item.citation.isi??? 2
social impact