68 Ubiquitous Computing and Communication Journal Volume 3 Number 3 Page www.ubicc.org ARCHITECTURAL SURVEY OF CONTEXT-AWARE SYSTEMS IN PERVASIVE COMPUTING ENVIRONMENT Moeiz Miraoui 1 , Chakib Tadj 1 , Chokri ben Amar 2 1 LATIS Laboratory, Université du Québec, École de technologie supérieure 1100, rue Notre-Dame Ouest, Montréal, Québec H3C 1K3 Canada {moeiz.miraoui.1@ens,ctadj@ele}.etsmtl.ca 2 REGIM Laboratory, Université de Sfax, École Nationale d'Ingénieurs de Sfax, Route de Soukra, B.P. W, 3038 Sfax – Tunisie Chokri.benamar@enis.rnu.tn ABSTRACT The main characteristic of devices in a pervasive (or ubiquitous) computing system is their context awareness which allows them to provide proactively adapted services to user and to applications according to the global context. In order to support the development and to ease the implementation of context-aware systems, many architectures were proposed with characteristics related to the application domain and techniques used. A survey of such architectures that makes comparison between them and evaluates them is strongly recommended. Proposed surveys are either restricted to a limited number of architectures or do not offer a good comparison or their evaluation is not based on appropriate criteria which keep them as simple descriptions. Our aim is to make a survey of relevant architectures which mark the evolution of context-aware systems based on criteria related to pervasive computing. This survey will serve as a guide to developers of context-aware systems and help them to make architectural choices. Keywords: achitecture, pervasive computing, context-awareness. 1 INTRODUCTION Pervasive computing aims to provide proactively adapted services to both user and applications according to the global context. The main characteristic of devices in such system is their context awareness. Since its apparition, pervasive computing has required tools (architectures, frameworks and middleware), methods and concepts to support the development of a context-aware system and ease their design and implementation. System architecture is created early in the development process and permits the creation of a high level design of the system which takes into account the fulfillment of requirements’ implementation. The architecture design is an important step in the development of context-aware systems. Many researchers have proposed several architectures, frameworks and middleware for context-aware systems with particularities related to the application domain and techniques used. To evaluate these proposed architectures, many surveys were done but they did not cover all architectures that mark the evolution of pervasive computing. They did not offer a solid comparison or evaluation and instead are simple descriptions. Even if they exist (in limited number of surveys), these surveys were not based on criteria related to pervasive computing particularities. Our aim, therefore, is to make a survey of relevant architectures that mark the evolution of context-aware systems beginning from localization-aware systems up to present context- aware systems. This survey presents a comparison and evaluation of architectures on various criteria which are considered important for pervasive computing such as: context abstraction level, communication model, reasoning system, extensibility and reusability. Our objective is to come up with a survey that will serve as a guide to developers and architecture designers of context- aware systems in a pervasive computing environment. The rest of this paper is organized as follows, in section 2 we review some previous surveys done until now on context-aware architectures and show their weaknesses. In section 3 we present the evaluation and comparison criteria used and argue their use in pervasive computing. In section 4 we