TY - JOUR
T1 - Unifying design and runtime software adaptation using aspect models
AU - Parra, Carlos
AU - Blanc, Xavier
AU - Cleve, Anthony
AU - Duchien, Laurence
N1 - Funding Information:
This work is funded by the Conseil Régional Nord-Pas-de-Calais, Oseo/ANVAR, and the Fonds Unique Interministériel, under the CAPPUCINO project. This research was carried out during the tenure of an ERCIM ‘‘Alain Bensoussan’’ Fellowship.
PY - 2011/12/1
Y1 - 2011/12/1
N2 - Software systems are seen more and more as evolutive systems. At the design phase, software is constantly in adaptation by the building process itself, and at runtime, it can be adapted in response to changing conditions in the executing environment such as location or resources. Adaptation is generally difficult to specify because of its cross-cutting impact on software. This article introduces an approach to unify adaptation at design and at runtime based on Aspect Oriented Modeling. Our approach proposes a unified aspect metamodel and a platform that realizes two different weaving processes to achieve design and runtime adaptations. This approach is used in a Dynamic Software Product Line which derives products that can be configured at design time and adapted at runtime in order to dynamically fit new requirements or resource changes. Such products are implemented using the Service Component Architecture and Java. Finally, we illustrate the use of our approach based on an adaptive e-shopping scenario. The main advantages of this unification are: a clear separation of concerns, the self-contained aspect model that can be weaved during the design and execution, and the platform independence guaranteed by two different types of weaving.
AB - Software systems are seen more and more as evolutive systems. At the design phase, software is constantly in adaptation by the building process itself, and at runtime, it can be adapted in response to changing conditions in the executing environment such as location or resources. Adaptation is generally difficult to specify because of its cross-cutting impact on software. This article introduces an approach to unify adaptation at design and at runtime based on Aspect Oriented Modeling. Our approach proposes a unified aspect metamodel and a platform that realizes two different weaving processes to achieve design and runtime adaptations. This approach is used in a Dynamic Software Product Line which derives products that can be configured at design time and adapted at runtime in order to dynamically fit new requirements or resource changes. Such products are implemented using the Service Component Architecture and Java. Finally, we illustrate the use of our approach based on an adaptive e-shopping scenario. The main advantages of this unification are: a clear separation of concerns, the self-contained aspect model that can be weaved during the design and execution, and the platform independence guaranteed by two different types of weaving.
KW - Aspect oriented modeling
KW - Software product lines
UR - http://www.scopus.com/inward/record.url?scp=79958803369&partnerID=8YFLogxK
U2 - 10.1016/j.scico.2010.12.005
DO - 10.1016/j.scico.2010.12.005
M3 - Article
AN - SCOPUS:79958803369
SN - 0167-6423
VL - 76
SP - 1247
EP - 1260
JO - Science of Computer Programming
JF - Science of Computer Programming
IS - 12
ER -