Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

Taming Internet of Things Application Development with the IoTvar Middleware

Published: 19 May 2023 Publication History

Abstract

In the last years, Internet of Things (IoT) platforms have been designed to provide IoT applications with various services such as device discovery, context management, and data filtering. The lack of standardization has led each IoT platform to propose its own abstractions, APIs, and data models. As a consequence, programming interactions between an IoT consuming application and an IoT platform is time-consuming, is error prone, and depends on the developers’ level of knowledge about the IoT platform. To address these issues, this article introduces IoTvar, a middleware library deployed on the IoT consumer application that manages all its interactions with IoT platforms. IoTvar relies on declaring variables automatically mapped to sensors whose values are transparently updated with sensor observations through proxies on the client side. This article presents the IoTvar architecture and shows how it has been integrated into the FIWARE, OM2M, and muDEBS platforms. We also report the results of experiments performed to evaluate IoTvar, showing that it reduces the effort required to declare and manage IoT variables and has no considerable impact on CPU, memory, and energy consumption.

References

[1]
M. Ben Alaya, Y. Banouar, T. Monteil, C. Chassot, and K. Drira. 2014. OM2M: Extensible ETSI-compliant M2M service platform with self-configuration capability. Procedia Computer Science 32 (2014), 1079–1086. The 5th International Conference on Ambient Systems, Networks and Technologies (ANT’14), the 4th International Conference on Sustainable Energy Information Technology (SEIT’14).
[2]
Parvaneh Asghari, Amir Rahmani, and Hamid Haj Seyyed Javadi. 2018. Internet of things applications: A systematic review. Computer Networks 148 (Dec.2018), 241–261.
[3]
Djamal Benslimane, Schahram Dustdar, and Amit Sheth. 2008. Services mashups: The new generation of web applications. IEEE Internet Computing 12 (Oct.2008), 13–15.
[4]
Pedro Victor Borges, Chantal Taconet, Sophie Chabridon, Denis Conan, Thais Batista, Everton Cavalcante, and Cesar Batista. 2019. Mastering interactions with internet of things platforms through the IoTVar middleware. Proceedings of the 13th International Conference on Ubiquitous Computing and Ambient Intelligence (UCAmI) 31, 1 (Nov.2019), 78.
[5]
Raja Boujbel, Sam Rottenberg, Sébastien Leriche, Chantal Taconet, Jean-Paul Arcangeli, and Claire Lecocq. 2014. MuScADeL: A deployment DSL based on a multiscale characterization framework. In 2014 IEEE 38th International Computer Software and Applications Conference Workshops. 708–715.
[6]
Rodrigo Canek, Pedro Borges, and Chantal Taconet. 2022. Analysis of the impact of interaction patterns and IoT protocols on energy consumption of IoT consumer applications. In Distributed Applications and Interoperable Systems, David Eyers and Spyros Voulgaris (Eds.). Springer International Publishing, Cham, 131–147.
[7]
M. A. Chaqfeh and N. Mohamed. 2012. Challenges in middleware solutions for the internet of things. In 2012 International Conference on Collaboration Technologies and Systems (CTS’12). 21–26.
[8]
Flávia C. Delicato, Paulo F. Pires, and Thais Batista. 2013. The Programming and Execution Module (PEM). Springer London, London, 45–55.
[9]
N. Denis, P. Chaffardon, D. Conan, M. Laurent, S. Chabridon, and J. Leneutre. 2020. Privacy-preserving content-based publish/subscribe with encrypted matching and data splitting. In Proc. of the 17th International Joint Conference on e-Business and Telecommunications. INSTICC, SciTePress, 405–414.
[10]
Paul D. Ellis. 2010. The Essential Guide to Effect Sizes: Statistical Power, Meta-analysis, and the Interpretation of Research Results. Cambridge University Press, United Kingdom.
[11]
Michael P. Fay and Michael A. Proschan. 2010. Wilcoxon-Mann-Whitney or t-test? On assumptions for hypothesis tests and multiple interpretations of decision rules. Statistics Surveys 4 (2010), 1–39.
[12]
[13]
FIWARE Consortium. 2022. FIWARE Platform. https://www.fiware.org.
[14]
Andy Georges, Dries Buytaert, and Lieven Eeckhout. 2007. Statistically rigorous Java performance evaluation. SIGPLAN Not. 42, 10 (Oct.2007), 57–76.
[15]
Ross Harmes and Dustin Diaz. 2008. The proxy pattern. In Pro JavaScript Design Patterns. Apress, Berkeley, CA, 197–214.
[16]
Melinda Hess and Jeffrey Kromrey. 2004. Robust confidence intervals for effect sizes: A comparative study of Cohen’s d and Cliff’s delta under non-normality and heterogeneous variances. Paper Presented at the Annual Meeting of the American Educational Research Association.
[17]
Soobin Jeon and Inbum Jung. 2017. MinT: Middleware for cooperative interaction of things. Sensors 17, 6 (2017).
[18]
Tomasz Kalbarczyk and Christine Julien. 2018. Omni: An application framework for seamless device-to-device interaction in the wild. In Proceedings of the 19th International Middleware Conference (Middleware’18). Association for Computing Machinery, New York, NY, 161–173.
[19]
Ken Kelley and Kristopher J. Preacher. 2012. On effect size. Psychological Methods 17, 2 (2012), 137–152.
[20]
Gregor Kiczales, Erik Hilsdale, Jim Hugunin, Mik Kersten, Jeffrey Palm, and William G. Griswold. 2001. An overview of AspectJ. In Proceedings of the 15th European Conference on Object-Oriented Programming (ECOOP’01). Springer-Verlag, Berlin, 327–353.
[21]
Shancang Li, Li Da Xu, and Shanshan Zhao. 2015. The internet of things: A survey. Information Systems Frontiers 17, 2 (April2015), 243–259.
[22]
H. B. Mann and D. R. Whitney. 1947. On a test of whether one of two random variables is stochastically larger than the other. Annals of Mathematical Statistics 18, 1 (1947), 50–60.
[23]
Pierrick Marie, Léon Lim, Atif Manzoor, Sophie Chabridon, Denis Conan, and Thierry Desprats. 2014. QoC-aware context data distribution in the internet of things. InProceedings of the 1st ACM Workshop on Middleware for Context-Aware Applications in the IoT - M4IOT@middleware: 13–17 (2014).
[24]
Julien Mineraud, Oleksiy Mazhelis, Xiang Su, and Sasu Tarkoma. 2016. A gap analysis of Internet-of-Things platforms. Computer Communications 89–90 (Sept.2016), 5–16.
[25]
Bhumi Nakhuva and Tushar Champaneria. 2015. Study of various internet of things platforms. International Journal of Computer Science & Engineering Survey 6, 6 (2015), 61–74.
[26]
[27]
Anne H. Ngu, Mario Gutierrez, Vangelis Metsis, Surya Nepal, and Quan Z. Sheng. 2017. IoT middleware: A survey on issues and enabling technologies. IEEE Internet of Things Journal 4, 1 (2017), 1–20.
[28]
NODE-RED. 2021. Node-Red. https://nodered.org/.
[29]
OASIS. 2015. MQTT Version 3.1.1 Plus Errata 01. Retrieved May 21, 2021, from https://docs.oasis-open.org/mqtt/mqtt/v3.1.1/mqtt-v3.1.1.pdf.
[31]
oneM2M Partners. 2019. oneM2M Services Platform. Release 3.
[32]
Open mashup alliance. (n. d.). Enterprise Mashup Markup Language. http://www.openmashup.org/.
[33]
Pankesh Patel and Damien Cassou. 2015. Enabling high-level application development for the Internet of Things. Journal of Systems and Software 103 (2015), 62–84.
[34]
Dave Raggett. 2015. The web of things: Challenges and opportunities. Computer 48, 5 (2015), 26–32.
[35]
Partha Pratim Ray. 2016. A survey of IoT cloud platforms. Future Computing and Informatics Journal 1, 1 (2016), 35–46.
[36]
M. A. Razzaque, M. Milojevic-Jevric, A. Palade, and S. Clarke. 2016. Middleware for internet of things: A survey. IEEE Internet of Things Journal 3, 1 (2016), 70–95.
[37]
April Reeve. 2013. Chapter 12 - Data integration patterns. In Managing Data in Motion, April Reeve (Ed.). Morgan Kaufmann, Boston, 79–85.
[38]
Marc Shapiro. 1986. Structure and encapsulation in distributed systems: The proxy principle. In Int. Conf. on Distr. Comp. Sys. (ICDCS’86). IEEE, Cambridge, MA, 198–204. https://hal.inria.fr/inria-00444651.
[39]
Samuel Sanford Shapiro and Martin Wilk. 1965. An analysis of variance test for normality (complete samples). Biometrika 52, 3–4 (1965), 591–611.
[40]
K. J. Singh and D. S. Kapoor. 2017. Create your own internet of things: A survey of IoT platforms. IEEE Consumer Electronics Magazine 6, 2 (2017), 57–68.
[41]
Karthik Soundararajan and Robert Brennan. 2008. Design patterns for real-time distributed control system benchmarking. Robotics and Computer-integrated Manufacturing 24 (Oct.2008), 606–615.
[42]
Pierre Sutra, Etienne Rivière, Cristian Cotes, Marc Sánchez Artigas, Pedro Garcia Lopez, Emmanuel Bernard, William Burns, and Galder Zamarreño. 2017. CRESON: Callable and replicated shared objects over NoSQL. In 2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS’17). 115–128.
[43]
Antero Taivalsaari and Tommi Mikkonen. 2017. A roadmap to the programmable world: Software challenges in the IoT era. IEEE Software 34, 1 (Jan.– Feb.2017), 72–80.
[44]
András Vargha and Harold D. Delaney. 2000. A critique and improvement of the CL common language effect size statistics of McGraw and Wong. Journal of Educational and Behavioral Statistics 25, 2 (2000), 101–132.
[46]
Franco Zambonelli. 2017. Key abstractions for IoT-oriented software engineering. IEEE Software 34, 1 (Jan.– Feb.2017), 38–45.

Cited By

View all
  • (2024)Ambience: an operating system for IoT microservicesJournal of Edge Computing10.55056/jec.786Online publication date: 5-Sep-2024
  • (2024)Intelligent architecture and platforms for private edge cloud systems: A reviewFuture Generation Computer Systems10.1016/j.future.2024.06.024160(457-471)Online publication date: Nov-2024
  • (2023)Integrating Medical and Wearable Devices with E-Health Systems Using Horizontal IoT Platforms2023 IEEE Sensors Applications Symposium (SAS)10.1109/SAS58821.2023.10254186(1-6)Online publication date: 18-Jul-2023
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Transactions on Internet Technology
ACM Transactions on Internet Technology  Volume 23, Issue 2
May 2023
276 pages
ISSN:1533-5399
EISSN:1557-6051
DOI:10.1145/3597634
  • Editor:
  • Ling Liu
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 19 May 2023
Online AM: 28 February 2023
Accepted: 16 February 2023
Revised: 19 November 2022
Received: 25 April 2022
Published in TOIT Volume 23, Issue 2

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Middleware
  2. Internet of Things
  3. software abstractions
  4. IoT platforms

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)60
  • Downloads (Last 6 weeks)9
Reflects downloads up to 21 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Ambience: an operating system for IoT microservicesJournal of Edge Computing10.55056/jec.786Online publication date: 5-Sep-2024
  • (2024)Intelligent architecture and platforms for private edge cloud systems: A reviewFuture Generation Computer Systems10.1016/j.future.2024.06.024160(457-471)Online publication date: Nov-2024
  • (2023)Integrating Medical and Wearable Devices with E-Health Systems Using Horizontal IoT Platforms2023 IEEE Sensors Applications Symposium (SAS)10.1109/SAS58821.2023.10254186(1-6)Online publication date: 18-Jul-2023
  • (2023)A Middleware Architecture for Mastering Energy Consumption in Internet of Things Applications2023 International Conference on ICT for Sustainability (ICT4S)10.1109/ICT4S58814.2023.00016(66-75)Online publication date: 5-Jun-2023

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Full Text

View this article in Full Text.

Full Text

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media