DocumentCode :
1928356
Title :
Migrating interface implementations to aspects
Author :
Tonella, Paolo ; Ceccato, Mariano
Author_Institution :
ITC-irst, Centro per la Ricerca Scientifica e Tecnologica, Povo, Italy
fYear :
2004
fDate :
11-14 Sept. 2004
Firstpage :
220
Lastpage :
229
Abstract :
Separation of concerns and modularization are the cornerstones of software engineering. However, when a system is decomposed into units, functionalities often emerge which cannot be assigned to a single element of the decomposition. The implementation of interfaces represents a typical instance of this problem. In fact, the code that defines the interface methods is often scattered across several classes in the system and tangled with the original code. Aspect oriented programming provides mechanisms for the dynamic and static composition of transversal functionalities, that can be used to factor out the implementation of interfaces. We describe a technique for the identification of those interface implementations that are most likely to represent crosscutting concerns. Moreover, the code transformation (refactoring) to migrate such interfaces to aspects is also presented. Experimental results validate the approach.
Keywords :
object-oriented programming; software engineering; aspect oriented programming; code transformation; dynamic composition; interface implementation migration; interface method; software engineering; static composition; transversal functionality; Computer architecture; Dynamic programming; Engineering management; Functional programming; Graphical user interfaces; Information retrieval; Mutual coupling; Scattering; Software engineering; Software systems;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Maintenance, 2004. Proceedings. 20th IEEE International Conference on
ISSN :
1063-6773
Print_ISBN :
0-7695-2213-0
Type :
conf
DOI :
10.1109/ICSM.2004.1357806
Filename :
1357806
Link To Document :
بازگشت