Integrated model-driven development of self-adaptive user interfaces

  • PDF / 6,255,377 Bytes
  • 25 Pages / 595.276 x 790.866 pts Page_size
  • 27 Downloads / 253 Views

DOWNLOAD

REPORT


SPECIAL SECTION PAPER

Integrated model-driven development of self-adaptive user interfaces Enes Yigitbas1 · Ivan Jovanovikj1 · Kai Biermeier1 · Stefan Sauer1 · Gregor Engels1 Received: 8 February 2019 / Revised: 28 October 2019 / Accepted: 6 December 2019 © The Author(s) 2020

Abstract Modern user interfaces (UIs) are increasingly expected to be plastic, in the sense that they retain a constant level of usability, even when subjected to context changes at runtime. Self-adaptive user interfaces (SAUIs) have been promoted as a solution for context variability due to their ability to automatically adapt to the context-of-use at runtime. The development of SAUIs is a challenging and complex task as additional aspects like context management and UI adaptation have to be covered. In classical model-driven UI development approaches, these aspects are not fully integrated and hence introduce additional complexity as they represent crosscutting concerns. In this paper, we present an integrated model-driven development approach where a classical model-driven development of UIs is coupled with a model-driven development of context-of-use and UI adaptation rules. We base our approach on the core UI modeling language IFML and introduce new modeling languages for contextof-use (ContextML) and UI adaptation rules (AdaptML). The generated UI code, based on the IFML model, is coupled with the context and adaptation services, generated from the ContextML and AdaptML model, respectively. The integration of the generated artifacts, namely UI code, context, and adaptation services in an overall rule-based execution environment, enables runtime UI adaptation. The benefit of our approach is demonstrated by two case studies, showing the development of SAUIs for different application scenarios and a usability study which has been conducted to analyze end-user satisfaction of SAUIs. Keywords Model-driven UI development · UI adaptation · Self-adaptive UIs · Context-aware applications

1 Introduction The user interface (UI) is a key component of any interactive software application and is crucial for the acceptance of the application as a whole. However, a UI is not independent from its context-of-use, which is defined in terms of the user, platform, and environment [8]. Today’s user interfaces of interactive systems become increasingly complex as many heterogeneous contexts-of-use have to be supported. Hence, it is no longer sufficient to provide a single “one-size-fits-all” user interface. Building multiple UIs for the same functionality due to context variability is also difficult as context changes can lead to the combinatorial explosion of the number of possible adaptations, and there is a high cost incurred by manually developing multiple versions of the UI [2]. Communicated by A. Pierantonio, A. Anjorin, S. Trujillo, and H. Espinoza.

B 1

Enes Yigitbas [email protected] Paderborn University, Fürstenallee 11, 33102 Paderborn, Germany

In the past, model-driven user interface development (MDUID) approaches were proposed to support the e