Self-managing Internet of Things

Internet of Things (IoT) are in full expansion. Applications range from factory floors to smart city environments. IoT applications consist of battery powered small computing devices (motes) that communicate wirelessly and interact with the environment through sensors and actuators. A key challenge that IoT engineers face is how to manage such systems that are subject to inherent uncertainties in their operation contexts, such as interferences and dynamic traffic in the network. Often these uncertainties are difficult to predict at development time. In practice, IoT applications are therefore typically over-provisioned at deployment; however, this leads to inefficiency. In this paper, we make a case for IoT applications that manage themselves at runtime to deal with uncertainties. We contribute: (1) a set of concerns that motivate the need for self-management for IoT systems, (2) three initial approaches that illustrate the potential of realising self-managing IoT systems, and (3) a set of open challenges for future research on self-adaptation in IoT.

[1]  Wouter Joosen,et al.  LooCI: The Loosely-coupled Component Infrastructure , 2012, 2012 IEEE 11th International Symposium on Network Computing and Applications.

[2]  Mary Shaw,et al.  Engineering Self-Adaptive Systems through Feedback Loops , 2009, Software Engineering for Self-Adaptive Systems.

[3]  Peyman Oreizy,et al.  Architecture-based runtime software evolution , 1998, Proceedings of the 20th International Conference on Software Engineering.

[4]  Jean-Marc Jézéquel,et al.  Perpetual Assurances for Self-Adaptive Systems , 2019, Software Engineering for Self-Adaptive Systems.

[5]  Konstantinos Kalpakis,et al.  MAXIMUM LIFETIME DATA GATHERING AND AGGREGATION IN WIRELESS SENSOR NETWORKS , 2002 .

[6]  John Anderson,et al.  Wireless sensor networks for habitat monitoring , 2002, WSNA '02.

[7]  Maria Rita Palattella,et al.  Using IEEE 802.15.4e Time-Slotted Channel Hopping (TSCH) in the Internet of Things (IoT): Problem Statement , 2015, RFC.

[8]  Mary Shaw,et al.  Software Engineering for Self-Adaptive Systems: A Research Roadmap , 2009, Software Engineering for Self-Adaptive Systems.

[9]  Michael Jackson,et al.  The meaning of requirements , 1997, Ann. Softw. Eng..

[10]  Schahram Dustdar,et al.  A Novel Vision of Cyber-Human Smart City , 2016, 2016 Fourth IEEE Workshop on Hot Topics in Web Systems and Technologies (HotWeb).

[11]  Bradley R. Schmerl,et al.  Software Engineering for Self-Adaptive Systems: A Second Research Roadmap , 2010, Software Engineering for Self-Adaptive Systems.

[12]  Rogério de Lemos Software Engineering for Self-Adaptive Systems III. Assurances , 2017, Lecture Notes in Computer Science.

[13]  Franco Zambonelli,et al.  A survey of autonomic communications , 2006, TAAS.

[14]  Sam Malek,et al.  Uncertainty in Self-Adaptive Software Systems , 2010, Software Engineering for Self-Adaptive Systems.

[15]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[16]  Jesper Andersson,et al.  FORMS: Unifying reference model for formal specification of distributed self-adaptive systems , 2012, TAAS.

[17]  Jesper Andersson,et al.  Modeling Dimensions of Self-Adaptive Software Systems , 2009, Software Engineering for Self-Adaptive Systems.

[18]  Jerald Martocci,et al.  Building Automation Routing Requirements in Low-Power and Lossy Networks , 2010, RFC.

[19]  David Garlan,et al.  Rainbow: architecture-based self-adaptation with reusable infrastructure , 2004 .

[20]  Ibrahim Korpeoglu,et al.  Power efficient data gathering and aggregation in wireless sensor networks , 2003, SGMD.

[21]  Takeo Kanade,et al.  Software Engineering for Self-Adaptive Systems II , 2013, Lecture Notes in Computer Science.

[22]  Tim Winter,et al.  Urban WSNs Routing Requirements in Low Power and Lossy Networks , 2009 .

[23]  Raffaela Mirandola,et al.  Uncertainties in the modeling of self-adaptive systems: a taxonomy and an example of availability evaluation , 2014, ICPE.

[24]  Ladan Tahvildari,et al.  Self-adaptive software: Landscape and research challenges , 2009, TAAS.

[25]  Danny Weyns,et al.  Do external feedback loops improve the design of self-adaptive systems? A controlled experiment , 2013, 2013 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS).

[26]  Thomas Watteyne,et al.  Industrial IEEE802.15.4e networks: Performance and trade-offs , 2015, 2015 IEEE International Conference on Communications (ICC).

[27]  Kristofer S. J. Pister,et al.  Industrial Routing Requirements in Low-Power and Lossy Networks , 2009, RFC.

[28]  Mani Srivastava,et al.  Energy-aware wireless microsensor networks , 2002, IEEE Signal Process. Mag..

[29]  Rogério de Lemos,et al.  Software Engineering for Self-Adaptive Systems: Research Challenges in the Provision of Assurances , 2013, Software Engineering for Self-Adaptive Systems.

[30]  Wouter Joosen,et al.  Hitch Hiker 2.0: a binding model with flexible data aggregation for the Internet-of-Things , 2016, Journal of Internet Services and Applications.

[31]  Wouter Joosen,et al.  Building Dynamic and Dependable Component-Based Internet-of-Things Applications with Dawn , 2016, 2016 19th International ACM SIGSOFT Symposium on Component-Based Software Engineering (CBSE).

[32]  Pramod K. Varshney,et al.  Data-aggregation techniques in sensor networks: a survey , 2006, IEEE Communications Surveys & Tutorials.

[33]  Jeff Magee,et al.  Self-Managed Systems: an Architectural Challenge , 2007, Future of Software Engineering (FOSE '07).

[34]  Danny Weyns,et al.  Software Engineering of Self-Adaptive Systems: An Organised Tour and Future Challenges , 2017 .