Abstract
To design usable mobile applications, exploiting context changes is of vital importance. The rapid context changes in a mobile setting cause the need for flexible and adaptive user interfaces that are multitasking and possibly exploiting multiple modalities. Implementing adaptive user interfaces requires expensive application-specific solutions. Reuse of this type of solutions is difficult or impossible. To make it viable to implement adaptive user interfaces for a broader range of applications, there is both a need for new architecture and middleware, and ways of constructing applications. In this paper, we show how a combination of a patterns-based modelling language using compound user interface components and mapping rules as building blocks, and a generic adaptive architecture based on components with ports and utility functions for finding the optimal configuration in a given situation, facilitates implementation of applications with adaptive user interfaces. First we briefly present our modelling approach, and the adaptive architecture including the generic middleware exploiting architecture models at runtime. With this as a background we show how the presented modelling approach may be combined with the adaptive architecture to facilitate model-based user interface adaptation. Finally, we compare our approach with other approaches for realizing adaptive user interfaces, and we give some conclusions and directions for future research.