Engineering context-aware systems and applications: A survey
Journal of Systems and Software
Context-awareness is an essential component of systems developed in areas like Intelligent Environments, Pervasive & Ubiquitous Computing and Ambient Intelligence. In these emerging fields, there is a need for computerized systems to have a higher understanding of the situations in which to provide services or functionalities, to adapt accordingly. The literature shows that researchers modify existing engineering methods in order to better fit the needs of context-aware computing. These efforts
... are typically disconnected from each other and generally focus on solving specific development issues. We encourage the creation of a more holistic and unified engineering process that is tailored for the demands of these systems. For this purpose, we study the state-of-the-art in the development of context-aware systems, focusing on: A) Methodologies for developing context-aware systems, analysing the reasons behind their lack of adoption and features that the community wish they can use; B) Context-aware system engineering challenges and techniques applied during the most common development stages; C) Context-aware systems conceptualization. . From these, 280 papers were selected as potentially containing researchers with some experience in context-aware computing. A list of 750 names of context-aware systems developers was gathered from the papers and used for contacting the contestants.