Appeltauer, M., Hirschfeld, R., Haupt, M., Lincke, J.,
and Perscheid, M. (2009). A comparison of context-
oriented programming languages. In International
Workshop on Context-Oriented Programming, COP
’09, New York, NY, USA. ACM.
Asirelli, P., Degano, P., Levi, G., Martèlli, A., Montanari,
U., Pacini, G., Sirovich, F., and Turini, F. (1979). A
flexible environment for program development based
on a symbolic interpreter. ICSE ’79, pages 251–263,
Piscataway, NJ, USA. IEEE Press.
Baldauf, M., Dustdar, S., and Rosenberg, F. (2007). A survey
on context-aware systems. International Journal of Ad
Hoc and Ubiquitous Computing, 2(4):263–277.
Costanza, P., Hirschfeld, R., and De Meuter, W. (2006). Effi-
cient layer activation for switching context-dependent
behavior. In Lightfoot, D. and Szyperski, C., editors,
Modular Programming Languages, volume 4228 of
LNCS, pages 84–103. Springer.
Dey, A. K. and Abowd, G. D. (2000). The what, who, where,
when, why and how of context-awareness. In CHI ’00
Extended Abstracts on Human Factors in Computing
Systems, CHI EA ’00, NY. ACM.
Ihantola, E. and Kihn, L. (2011). Threats to validity and reli-
ability in mixed methods accounting research. Qualita-
tive Research in Accounting & Management, 8(1):39–
58.
Jin, D., Qu, X., Cohen, M. B., and Robinson, B. (2014).
Configurations everywhere: Implications for testing
and debugging in practice. In Companion Proceed-
ings of the 36th International Conference on Software
Engineering, ICSE Companion 2014, pages 215–224.
Johnson, D. S. (2002). A theoretician’s guide to the experi-
mental analysis of algorithms. In Proceedings of the
5th and 6th DIMACS Implementation Challenges.
Jong-yi, H., Eui-ho, S., and Sung-Jin, K. (2009). Context-
aware systems: A literature review and classification.
Expert Systems with Applications, 36(4):8509 – 8522.
Kamina, T., Aotani, T., Masuhara, H., and Tamai, T. (2014).
Context-oriented software engineering: A modularity
vision. In Proceedings of the 13th International Con-
ference on Modularity, MODULARITY ’14, pages
85–98, New York, NY, USA. ACM.
Lee, K. C. A., Segarra, M.-T., and Guelec, S. (2014). A
deployment-oriented development process based on
context variability modeling. In Model-Driven Engi-
neering and Software Development (MODELSWARD),
2nd International Conference, pages 454–459. IEEE.
Mens, K., Capilla, R., Cardozo, N., Dumas, B., et al. (2016).
A taxonomy of context-aware software variability ap-
proaches. In Workshop on Live Adaptation of Software
Systems, collocated with Modularity 2016 conference.
Raab, M. (2015a). Global and thread-local activation of
contextual program execution environments. In Pro-
ceedings of the IEEE 18th International Symposium on
Real-Time Distributed Computing Workshops (ISOR-
CW/SEUS), pages 34–41.
Raab, M. (2015b). Sharing software configuration via speci-
fied links and transformation rules. In Technical Report
from KPS 2015, volume 18. Vienna University of Tech-
nology, Complang Group.
Raab, M. (2016a). Elektra: universal framework to access
configuration parameters. The Journal of Open Source
Software, 1(8).
Raab, M. (2016b). Improving system integration using
a modular configuration specification language. In
Companion Proceedings of the 15th International Con-
ference on Modularity, MODULARITY Companion
2016, pages 152–157. ACM.
Raab, M. (2016c). Persistent contextual values as inter-
process layers. In Proceedings of the 1st International
Workshop on Mobile Development, Mobile! 2016,
pages 9–16. ACM.
Raab, M. (2016d). Unanticipated context awareness for
software configuration access using the getenv API.
In Computer and Information Science, pages 41–57.
Springer International Publishing, Cham.
Raab, M. and Puntigam, F. (2014). Program execution envi-
ronments as contextual values. In Proceedings of 6th
International Workshop on Context-Oriented Program-
ming, pages 8:1–8:6, New York, NY, USA. ACM.
Rabkin, A. and Katz, R. (2011). Static extraction of program
configuration options. In Software Engineering (ICSE),
2011 33rd International Conference on, pages 131–
140. IEEE.
Salvaneschi, G., Ghezzi, C., and Pradella, M. (2012).
Context-oriented programming: A software engineer-
ing perspective. Journal of Systems and Software,
85(8):1801 – 1817.
Schippers, H., Molderez, T., and Janssens, D. (2010). A
graph-based operational semantics for context-oriented
programming. In Proceedings of the 2nd International
Workshop on Context-Oriented Programming, COP
’10, New York, NY, USA. ACM.
Tanter, E. (2008). Contextual values. In Proceedings of the
2008 Symposium on Dynamic Languages, DLS ’08,
pages 3:1–3:10, New York, NY, USA. ACM.
Tanter, É., Gybels, K., Denker, M., and Bergel, A. (2006).
Context-Aware Aspects, pages 227–242. Springer.
von Löwis, M., Denker, M., and Nierstrasz, O. (2007).
Context-oriented programming: Beyond layers. In
Proceedings of the 2007 International Conference on
Dynamic Languages, ICDL ’07, pages 143–156. ACM.
Wasty, B. H., Semmo, A., Appeltauer, M., Steinert, B., and
Hirschfeld, R. (2010). ContextLua: Dynamic behav-
ioral variations in computer games. In Proceedings of
the 2nd International Workshop on Context-Oriented
Programming, COP ’10, pages 5:1–5:6. ACM.
Xu, T., Jin, L., Fan, X., Zhou, Y., Pasupathy, S., and Tal-
wadker, R. (2015). Hey, you have given me too many
knobs! Understanding and dealing with over-designed
configuration in system software. In Proceedings of the
2015 10th Joint Meeting on Foundations of Software
Engineering, ESEC/FSE 2015, pages 307–319. ACM.
Xu, T., Zhang, J., Huang, P., Zheng, J., Sheng, T., Yuan,
D., Zhou, Y., and Pasupathy, S. (2013). Do not blame
users for misconfigurations. In Proceedings of the
Twenty-Fourth ACM Symposium on Operating Systems
Principles, pages 244–259. ACM.
Xu, T. and Zhou, Y. (2015). Systems approaches to tackling
configuration errors: A survey. ACM Comput. Surv.,
47(4):70:1–70:41.
Yin, Z., Ma, X., Zheng, J., Zhou, Y., Bairavasundaram,
L. N., and Pasupathy, S. (2011). An empirical study
on configuration errors in commercial and open source
systems. SOSP ’11, pages 159–172.
Introducing Context Awareness in Unmodified, Context-unaware Software
225