MotivationIt is widely acknowledged that pervasive computing introduces a radically new set of design challenges when compared with traditional desktop computing. In particular, pervasive computing demands applications that are capable of operating in highly dynamic environments and of placing minimal demands on user attention. Context-aware applications aim to meet these requirements by adapting to selected aspects of the context of use, such as the current location, time and activities of the user.In recent years, a variety of prototypical context-aware applications have been developed, such as context-aware guides that present tourists with information of relevance to the current location [8,1]. There are also ongoing efforts to construct instrumented environments that monitor the activities of their occupants using context sensors, with objec- * The work reported in this paper has been funded in part by the Co- tives such as allowing the elderly to live as independently as possible while ensuring that emergencies are quickly detected [14,21]. Despite the recent flurry of interest, context-aware applications have not yet made the transition out of the laboratory and into the marketplace. This is largely a result of high application development overheads, social barriers associated with privacy and usability, and an imperfect understanding of the truly compelling (and commercially viable) uses of context-awareness. This paper presents a software engineering framework that addresses these challenges: the first by simplifying design and implementation tasks associated with context-aware software, and the latter two by facilitating the types of rapid prototyping and experimentation that are required in order to overcome these obstacles. The framework is based around a set of novel conceptual foundations, including context modelling approaches that describe context at two different levels of granularity, a preference abstraction, and a pair of complementary programming models. These are introduced in Sections 2 to 4, and are then integrated into a software infrastructure for pervasive systems in Section 5. Section 6 presents the results of a case study that we carried out to evaluate the conceptual framework and infrastructure, and Section 7 concludes the paper with a discussion of key topics for future research. Context modelling techniquesMuch of the recent research in the field of contextawareness has adopted an infrastructure-centred view; that is, it has assumed that the complexity of engineering context-aware applications can be substantially reduced solely through the use of infrastructure responsible for the gathering, managing and dissemination of context information. To this end, a variety of solutions that acquire and interpret context information from sensors
There is growing interest in the use of context-awareness as a technique for developing pervasive computing applications that are flexible, adaptable, and capable of acting autonomously on behalf of users. However, context-awareness introduces a variety of software engineering challenges. In this paper, we address these challenges by proposing a set of conceptual models designed to support the software engineering process, including context modelling techniques, a preference model for representing context-dependent requirements, and two programming models. We also present a software infrastructure and software engineering process that can be used in conjunction with our models. Finally, we discuss a case study that demonstrates the strengths of our models and software engineering approach with respect to a set of software quality metrics.
Abstract. Context-aware systems represent extremely complex and heterogeneous distributed systems, composed of sensors, actuators, application components, and a variety of context processing components that manage the flow of context information between the sensors/actuators and applications. The need for middleware to seamlessly bind these components together is well recognised. Numerous attempts to build middleware or infrastructure for context-aware systems have been made, but these have provided only partial solutions; for instance, most have not adequately addressed issues such as mobility, fault tolerance or privacy. One of the goals of this paper is to provide an analysis of the requirements of a middleware for context-aware systems, drawing from both traditional distributed system goals and our experiences with developing context-aware applications. The paper also provides a critical review of several middleware solutions, followed by a comprehensive discussion of our own PACE middleware. Finally, it provides a comparison of our solution with the previous work, highlighting both the advantages of our middleware and important topics for future research.
Most recently developed context-aware software applications make unrealistic assumptions about the quality of the available context information, which can lead to inappropriate actions by the application and frustration on the part of the user. In this paper, we explore the problem of imperfect context information and some of its causes, and propose a novel approach for modelling incomplete and inaccurate information. Additionally, we present a discussion of our experiences in developing a contextaware communication application, highlighting design issues that are pertinent when developing applications that rely on imperfect context information. MotivationPervasive computing presents a novel set of design challenges that demand radically new software engineering techniques. Context-awareness is often touted as a solution that meets these challenges by enabling software applications to exhibit the required levels of flexibility and autonomy. Context-aware applications exploit information about the context of use, such as the location, tasks and preferences of the user, in order to adapt their behaviour in response to changing operating environments and user requirements. This information is gathered from sensors or from human users.Context-aware applications typically assume that the context information upon which they rely is com- * The work reported in this paper has been funded in part by the plete and accurate. However, this assumption is usually unjustified, as sensed context information is often inaccurate or unavailable as a result of noise or sensor failures, while user-supplied information is subject to problems such as human error and staleness. Consequently, usability problems arising from reliance on imperfect context information are sometimes observed in context-aware applications. For example, Benford et al. recently presented an interesting discussion of the implications of using imperfect location data in an mixed-reality game [1]. They noted that errors in location information often led to confusion when game players were observed to jump around unpredictably in the virtual environment, but were also exploited by sophisticated users for tactical advantage.Clearly, context-aware applications must be developed with an understanding of the problems inherent in gathering reliable context information, and also of the attendant design issues. In this paper, we explore these challenges. We characterise various types and sources of imperfect context information, present a set of novel context modelling constructs that accommodate these, outline a software infrastructure that supports the management and use of imperfect context information, and describe our experiences with using the context modelling approach and infrastructure. Characterising context information Types of imperfectionIn this section, we characterise four types of imperfect context information. We consider imperfection with respect to specific properties or attributes. These are aspects of the context that can be described by atom...
Abstract. Context information is used by pervasive networking and context-aware programs to adapt intelligently to different environments and user tasks. As the context information is potentially sensitive, it is often necessary to provide privacy protection mechanisms for users. These mechanisms are intended to prevent breaches of user privacy through unauthorised context disclosure. To be effective, such mechanisms should not only support user specified context disclosure rules, but also the disclosure of context at different granularities. In this paper we describe a new obfuscation mechanism that can adjust the granularity of different types of context information to meet disclosure requirements stated by the owner of the context information. These requirements are specified using a preference model we developed previously and have since extended to provide granularity control. The obfuscation process is supported by our novel use of ontological descriptions that capture the granularity relationship between instances of an object type.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.