Open Research Challenges

Latest update: January 2010

Mobile Cloud Services

In near future, most mobile applications will have backend storage, processing and communication support provided by a cloud service. In particular, several functions for user context classification and inference – used either for service/content adaptation or for sharing presence information within a Social Network, will be performed by cloud services. This entails the following research challenges:

  1. Which type of context information can be inferred at the mobile device, and which must be processed in the backend cloud? How to model and represent this information?
  2. How to implement energy-and bandwidth-efficient transmission of context information from the mobile to the cloud in a scalable way?
  3. How to ensure dependable and reliable context-based services, i.e. where context inference is precise, accurate and non-violable?
  4. Privacy issue: despite the benefit of sophisticated multi-user context inference by the cloud services, how can the user retain control of who will have access to her context information?
  5. Location-based Mobile Social Networks still lack means of assigning semantics to arbitrary geographic regions, automatically indexing user contributions by this semantics, and implementing region-based notification mechanisms.
  6. How to implement parallel matchmaking and context inference (e.g. combining location information, time, activity, user profiles, etc.) for Pervasive Social Networks such that they scale to hundred thousand of users?

Pervasive and Location-aware Collaboration and Social Networks

In this topic, I am interested in two complementary issues: Firstly, I am investigating how sharing of a mobile user's location, and her user context in general, could enable new kinds of on-line collaboration and social networks applied to e-gov, public health and public security. Secondly, I am working on the design of a component-based middleware for context-aware mobile client collaboration applications, specifically, map-based on-line collaboration. The challenge here is to design the middleware platform so as to allow the composition and mahup of generic (and reusable) collaboration and context-provisioning components.

Orchestrated Distributed Dynamic Adaptation

For many distributed mobile systems, context-aware adaptations have to be performed at several peers in a synchronized and orchestrated form. These adaptations may be both structural (i.e. a substitution or deployment of a new component), or parametric (i.e. the change of an operation parameter of specific components). The challenge here is to design and implement orchestration protocols which guarantee that the distributed adaptation occurs in a safe and complete way at all the target peers.

Scalable services for Pervasive Social Networks

In this topic I am interested in developing scalable services for user profile matchmaking and situation awareness, based on location and context information of several (hundred) thousands of users. Since these services will be storage and computing intensive, they would be well suited as cloud-based applications.

The idea is that mobile users would subscribe to such service and get notifications whenever some situation/match of interest had been detected. The challenge here is to design the matchmaking as a parallel and scalable computation and communication process.

Middleware > Service Oriented Computing

While the immediate need of middleware support for SOC is evident, current approaches and solutions still fall short by primarily providing support for only the EAI aspect of SOC and do not sufficiently address issues such as service discovery, re-use, re-purpose, composition and aggregation support, service management, monitoring, and deployment and maintenance of large-scale heterogeneous infrastructures and applications. Moreover, quality properties (in particular dependability and security) need to be addressed not only by interfacing and communication standards, but also in terms of integrated middleware support. But what makes these issues so different in a SOC setting? Why - for instance - is traditional middleware support for transaction processing different to transaction processing in SOC, reflecting different types of atomicity needs? Reasons are the administrative heterogeneity, the loose coupling between coarse-grained operations and long-running interactions, high dynamicity, and the required flexibility during run-time. Recently, massive-scale and mobility were added to the challenges for Middleware for SOC.

The highly dynamic modularity and need for flexible integration of services (e.g. Web service implementations) may, therefore, require new middleware architectures, protocols, and services. These considerations also lead to the question to what extent service-orientation at the middleware layer itself is beneficial (or not). Recently emerging "Infrastructure as a Service" and "Platform as a Service" offerings, from providers like Amazon, Google, IBM, Microsoft, or from the open source community, support this trend towards "cloud computing" which provides corresponding services that can be purchased and consumed over the Internet. However, providing end-to-end properties and addressing cross-cutting concerns - like dependability, security, and performance - in cross-organizational SOC is a particular challenge and the limits and benefits thereof have still to be investigated.