Skip to content The Open University

Software Engineering at Runtime -- Situation-Aware Smart Applications

With the rise of the Industrial Internet [financialpost] the world entered a new era of innovation [evans]. At the heart of this new industrial revolution is the convergence of the global industrial system with computing power, low-cost sensing, big data, predictive analytics, and ubiquitous connectivity. The growing proliferation of smart devices and applications is accelerating the convergence of the physical and the digital worlds [iot2, kortuem13computer, balasubramaniam13computer, singhal13computer]. Smart apps allow users, with the help of sensors and networks, to do a great variety of things [iot], from tracking their friends to controlling remote devices and machines [smart]. At the core of such smart systems are self-adaptive systems that optimize their own behaviour according to high-level objectives and constraints to address changes in functional and nonfunctional requirements as well as environmental conditions [litoiu13seams]. Self-adaptive systems are implemented using four key technologies: runtime models, context management, feedback control theory [murray03], and run-time verification and validation [tamura13book,lemos13]. The proliferation of highly dynamic and smart applications challenges the software engineering community in re-thinking the boundary between development time and run time and developing techniques for adapting systems at run time. The key challenge is to automate traditional software engineering, maintenance and evolution techniques to adapt and evolve systems at run time with minimal or no human interference [muller13, balasubramanian11seams]. Hitherto, most developers did not instrument their software with sensors and effectors to observe whether requirements are satisfied in an evolving environment at run time. One way to break out of this mold is to make the four key technologies readily accessible at run time [villegas11seams].


[financialpost]Financial Post, ``The Industrial Internet Economy: Canada 2025'', May 2013.
[evans]P.C. Evans and M. Annunziata, ``Industrial Internet: Pushing the Boundaries of Minds and Machines'', GE Technical Report,, Nov. 2012.
[smart]IBM Corp., ``How to compete in the era of {em smart}'',, July 2013.
[iot]IBM Corp.: The Internet of Things, YouTube Video, March 2010.
[iot2]M.A. Feki, F. Kawsar, M. Boussard, and L. Trappeniers (Bell Labs), ``The Internet of Things: The Next Technological Revolution, Guest Editor's Introduction'', IEEE Computer, vol.46, no.2, pp. 24--25, Feb. 2013.
[kortuem13computer]G. Kortuem, A.K. Bandara, N. Smith, M. Richards, and M. Petre, ``Educating the Internet-of-Things Generation'', IEEE Computer, vol.46, no.2, pp. 53--61, Feb. 2013.
[balasubramaniam13computer]S. Balasubramaniam and J. Kangasharju, ``Realizing the Internet of Nano Things: Challenges, Solutions, and Applications'', IEEE Computer, vol.46, no.2, pp. 62--68, Feb. 2013.
[singhal13computer]M. Singhal, S. Chandrasekhar, T. Ge, R.S. Sandhu, R. Krishnan, G.J. Ahn, and E. Bertino, ``Collaboration in Multicloud Computing Environments: Framework and Security Issues'', IEEE Computer, vol.46, no.2, pp. 76--84, Feb. 2013.
[litoiu13seams]M. Litoiu and J. Mylopoulos (Eds.), ``Procs. 8th ACM/IEEE International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS 2013)'', 2013.
[murray03]R.M. Murray, ``Control in an information rich world: Report of the panel on future directions in control, dynamics, and systems'', SIAM, 2003.
[lemos13]R. de Lemos, H. Giese, H.A. M"uller and M. Shaw (Eds.), ``Software Engineering for Self-Adaptive Systems'', LNCS 7475, Number 10431 in Dagstuhl Seminar. Springer, Feb. 2013.
[muller13]H.M. M"uller and N.M. Villegas, ``Evolving highly adaptive software systems'', in Evolving Software Systems, T. Mens, A. Serebrenik, and A. Cleve (eds.), Springer, 33 pages, July 2013. In press.
[tamura13book]G. Tamura, N.M. Villegas, H.A. M"uller, J.P. Sousa, B. Becker, B., G. Karsai, S. Mankovskii, M. Pezz'e, W. Sch"afer, L. Tahvildari and K. Wong, ``Towards practical runtime verification and validation of self-adaptive software systems'', in LNCS, 2013, vol. 7475, pp. 108--132, Springer.
[villegas11seams]N.M. Villegas, H.A. M"uller, G. Tamura, L. Duchien, and R. Casallas, ``A Framework for Evaluating Quality-driven Self-Adaptive Software Systems'', in Proceedings 6th International Symposium ICSE (SEAMS), 2011, pp. 80--89, ACM.
[balasubramanian11seams]S. Balasubramanian, R. Desmarais, H.A. M"uller, U. Stege, and S. Venkatesh, ``Characterizing problems for realizing policies in self-adaptive and self-managing systems'', in Proc. 6th Int. Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS), May 2011, pp. 70--79.