Adaptive user interfaces for smart environments
Abstract
Our environment is equipped with a variety of interaction devices, appliances and a various sensors. This increasing complexity of our environment makes the development of application interfaces for smart environments a challenging and time-consuming task. To reduce the complexity, user interface developers describe applications on different levels of abstraction. At the end of the development process, the user interface models are mostly transformed into application code. Applications deployed in a heterogenic and highly dynamic environment must be able to adapt to different situations, unforeseeable at design time. To tackle this issue, this work uses models at runtime to enable the reasoning about the decisions of the designer at runtime. As a result of this approach, the lines between design- and runtime are frequently blurred. This work deals with the development of graphical user interfaces using models at runtime. In order to overcome the problem of the unknown context at design time, this work uses the information from the user interface (UI) models and relations between the different abstraction layers to derive a layout model witch is flexible enough for most of the situations. Because the design of a user interface is a creative process, the designer must be involved into the design process. The development process is supported by a tool to simulate different possible situations and to define application specific layout statements. At runtime the adaptive application (user interface) is faced with the real world. Because there could be unconsidered user characteristics like color blindness, which affects the visualization of the user interface, the user needs a possibility to change the behavior of the layout algorithm. In contrast to the designer, the end user of the application uses a more application specific instrument to personalize the user interface.