A Unified Platform for the Dynamic Evolution of Context-Aware Highly Agile Services

A Unified Platform for the Dynamic Evolution of Context-Aware Highly Agile Services

Xiaodong Liu (Edinburgh Napier University, UK), Zakwan Jaroucheh (Edinburgh Napier University, UK), Sally Smith (Edinburgh Napier University, UK) and Huiqun Zhao (North China University of Technology, China)
Copyright: © 2015 |Pages: 10
DOI: 10.4018/978-1-4666-5888-2.ch274
OnDemand PDF Download:
List Price: $37.50

Chapter Preview


1. Introduction

In pervasive systems, e.g., smart homes and smart vehicles, users will be surrounded by many mobile devices and sensors embedded everywhere in the systems which will cooperate together to provide a context-aware pervasive environment that supports humans in everyday activities, e.g., in business, health care, or education. In this respect, the users will enjoy a new experience in a non-obtrusive way as the existing infrastructures will be more proactive and dynamically adaptable to the current situations, user preferences and environmental context in a less intrusive way (Weiser, 1991). Context-awareness refers to the capability of an application or a service being aware of its physical environment or situation (e.g. context) and to respond proactively and intelligently based on this awareness (Baldauf et al., 2007). We define context-aware service adaptation as the action that modifies the service in a way that causes its behaviour to evolve according to the evolution of business and user requirements, and the context considered relevant to that service.

Currently, despite the active research into and the development of services over the last several years, context-aware services are still difficult to build for the following reasons. Firstly, current service development standards such as Business Service Execution Language (BPEL), are not sufficient for describing and handling context information (Sheng et al., 2010). Secondly, service engineers usually implement everything related to context management, including acquiring, dissemination, and usage of context information, in an ad hoc manner. Moreover, the mobility of users and devices across different context domains (areas) induces changes to the application operating context and makes the development and evolution of services more difficult. In particular, we argue here that context information relevant to the current task at hand may come from a number of spatial domains. For instance, a dynamic recalculation of the quickest routes for a trip involves acquiring the latest contextual information such as traffic congestion from remote sources. We can imagine a domain-oriented context management system where the context information available in each domain is managed by a separate context manager. While moving, the user roams across the domains. In addition, each domain may maintain its own sensors and mechanisms for inferring context related to this user. To tackle the above challenge, consequently, collaborative context management across domains is needed.

Finally, services should be dependable in the sense that it should meet the user and business requirements and needs, which are highly changeable all the time in pervasive systems. Therefore, service modelling must be flexible enough to deal with these constant changes – both at the business level (e.g. evolving business rules) and at the technical level (e.g. contextual information and platform upgrades). As services get deployed on an increasingly larger diversity of computing platforms and operate in different execution environments, developers and maintenance engineers (namely, service engineers) should make considerable effort to manually porting services code to different platforms or new versions of the same platform. Many different solutions have been proposed by researchers to the problem of context-aware adaptation during service development and provision. However, existing solutions do not allow the service engineers to logically view and model the service variant in terms of the features that determine the difference between service variants in each usage context. As a consequence, developing and maintaining services is still a difficult, cumbersome, and time consuming activity.

Supporting the development and provision of such service applications raises several challenges that involve models, middleware, methods and tools. Thus, the main challenges in this direction are related to the support that can be offered to the service engineers to satisfy the user expectations in a dynamic and highly variable environment. Here we proposed a unified development and evolution approach that relies on model-based solutions to build context-aware highly adaptive (agile) services. The proposed approach encompasses a set of methods to generate service models and adaptable code from UML-based specifications in a dynamic and constantly evolving way based on the available context information in different domains. All these methods are supported by an integrated framework which is based on a conceptual model.

Key Terms in this Chapter

Context-Awareness: It refers to the capability of an application or a service being aware of its physical environment or situation (e.g. context) and to respond proactively and intelligently based on this awareness.

Internet of Things: “Things” are potentially all objects we encounter in our everyday lives. The Internet of Things connects “Things” and devices to large databases and networks. “Things” carry embedded intelligence, using for example RFID (Radio Frequency IDentification) as an identification system and sensor technologies to detect changes in their physical status and environment.

Complete Chapter List

Search this Book: