An overview of a novel analysis approach for enhancing context awareness in smart environments
Introduction
Computing devices and applications are now used beyond the desktop in diverse environments and this trend toward ubiquitous computing is accelerating. One challenge that remains very interesting in this emerging research field is the ability to improve the behavior of any application by informing it of the context of its use. Indeed, the term context was first defined by Dey [1] as “Any information that can be used to characterize the situation of entities (i.e., whether a person, place, or object) that are considered relevant to the interaction between a user and an application, including the user and the application themselves”. Context describes relevant aspects of the surrounding physical and computing environments, such as the location and the activity of the user.
These applications which are able to use effectively context are referred to as context-aware applications. Schilit [2] has first defined the term context awareness as the ability of an application to adapt its behavior according to the location of use, the collection of nearby people, etc. Moreover, context awareness has been proposed as a novel design approach that involves the exploitation of context by applications in order to reduce reliance on user input and promote adaptation to dynamic factors in ubiquitous computing environments characterized by a frequent context change.
Hence, context-aware applications promise richer and easier interaction. But, in this area, the current state of research is still far removed from that vision. This is due to the main problem that there is a lack of design procedures offering a support for application designers to conceive easily context aware applications especially in ubiquitous dynamic environments.
In order to develop context-aware applications, a context awareness loop is proposed by Dobson et al. [3]. They defined a control loop that consists of four phases namely Collect (phase 1), Analysis (phase 2), Decide (phase 3) and Act (phase 4). In the collect phase, context information are collected via different sources such as environmental sensors and network instrumentation for example. The collected context information must be analyzed. In the analysis phase, it is useful to evaluate, detect the context changes and trigger notifications to assess the application state. The context change detection is performed by rules and policies, bounds and envelopes. In the decide phase, appropriate adaptation actions are planned, based on decision theory and risk analysis, to respond to a context change. These actions are finally executed in the act phase in which the decisions are transmitted to users or administrators.
In this paper, we focus on the analysis phase. We are interested in developing context-aware applications that use the analysis phase to enhance their context awareness property, to detect correctly context changes and to predict context.
Indeed, the analysis phase must be designed and developed properly to make context-aware applications powerful. Furthermore, a context-aware application is not able to react to the changes if they are not detected correctly. A review of the existing analysis approaches for context-aware application development shows that to detect context changes, most approaches used only fixed threshold(s) which is unsuitable if applied in dynamic environments. The second challenge is to define mathematical models to update threshold values. Besides, no work provided a design methodology to guide the application designers for developing context-aware applications able not only to detect context changes but also to predict context. The third challenge is to define a clear design methodology to design context-aware applications.
Consequently, we propose an analysis approach that facilitates the design and the development of context-aware applications able to deal efficiently with context changes as well as to predict context. Our approach presented as two main tasks (An analysis task for detection and an analysis task for prediction) helps the application designers to conceive easily context-aware applications. Besides, we have developed an analysis module which assists the developers on developing easily context-aware applications.
The rest of this paper is structured as follows. In Section 2, we discuss studies that have dealt with the analysis phase. We provide a generic description of the context analysis approach in Section 3. We present the implementation details of our analysis module in Section 4. In Section 5, we illustrate the usefulness of our analysis module through a case study relative to a smart building. In order to prove the effectiveness of our approach, we present some experiments in Section 6. The last section concludes the paper and gives some directions for future work.
Section snippets
Related work
The concept of context analysis is addressed by many researchers in many fields in the literature. Context analysis is used to detect context changes and raise notifications related to the detected changes. Based on a literature survey, we have divided the studies that have dealt with context analysis into four categories according to the technique used to detect context changes. Consequently, we distinguish threshold-based approaches, statistical approaches, entropy-based approaches and
An overview of our proposed analysis approach for smart environments
In this paper, we aim at proposing an analysis approach for designing and developing context-aware applications in ubiquitous environments able to detect and predict context. Fig. 1 gives an overview of our contributions.
As shown in Fig. 1, we distinguish three phases related to an application lifecycle.
- •
Design phase
- •
Implementation phase
- •
Execution phase
In the Design phase, the analysis assistant (in our work, it refers to “us”) provides analysis guidelines to the application designers. The latter,
Analysis approach implementation
This section gives some implementation details of our analysis module. First, it gives an overview of a simplified view of the SADT1 diagram [19] of our module. Afterwards, it describes the class diagram of our analysis module.
Case study: Smart building
Smart spaces are environments such as apartments, offices, museums, hospitals, schools, malls, university campuses, buildings and outdoor areas that are enabled for the cooperation of objects (e.g. sensors, devices appliances) and systems that have the capability to self-organize themselves, based on given policies [21]. Diane Cook and Sajal Das [22] give a generic definition of smart spaces as follows: a “Smart space is able to acquire and apply knowledge about its environment and to adapt to
Experimentation and validation
In order to prove the effectiveness of our analysis approach, we have calculated its overhead in terms of memory usage. Consequently, we measured the memory usage of the physical machine while applying the two following scenarios:
- •
Without the analysis module;
- •
With the analysis module
Table 3 illustrates the characteristics of the physical machine on which we have conducted the experiments.
Conclusion
In this paper, a novel approach for developing context-aware applications in ubiquitous environments has been introduced. Indeed, in the literature, we have noticed that there is a lack of design procedures offering a support for application designers to conceive context-aware applications able to detect and predict context. In this paper, we have described a novel analysis approach to design context-aware applications able not only to detect context changes and raise notifications when context
References (32)
- et al.
An inventory control and pricing model for smart building load management
2014 IEEE PES Innovative Smart Grid Technologies Conference (ISGT)
(2014) - et al.
Towards a better understanding of context and context-awareness
Proceedings of the 1st International Symposium on Handheld and Ubiquitous Computing
(1999) - et al.
Context-aware computing applications
Proceedings of the First Workshop on Mobile Computing Systems and Applications
(1994) - et al.
A survey of autonomic communications
ACM Trans. Auton. Adapt. Syst.
(2006) - et al.
A model-driven adaptive approach for collaborative ubiquitous systems
Proceedings of the 3rd workshop on Agent-oriented software engineering challenges for ubiquitous and pervasive computing
(2009) - et al.
A cooperative and fully-distributed congestion control approach within vanets
Intelligent Transport Systems Telecommunications,(ITST),2009 9th International Conference on
(2009) - et al.
A versatile context-aware pervasive monitoring system: Validation and characterization in the health-care domain
Industrial Electronics, 2010 IEEE International Symposium on
(2010) - et al.
Automatic room light intensity detection and control using a microprocessor and light sensors
Consumer Electronics, IEEE Transactions on
(2008) - et al.
Multiagent model for device state control in the wireless grid
Electronics Computer Technology (ICECT), 3rd International Conference on
(2011) - et al.
Agnostic diagnosis: Discovering silent failures in wireless sensor networks
INFOCOM, 2011 Proceedings IEEE
(2011)
A self-adapting algorithm for context aware systems
Roedunet International Conference (RoEduNet), 2010 9th
A fault detection and diagnosis framework for ambient intelligent systems
Ubiquitous Intelligence Computing and 9th International Conference on Autonomic Trusted Computing (UIC/ATC), 2012 9th International Conference on
Designing an analysis procedure for context aware applications in ubiquitous environments
2016 IEEE 30th International Conference on Advanced Information Networking and Applications (AINA)
A new approach of moving average method in time series analysis
New Media Studies (CoNMedia), 2013 Conference on
Moving averages for financial data smoothing
Taxonomy of distributed event-based programming systems
Distributed Computing Systems Workshops, 2002. Proceedings. 22nd International Conference on
Cited by (6)
Intelligent energy management: Evolving developments, current challenges, and research directions for sustainable future
2021, Journal of Cleaner ProductionCitation Excerpt :The proposed technique utilized computer-readable semantics and building monitoring system to build a heuristic scheme. In Khabou et al. (2019), an overview on context-awareness in smart environments to promote the design and creation of context-aware applications was presented. The study examined application scenarios for smart buildings and, predictions of water consumption.
Boundary resource management in innovation ecosystems: The case of e-commerce
2023, Electronic MarketsPrediction in Smart Environments and Administration: Systematic Literature Review
2023, Lecture Notes in Networks and SystemsDesign Strategy of Multimodal Perception System for Smart Environment
2023, EAI/Springer Innovations in Communication and ComputingResearch on High-speed Railway Information Service Combination Method Based on Association Rules
2021, Tiedao Xuebao/Journal of the China Railway SocietyHybrid context-awareness modelling and reasoning approach for microgrid’s intelligent control
2020, ICSOFT 2020 - Proceedings of the 15th International Conference on Software Technologies