Skip to main content »

Trinity College Dublin

Smart Services

Motivation

The service-oriented computing model has emerged as a viable option for supporting flexible and adaptable multi-organisation business processes with loosely-coupled networks of services. The core notion in this model is composition of cooperating services that adapt and evolve at run-time to provide the most appropriate service to the consumer.

New developments in wireless technology and embedded devices have the potential to create even more opportunities for service-oriented computing on mobile, embedded devices, with wide-ranging application across multiple domains, such as automotive, avionics, telecommunications, medical devices and environmental science.

It is now also possible to construct pragmatic, large-scale application types for pervasive computing. Large-scale applications have the potential to span different infrastructures (wireless networks, sensors, services), combine different technologies (e.g., communications, middleware) and device types, to offer an integrated pervasive framework with rich capabilities across many conceptual application layers. For example, a large scale crisis management system is likely to have multiple layers to cater for the complex organisation and coordination of the actors involved in the crisis, and software service provision for their support.

Scientific Basis

Composing cooperating services that adapt and evolve at run-time in these environments will require the service composition model to be aware of the device’s and the environment’s changing situations, and maintain an acceptable quality of service level.

Mobile, embedded domain

In domains that include mobile and embedded devices, timing constraints are important, and so heavyweight service-oriented computing models are inappropriate for time-constrained dynamic service composition. Similarly, where wireless communication capabilities are intermittent, quality of service is under threat. Coarse-grained service specification and composition is insufficient to support flexible gradations of quality of service provision.

Large-scale, multi-layer systems

In addition, complex service-based applications consisting of multiple (conceptual) layers (e.g., service, behaviour, security) require adaptation mechanisms that ensure the application continues to execute successfully in the presence of unforeseen environments or failures. Such exceptional behaviour usually requires changes that are constrained by dependencies among different application layers. Since applications evolve over time, adaptation mechanisms need to be updated as well. This can be achieved by decoupling adaptation from application logic. Adaptation mechanisms can be triggered, either at application design-time (e.g., when the application requirements change) or at application run-time (e.g., in case of a failure). The decoupling also allows adaptation mechanisms to evolve independently from applications and to be reused by applications in the same domain.

Approach

We have defined a framework called TimeAct that minimises the disruption caused by run-time adaptations, and ensures that the timing response of a dynamically-adaptable service adheres to the requirements outlined in its SLA. To enable a time-dependent dynamically-adaptable software service, three distinct techniques must be applied. The service must be monitored to determine when adaptations are required, the timing impact of potential adaptations must then be predicted in advance of deployment, and finally the adaptation process itself must complete quickly. Each step in this process exposes certain difficulties that are further complicated by the requirement to perform both the timing analysis and adaptation at run-time, while the service is live.

Further, we have defined an adaptation framework called CLAMS that includes a model and supporting tools to allow extensible, flexible adaptation of multi-layer systems, where the adaptation impacts across all layers. CLAMS allows developers to easily construct and query domain-specific adaptation knowledge bases that resemble flexible and extensible golden page catalogues for software adaptation solutions. The categories consist of taxonomies of common application problems (mismatches) and the entries are common adaptation solutions (templates).

Research Areas

Relevant Projects

CLAMS, TimeAct, SmartTrans

People

Serena Fritsch, Shane Brennan, Yu Liu, Christin Groba, Peng Liu, Razvan Popescu, Athanasios Staikopoulos, Rene Meier, Siobhán Clarke