Meeting the challenges
The main idea behind the DiVA project is to model variability dimensions as aspects and do dynamic aspect weaving as model transformations when an adaptation need occurs. DiVA will concentrate on the adaptation part of a system, the system itself being from the point of view of DiVA a kind of grey-box component consisting of services that may have well defined adaptation interfaces.
Some examples of variability dimensions are security, communication, availability and performance. Examples of security features (modelled as aspects) are authorization and authentication; the communication dimension can provide several options for communication such as WiFi, Ethernet, and Modem; replication can be provided as a feature supporting availability and features for compression and decompression can be provided to increase performance in some contexts.
In the following we describe a
-
DiVA system’s overall lifecycle,
-
how a DiVA system is managed at runtime, and
-
how DiVA solves the problem of runtime configuration by the combination of MDE and AOSD approaches.