Skip to main content

Towards a Runtime Verification Approach for Internet of Things Systems

  • Conference paper
  • First Online:
Book cover Current Trends in Web Engineering (ICWE 2018)

Part of the book series: Lecture Notes in Computer Science ((LNISA,volume 11153))

Included in the following conference series:

Abstract

Internet of Things systems are evolving at a rapid pace and their impact on our society grows every day. In this context developing IoT systems that are reliable and compliant with the requirements is of paramount importance. Unfortunately, few proposals for assuring the quality of these complex and often safety-critical systems are present in the literature. To this aim, runtime verification can be a valuable support to tackle such a complex task and to complement other software verification techniques based on static analysis and testing. This paper is a first step towards the application of runtime verification to IoT systems. In particular, we describe our approach based on a Prolog monitor, the definition of a formal specification (using trace expressions) describing the expected behaviour of the system, and the definition of appropriate input scenarios. Furthermore, we describe its application and preliminary evaluation using a simplified mobile health IoT system for the management of diabetic patients composed by sensors, actuators, Node-RED logic on the cloud, and smartphones.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://nodered.org/.

  2. 2.

    e.g., https://devops.com/functional-testing-iot/.

  3. 3.

    https://en.wikipedia.org/wiki/Bluetooth_Low_Energy.

  4. 4.

    https://en.wikipedia.org/wiki/UMTS_(telecommunication).

  5. 5.

    https://en.wikipedia.org/wiki/LTE_(telecommunication).

  6. 6.

    https://developer.android.com/studio/run/emulator.html.

  7. 7.

    http://www.swi-prolog.org.

References

  1. Ancona, D., Ferrando, A., Mascardi, V.: Comparing trace expressions and linear temporal logic for runtime verification. In: Ábrahám, E., Bonsangue, M., Johnsen, E.B. (eds.) Theory and Practice of Formal Methods. LNCS, vol. 9660, pp. 47–64. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-30734-3_6

    Chapter  Google Scholar 

  2. Ancona, D., Franceschini, L., Delzanno, G., Leotta, M., Ribaudo, M., Ricca, F.: Towards runtime monitoring of Node.js and its application to the Internet of Things. In: Pianini, D., Salvaneschi, G. (eds.) Proceedings of 1st Workshop on Architectures, Languages and Paradigms for IoT (ALP4IoT 2017), EPTCS. vol. 264, pp. 27–42. arXiv (2018)

    Article  Google Scholar 

  3. Atzori, L., Iera, A., Morabito, G.: The internet of things: a survey. Comput. Netw. 54(15), 2787–2805 (2010)

    Article  Google Scholar 

  4. Beizer, B.: Software Testing Techniques. Wiley, New York (1990)

    MATH  Google Scholar 

  5. Chen, T.Y., Ho, J.W., Liu, H., Xie, X.: An innovative approach for testing bioinformatics programs using metamorphic testing. BMC Bioinform. 10(1), 24 (2009)

    Article  Google Scholar 

  6. Clarke, E., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (1999)

    Google Scholar 

  7. Desolda, G., Ardito, C., Matera, M.: Empowering end users to customize their smart environments: model, composition paradigms, and domain-specific tools. ACM Trans. Comput. Hum. Interact. 24(2), 12:1–12:52 (2017)

    Article  Google Scholar 

  8. Grün, B.J., Schuler, D., Zeller, A.: The impact of equivalent mutants. In: Proceedings of 2nd International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2009, pp. 192–199. IEEE (2009)

    Google Scholar 

  9. Incki, K., Ari, I.: A novel runtime verification solution for IoT systems. IEEE Access 6, 13501–13512 (2018)

    Article  Google Scholar 

  10. Jia, Y., Harman, M.: An analysis and survey of the development of mutation testing. IEEE Trans. Softw. Eng. 37(5), 649–678 (2011)

    Article  Google Scholar 

  11. Klonoff, D.C.: The current status of mHealth for diabetes: will it be the next big thing? J. Diab. Sci. Technol. 7(3), 749–758 (2013)

    Article  Google Scholar 

  12. Kochhar, P.S., Thung, F., Lo, D.: Code coverage and test suite effectiveness: empirical study with real bugs in large systems. In: Proceedings of 22nd International Conference on Software Analysis, Evolution and Reengineering, SANER 2015, pp. 560–564. IEEE (2015)

    Google Scholar 

  13. Leotta, M., et al.: An acceptance testing approach for Internet of Things systems. IET Softw. 12(5), 430–436 (2018). IET Digital Library. https://doi.org/10.1049/iet-sen.2017.0344, https://digital-library.theiet.org/content/journals/10.1049/iet-sen.2017.0344

    Article  Google Scholar 

  14. Leotta, M., Clerissi, D., Ricca, F., Tonella, P.: Approaches and tools for automated end-to-end web testing. Adv. Comput. 101, 193–237 (2016)

    Article  Google Scholar 

  15. Leotta, M., et al.: Towards an acceptance testing approach for Internet of Things systems. In: Garrigós, I., Wimmer, M. (eds.) ICWE 2017. LNCS, vol. 10544, pp. 125–138. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-74433-9_11

    Chapter  Google Scholar 

  16. Offutt, A.J., Untch, R.H.: Mutation 2000: uniting the orthogonal. In: Wong, W.E. (ed.) Mutation Testing for the New Century. ADBS, vol. 24, pp. 34–44. Springer, Boston (2001). https://doi.org/10.1007/978-1-4757-5939-6_7

    Chapter  Google Scholar 

  17. Rosenkranz, P., Wählisch, M., Baccelli, E., Ortmann, L.: A distributed test system architecture for open-source IoT software. In: Proceedings of 1st Workshop on IoT Challenges in Mobile and Industrial Systems, IoT-Sys 2015, pp. 43–48. ACM (2015)

    Google Scholar 

  18. Utting, M., Legeard, B.: Practical Model-Based Testing: A Tools Approach. Morgan Kaufmann, Burlington (2010)

    Google Scholar 

Download references

Acknowledgements

This research was partially supported by Actelion Pharmaceuticals Italia and DIBRIS SEED 2016 grants.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Maurizio Leotta .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Leotta, M., Ancona, D., Franceschini, L., Olianas, D., Ribaudo, M., Ricca, F. (2018). Towards a Runtime Verification Approach for Internet of Things Systems. In: Pautasso, C., Sánchez-Figueroa, F., Systä, K., Murillo Rodríguez, J. (eds) Current Trends in Web Engineering. ICWE 2018. Lecture Notes in Computer Science(), vol 11153. Springer, Cham. https://doi.org/10.1007/978-3-030-03056-8_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-03056-8_8

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-03055-1

  • Online ISBN: 978-3-030-03056-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics