
reflects the prototype built within the project ibi 
(ibi.or.at, 2015). By using these two prototypes, we 
are able to identify and to evaluate necessary tasks 
that user interaction developers need to fulfill in 
order to generate interaction models, to embed and 
connect these interaction models in the specific 
framework and finally to interpret them by the 
execution process during runtime (section 2.3). 
2.1  CTTs and SCXMLs as Modeling 
Methods for User Interaction 
The literature relevant in this field mentions a couple 
of projects using model-based user interface 
generation approaches (Mori et al., 2004), (Peissner, 
et al., 2012), (Popp, et al., 2013), (Brambilla et al., 
2014). Some rely on CTTs, some on Statecharts 
(Harel, 1987) and some e.g. on the Business Process 
Model and Notation (BPMN) (Zur Muehlen, et al., 
2008). 
2.1.1  The CTT Interaction Model 
CTT is an XML-based formal notation to represent 
task models. It is of hierarchical structure, with 
graphical syntax. CTT focuses on activities to be 
executed by users or systems to reach a certain goal. 
CTT distinguishes between system, user, interaction, 
and abstract tasks. System tasks are executed by the 
(software) system alone (e.g., data processing). User 
tasks represent internal cognitive or physical 
activities performed by the user of the system (e.g., 
selecting a problem solving strategy). Interaction 
tasks are user performed interactions with the 
system. Abstract tasks are used for composition of 
task groups in the hierarchical structure of the CTT. 
The notation provides an exhaustive set of temporal 
operators, which express the logical temporal 
relationships between the tasks. 
CTTE (Mori et al., 2002) is a tool for the design 
and analysis of CTTs. This allows creating and 
editing task trees in a graphical way. The tool also 
provides a CTT simulator for runtime behavior 
analysis. 
2.1.2  The Statechart Interaction Model 
SCXML is an event-based state machine language. 
It combines concepts from Harel State Tables 
(Harel, 1987) and Call Control eXtensible Markup 
Language (CCXML) (W3.org, 2015a), (Romellini et 
al., 2005). SCXML is widely used for user interfaces 
and dialog management in many different fields 
such as AAL, cloud based services or video games 
(Almeida et al., 2014), (Dragert et al., 2013), (Jeong 
et al., 2012). It inherits semantics and special 
features like compound states and parallel states 
from Harel State Tables and combines it with event 
handling and the XML representation of CCXML. 
SCXML is used to describe finite state machines 
(FSM). A FSM is a mathematical model with a finite 
number of states where only one state can be active 
at any given time, which is called current state. 
Basic concepts in SCXML are states and 
transitions, with an event attached to each transition. 
When a concrete event is fired and the 
corresponding source state is active, the target state 
will become active and the source state inactive. The 
active state can be queried continuously. In the 
context of user interactions, states represent current 
dialogs or windows and their transitions concrete 
user or system actions. Using these techniques a user 
or system action can evoke a state change. In the ibi 
prototype, this change invalidates the previously 
presented user interaction dialog and activates a 
newly generated user interaction dialog. The state 
machine can either be created directly in XML 
notation or generated by using a GUI based tool 
such as scxmlgui (Code.google.com, 2015a). 
SCXML interpreters are available in various 
programming languages such as in Java (Team 
Commons, 2015), C++ (Code.google.com, 2015b) 
or Python (GitHub, 2013). 
2.2  Execution Frameworks for 
Interaction Models 
2.2.1  AALuis Execution Framework 
The AALuis execution framework is an OSGi-based 
(Alliance OSGi, 2003) flexible middleware layer. 
The framework dynamically generates user 
interfaces for connected services that provide CTT-
modelled interactions (Mayer et al., 2014). The 
framework’s architecture consists of plug-in based 
components, which are described in the following: 
Figure 1 illustrates modules and the 
communication flow in the AALuis execution 
framework. The dialog manager component 
orchestrates the process from abstract service 
description and data, to the concrete interface 
presented for a context specific interaction step. 
Service managers mediate between service 
endpoints and the dialog manager. Similarly, device 
managers act as brokers between the devices and the 
dialog manager. 
The dialog manager administers all interactions 
between the users and the system. For each 
ICT4AgeingWell2015-InternationalConferenceonInformationandCommunicationTechnologiesforAgeingWelland
e-Health
244