MUSIC Lessons or How to Develop Adaptive Applications for Ubiquitous Computing Environments?
Adaptive applications modify their behaviour at run-time in response to significant
changes in their operating context. In particular, ubiquitous computing applications
require run-time adaptivity due to the inherently dynamic nature of the computing
environment. We discuss the specific adaptation requirements and constraints of
such scenarios. The MUSIC project has developed a comprehensive solution that is
based on architectural adaptation and extended context management with dynamic
service discovery. An application component may be substituted by an external,
dynamically discovered service at run-time, if the utility of the application is increased
by the reconfiguration. The development of such adaptive applications is a complex
and challenging task. We present our new model-driven development methodology.
The core of the approach is an architectural variability model that specifies
application variants and their dependencies on the operating context. It takes into
account the specific requirements of ubiquitous computing scenarios. Experiences
with case studies and open research questions will be discussed at the end of the
talk.