The current evolution of pervasive technologies in our cities means that traditional access modalities are not always suitable for a particular service. Consequently novel solutions are needed. Freely moving citizens in urban environments would often like to be able to better exploit available devices to access services. In such cases, a multi-device user interface in which interactive components can be dynamically distributed over devices would be extremely useful: unfortunately, this is not currently supported by available development toolkits. Here, we propose a solution that extends existing Service Front Ends for Smart Cities and supports multi-device interaction by exploiting personal devices and public displays.

Our life is becoming a multi-device user experience. In the last decade, a wide variety of interactive devices have penetrated the mass market and people are spending increasing amounts of time using them. There are two modes of usage, sequential or simultaneous. The sequential user moves from one device to another at different times to accomplish a task whilst the simultaneous user interacts with more than one device at the same time, for either related or unrelated activities [1]. Recent technological advances have meant that large display screens are now available on the mass market and these greatly enhance usage. Given their low cost, such devices are being installed in great numbers in many public places (e.g., train stations, airports, hospitals, public offices, museums, universities, shop centers, bars and restaurants). Thus, deployment is occurring in both outdoor and indoor environments, providing various types of content (e.g., informative, entertainment or advertisements) [2]. Unfortunately, insufficient attention has been paid to how information is provided accessed and through such devices, thus diminishing their potential effectiveness.

People would like to be able to better exploit available technology when using multiple devices to interact with their applications. For example, users may wish to dynamically move components of their interactive applications across different devices with various interaction resources [3]. However, managing information across devices is challenging. Unfortunately, the development of multi-device user interfaces (UIs) is limited by the interaction development toolkits currently available. These toolkits are still designed under the assumption that they are supporting the development of UIs for single devices, rather than providing support for multi-device access. Consequently, the main issues with multi-device UIs are their poor adaptation to their usage context, the lack of coordination among tasks performed through different devices and inadequate support for seamless cross-device task performance.

To address this gap we have designed and developed a novel framework which is capable of:

providing developers with an API that can be exploited by both Web and Android applications in order to obtain application UIs that can be more easily distributed dynamically and/or migrated in multi-device and multi-user environments,

dynamically creating sessions between groups of users/devices with a distributed UI. The elements of the UI can be distributed according to specific device(s), group(s) of devices, specific user(s) or groups of users classified by roles, and

avoiding the need for a fixed server to manage the distribution, which can be useful when connectivity is limited.

This framework is publicly available at http://giove.isti.cnr.it/tools/MUDUIDME/home. It provides developers with a small set of commands that allow them to easily support dynamic situations in which flexible UI distribution and good performance are requested, with limited impact on the code.

Various applications have already been developed using this framework. One application was designed to improve the user experience during a museum visit. A single user application which was able to exploit mobile devices, in conjunction with a public display in an indoor environment, was implemented. The museum has some large public displays, which allow visitors to access multimedia content. When users are near the large screens, they can use their smartphone to select content of interest. For example, visitors can select and display some high-resolution images of artworks that cannot be viewed from close up (e.g., because of security or art preservation issues). Another application supports city guides who are accompanying groups, with either tablets or smartphones. The application shows information supporting the mobile visit and allows the visitor to select what content is to be shown in the version of the tourist role (Figure 1a) or exploit the public displays they encounter (Figure 1 b). Yet another application is a set of games for multiple users who can participate with the support of any device, either mobile or stationary.

The framework we propose can be used to easily obtain interactive multi-device applications for different domains and in different contexts in Smart Cities including single or multi-user applications, indoor or outdoor environments and mobile and stationary devices.