In Object Oriented (OO) systems inheritance, implementations and type nesting relation-ships are used as one of the principal way to implement static crosscutting. Thus Type Hier-archies are one of the cause introducing the scattering and tangling of code in the components along the hierarchies. This paper presents an approach based on the analysis of type hierarchies to automatically identify the scattered and tangled Type Fragments (i.e. a portion of a type in terms of its members and relationships) implementing crosscutting concerns in OO systems. The approach defines a model to represent Concerns as sets of Type Fragments and a stepped process to identify the Type Fragments composing each Concern and to perform a crosscutting analysis among them. This information is useful and needed to re-engineer the crosscutting concerns into aspects, or to migrate an existing object oriented system towards the aspect oriented paradigm. The approach has been applied to several software systems producing valid results, presented and discussed in the paper, about its feasibility and effectiveness.

Object Type Hierarchies Analysis to Identify Crosscutting Concerns

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

Abstract

In Object Oriented (OO) systems inheritance, implementations and type nesting relation-ships are used as one of the principal way to implement static crosscutting. Thus Type Hier-archies are one of the cause introducing the scattering and tangling of code in the components along the hierarchies. This paper presents an approach based on the analysis of type hierarchies to automatically identify the scattered and tangled Type Fragments (i.e. a portion of a type in terms of its members and relationships) implementing crosscutting concerns in OO systems. The approach defines a model to represent Concerns as sets of Type Fragments and a stepped process to identify the Type Fragments composing each Concern and to perform a crosscutting analysis among them. This information is useful and needed to re-engineer the crosscutting concerns into aspects, or to migrate an existing object oriented system towards the aspect oriented paradigm. The approach has been applied to several software systems producing valid results, presented and discussed in the paper, about its feasibility and effectiveness.
2010
Reverse Engineering; Aspect Mining, Code Analysis; Aspect Oriented Programming
File in questo prodotto:
File Dimensione Formato  
SERSC_IJSEIA_8_2010_Paper.pdf

non disponibili

Licenza: Non specificato
Dimensione 1.68 MB
Formato Adobe PDF
1.68 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/4477
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus ND
  • ???jsp.display-item.citation.isi??? ND
social impact