Context-Aware Systems: Models and Functionality

Context-Aware Systems: Models and Functionality

Yu-Ling Chang (University of Waterloo, Canada), Paulo Alencar (University of Waterloo, Canada), Eduardo S. Barrenechea (University of Waterloo, Canada), Rolando Blanco (University of Waterloo, Canada) and Donald Cowan (University of Waterloo, Canada)
DOI: 10.4018/978-1-61520-655-1.ch034
OnDemand PDF Download:


Context aware systems reduce the need for user intervention and provide smarter services by considering a user’s situation. Context models decide how the contextual information is modeled and what type of context should be considered; they are essential in providing the “right” services to the users. Existing surveys of context-aware systems focus heavily on the data structures for modeling contextual information and the architecture of context-aware systems. In this chapter, the authors focus on the contextual information being modeled and the functionality provided by context-aware systems. They present a classification framework for both context models and the functionality of context-aware systems. The authors then compare existing context-aware systems against the classification framework. Moreover, they show how a higher level context model can be derived from the fundamental elements in the classification framework of context models.
Chapter Preview


Context aware-systems provide smarter services to users by reducing required user input and considering the user’s situation or context during service provision. Context can be briefly summarized as the relevant surroundings of a user including time; Abowd et al. (Abowd et al., 1999) have defined context as the following

“Context is any information that can be used to characterize the situation of an entity. An entity is a person, place, or object that is considered relevant to the interaction between a user and an application, including the user and applications themselves.” (Abowd et al., 1999)

Context-aware systems are powerful and convenient because they are able to gather information and act based on it with minimal user interaction. They can be used in various domains such as a smart home or office, museum guidance systems, and web services. However, context-aware systems also pose interesting research questions. For example, we need to represent context for communication among systems; consider security and privacy for users as various types of information are gathered about them; be able to process the contextual information while providing services; and have a consistent and robust behavior, even under incomplete and inconsistent input of context information. There is also a need to abstract the capabilities of context-aware systems by developing reusable components that reduce the implementation effort and incorporate context at a higher level of abstraction.

A lot of the research effort on surveying context-aware systems has focused on the application and architectural level. We would like to consider context-aware systems from the perspective of higher-level abstractions. In this paper, we are especially interested in context models deployed by context-aware systems. Context models specify the relevant contextual information and the type of data structure that should be used to model the information. Context has several dimensions such as location, time, social networks, and environment, and these dimensions can be seen as categorization of the fundamental elements in the context models. In the rest of the paper, we will use the phrase fundamental element to represent the primitives in context models and the word formalism to represent the data structure of the context model.

In this paper, we provide a new perspective on proposed context models by focusing on the fundamental elements in context models. Context should be considered at the modeling level to avoid the duplication of effort occurring when designing context models for a context-aware system. By focusing on context models, we avoid starting from scratch every time we build a system. We will be able to take the model driven approach to generate code automatically and reduce the implementation effort. Following the same principle of viewing context-aware systems at higher levels of abstraction, we also survey context-aware systems from a functional point of view. The research community has focused extensively on different architectural components in the systems. However, we are more interested in a system’s functionality than its structures.

The contributions of the paper are a classification of context models based on the fundamental elements in context models, an illustration of how more complex context can be derived from these fundamental elements, a classification from a functional perspective of context-aware systems, and a comparison of context models and functionality of the context-aware systems against the proposed classification frameworks. Our approach avoids having a large set of elements in the context model and has the ability to create more complex context through combining different fundamental elements. The results of our survey suggest a comprehensive fundamental element and functionality classification framework for context-aware systems as well as future research direction to improve the state-of-the-art of context-aware systems.

Key Terms in this Chapter

Functionality: Functionality of a context-aware system refers to the functions provided by the context aware system.

Derived Context: Derived context is the high-level context that can be derived from combining fundamental elements in context models.

Context: Context refers to the relevant surroundings of a user or an entity which can be used to describe a situation. Context can also be used to describe one particular element or dimension in the surroundings.

Formalism: Formalism refers to the data structure used to implement a context model.

Context-Aware System: Context-aware system refers to the system that can be aware of the surroundings or situations, and it can take information from the surroundings into consideration during service provision.

Fundamental Element: Fundamental element in a context models refers to the basic primitives modeled.

Context Model: Context model describes the context that context-aware systems are able to sense and as well as the relationship among context.

Complete Chapter List

Search this Book: