English

Introducing Context Awareness in Unmodified, Context-unaware Software

Software Engineering 2017-02-23 v1 Programming Languages

Abstract

Software tends to be highly configurable, but most applications are hardly context aware. For example, a web browser provides many settings to configure printers and proxies, but nevertheless it is unable to dynamically adapt to a new workplace. In this paper we aim to empirically demonstrate that by dynamic and automatic reconfiguration of unmodified software we can systematically introduce context awareness. In 16 real-world applications comprising 50 million lines of code we empirically investigate which of the 2,683 run-time configuration accesses (1) already take context into account, or (2) can be manipulated at run-time to do so. The results show that context awareness can be exploited far beyond the developers' initial intentions. Our tool Elektra dynamically intercepts the run-time configuration accesses and replaces them with a context aware implementation. Users only need to specify contexts and add context sensors to make use of this potential.

Keywords

Cite

@article{arxiv.1702.06806,
  title  = {Introducing Context Awareness in Unmodified, Context-unaware Software},
  author = {Markus Raab and Gergö Barany},
  journal= {arXiv preprint arXiv:1702.06806},
  year   = {2017}
}
R2 v1 2026-06-22T18:25:17.936Z