Modeling Context-Aware Distributed Event-Based Systems

Modeling Context-Aware Distributed Event-Based Systems

Eduardo S. Barrenechea (University of Waterloo, Canada), Rolando Blanco (University of Waterloo, Canada) and Paulo Alencar (University of Waterloo, Canada)
DOI: 10.4018/978-1-61520-655-1.ch005
OnDemand PDF Download:
$30.00
List Price: $37.50

Abstract

Emerging applications are becoming increasingly dynamic, adaptive, and context-aware in areas such as just-in-time, location-based m-commerce; situational health monitoring; and dynamic social networking collaboration. Although numerous systems and implementation infrastructures have been proposed to deal with some features of such systems, there is a lack of higher-level modeling abstractions and associated component metamodels that combine dynamic features, adaptation mechanisms, and context-awareness. In this chapter the authors propose a metamodel for context-aware distributed event-based systems that supports novel forms of event-based context-aware interactions such as context event schemas; component interfaces that react to context, event, and context interactions at the interface level; and subscriptions based on both events and context. The approach also supports requirements for context-aware systems proposed in the literature. The applicability of the approach is illustrated by showing how existing context-aware systems can be modeled using the proposed metamodel.
Chapter Preview
Top

Introduction

Recent emerging applications are becoming increasingly dynamic, adaptive, and context-aware in areas such as just-in-time location-based m-commerce, situational health monitoring, and dynamic social networking collaboration. Context-awareness provides systems with increased information about the situations in which its components and users are immersed. Context is highly dynamic, sometimes with drastic changes. For example, a change in location can have an effect on the status of the available services or behaviour of running applications. Context-aware systems are required to support this high level of dynamism.

Although numerous systems and implementation infrastructures have been proposed to deal with features of context-aware systems in isolation, there is a lack of component metamodels and higher-level modeling abstractions. Currently, context-awareness representation is typically addressed at the application level. The coupling between application and context-awareness related code introduces problems associated with software architecture and development, reusability, maintenance and program comprehension. By introducing context and context-awareness entities as first class citizens, separate from application level entities, it is possible to model context-awareness in an application-independent manner. This promotes reusability of concepts and features, as well as strengthens support for program comprehension, maintenance and architecture.

The features related with context-awareness require a highly dynamic infrastructure. Distributed event-based systems (DEBSs) provide such infrastructure through adaptive component interfaces and loosely coupled components communicating via event-based asynchronous interactions. The low coupling between components in a DEBS is due to the fact that components generating events are oblivious to components consuming the events and vice-versa. Consumers are interested in event types and not in the components generating events. This property of DEBSs allows context to be disseminated in a transparent fashion throughout the system. Context-aware components are notified of context related events generated from changes in context irrespectively of context sources. Context sources and context-aware components can enter and leave the system without the need to alter existing components.

In this chapter we propose a metamodel for context-aware distributed event-based systems. The metamodel supports the dynamism associated with context-awareness through event-based interactions and component interface changes. The metamodel consists of a structural view and a control view. The structural view is used to model the relationships between events and interfaces. The control view is used to model administrative components in a DEBS, as well as component grouping and access controls that can be imposed on events and interfaces. The model meets general requirements for context-aware systems proposed in the literature and later discussed in this report. The metamodel supports novel forms of event-based context-aware interactions, such as context event schemas, component interfaces that react to context, event and context interactions at the interface level, and subscription based on both events and context.

Key Terms in this Chapter

Context-Aware System: System that takes advantage of available context information relevant to its functionality in order to better assist its users.

Event: Data representation of a happening in the system or the environment in which the system executes.

Publisher: A component announcing events in a DEBS.

Subscriber: A component in a DEBS being notified of events of interest that have been announced in the system.

Distributed Event-Based Systems (DEBSs): Computer system made of independent distributed functional components interacting with each other via events.

Context Reactive Component Interface: Extension of a Reactive Component Interface which includes the specification of behaviour for the generation and reaction to context events.

Reactive Component Interface: Specification of the events a component announces and subscribes to in a DEBSs, and the behaviour exhibited by a component upon notification of subscribed events.

Context: Any information used to characterize the situation in which a system entity or user is inserted.

Context Event: Event used to propagate context information throughout a system as context changes occur.

Complete Chapter List

Search this Book:
Reset