Authors: Hanene Cherait; Nora Bounour
Addresses: LISCO Laboratory, Badji Mokhtar – Annaba University, P.O. Box 12, 23000 Annaba, Algeria ' LISCO Laboratory, Badji Mokhtar – Annaba University, P.O. Box 12, 23000 Annaba, Algeria
Abstract: Software is evolutionary in nature. From the time a software product is defined until it is no longer used, it changes. We focus in this paper on the aspect-oriented (AO) software evolution. Although AO software engineering is the subject of ongoing research, AO software evolution has received less attention. AO programming is a mature technology that modularises the crosscutting concerns. Unfortunately, it produces new dependencies between them; restricts the evolvability of the software system. In order to cope with all types of AO program's dependencies, we converge toward a new evolution modelling approach. In our proposal, the AO source code is modelled in a more abstract and formal format as an attributed coloured graph, where the different dependencies in the software system are well defined. Then, the change requests are presented as rewritten rules on this coloured graph. We give here the details of our approach as well as its implementation. And, we provide an empirical evaluation to prove the efficiency of our proposal.
Keywords: aspect-oriented programming; AOP; software evolution; reverse engineering; graph rewriting; source code modelling; software development; attributed coloured graphs.
International Journal of Computer Applications in Technology, 2016 Vol.54 No.4, pp.266 - 278
Received: 25 Feb 2015
Accepted: 26 Feb 2015
Published online: 26 Nov 2016 *