Skip to main content

Using Runtime Information of Controllers for Safe Adaptation at Runtime: A Process Mining Approach

  • Conference paper
  • First Online:
Computer Safety, Reliability, and Security. SAFECOMP 2023 Workshops (SAFECOMP 2023)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 14182))

Included in the following conference series:

  • 664 Accesses

Abstract

The increasing complexity of current Software Systems is generating the urge to find new ways to check the correct functioning of models during runtime. Runtime verification helps ensure that a system is working as expected even after being deployed, essential when dealing with systems working in critical or autonomous scenarios. This paper presents an improvement to an existing tool, named CRESCO, linking it with another tool to enable performing periodical verification based on event logs. These logs help determine whether the functioning of the system is inadequate or not after the last periodic check. If the system is determined to be working incorrectly, new code files are automatically generated from the traces of the log file, so they can be replaced when a faulty scenario is to occur. Thanks to this improvement, the CRESCO components are able to evaluate their correctness and adapt themselves at runtime, making the system more robust against unforeseen faulty scenarios.

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 59.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 79.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

References

  1. Acceleo. Technical report (2016). https://www.eclipse.org/acceleo/

  2. Prom tools. Technical report (2020). https://www.promtools.org/doku.php

  3. van der Aalst, W.M.: A practitioner’s guide to process mining: limitations of the directly-follows graph (2019)

    Google Scholar 

  4. Al-Shaer, E.S.: A hierarchical filtering-based monitoring architecture for large-scale distributed systems. Old Dominion University (1998)

    Google Scholar 

  5. Arcaini, P., Gargantini, A., Riccobene, E.: CoMA: conformance monitoring of java programs by abstract state machines. In: Khurshid, S., Sen, K. (eds.) RV 2011. LNCS, vol. 7186, pp. 223–238. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-29860-8_17

    Chapter  Google Scholar 

  6. Bass, L., Weber, I., Zhu, L.: DevOps: A Software Architect’s Perspective. Addison-Wesley Professional (2015)

    Google Scholar 

  7. Blair, G., Bencomo, N., France, R.B.: Models@ run.time. Computer 42(10), 22–27 (2009). https://doi.org/10.1109/MC.2009.326

  8. Bruegge, B., Gottschalk, T., Luo, B.: A framework for dynamic program analyzers. In: ACM SIGplan Notices, vol. 28, pp. 65–82. ACM (1993)

    Google Scholar 

  9. Cassar, I., Francalanza, A.: Runtime adaptation for actor systems. In: Bartocci, E., Majumdar, R. (eds.) RV 2015. LNCS, vol. 9333, pp. 38–54. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-23820-3_3

    Chapter  Google Scholar 

  10. Daian, P., Guth, D., Hathhorn, C., Li, Y., Pek, E., Saxena, M., Şerbănuţă, T.F., Roşu, G.: Runtime verification at work: a tutorial. In: Falcone, Y., Sánchez, C. (eds.) RV 2016. LNCS, vol. 10012, pp. 46–67. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-46982-9_5

    Chapter  Google Scholar 

  11. Diaz, M., Juanole, G., Courtiat, J.P.: Observer-a concept for formal on-line validation of distributed systems. IEEE Trans. Software Eng. 20(12), 900–913 (1994)

    Article  Google Scholar 

  12. Engler, D.R., Proebsting, T.A.: DCG: an efficient, retargetable dynamic code generation system. ACM SIGPLAN Not. 29(11), 263–272 (1994)

    Article  Google Scholar 

  13. Falcone, Y., Havelund, K., Reger, G.: A tutorial on runtime verification. Eng. Dependable Softw. Syst. 141–175 (2013)

    Google Scholar 

  14. Frtunikj, J., Rupanov, V., Camek, A., Buckl, C., Knoll, A.: A safety aware run-time environment for adaptive automotive control systems. In: Embedded Real-Time Software and Systems (ERTS2) (2014)

    Google Scholar 

  15. Garlan, D., Schmerl, B.: Model-based adaptation for self-healing systems. In: Proceedings of the First Workshop on Self-healing Systems, pp. 27–32. ACM (2002)

    Google Scholar 

  16. Group, X.W.: IEEE standard for extensible event stream (XES) for achieving interoperability in event logs and event streams. IEEE Std 1849-2016, pp. 1–50 (2016). https://doi.org/10.1109/IEEESTD.2016.7740858

  17. Gu, T., Sun, C., Ma, X., Lü, J., Su, Z.: Automatic runtime recovery via error handler synthesis. In: 2016 31st IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 684–695. IEEE (2016)

    Google Scholar 

  18. Guo, C.G., Zhu, J., Li, X.L.: A generic software monitoring model and feature analysis. J. Softw. 6(3), 395–403 (2011)

    Article  Google Scholar 

  19. Illarramendi, M., Etxeberria, L., Elkorobarrutia, X., Sagardui, G.: Runtime observable and adaptable UML state machines: models@ run. time approach. In: Proceedings of the 34th ACM/SIGAPP Symposium on Applied Computing, pp. 1818–1827. ACM (2019)

    Google Scholar 

  20. Illarramendi, M., Etxeberria, L., Larrinaga, F., Sagardui, G.: Cresco framework and checker: automatic generation of reflective UML state machine’s C++ code and checker. In: 2020 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW), pp. 25–30. IEEE (2020)

    Google Scholar 

  21. Industriees, B.: Devops (2021). https://www.bigindustries.be/blog/6-proven-steps-to-become-a-devops-engineer. Accessed 10 May 2023

  22. Jabbari, R., bin Ali, N., Petersen, K., Tanveer, B.: What is devops? A systematic mapping study on definitions and practices. In: Proceedings of the Scientific Workshop Proceedings of XP2016, pp. 1–11 (2016)

    Google Scholar 

  23. Kim, M., Viswanathan, M., Kannan, S., Lee, I., Sokolsky, O.: Java-MaC: a run-time assurance approach for java programs. Formal Methods Syst. Design 24(2), 129–155 (2004)

    Article  MATH  Google Scholar 

  24. Laboratory, F.S.: Monitoring oriented programming. http://fsl.cs.illinois.edu/index.php/MOP

  25. Leemans, S.J., Fahland, D., Van der Aalst, W.M.: Scalable process discovery and conformance checking. Softw. Syst. Model. 17(2), 599–631 (2018)

    Article  Google Scholar 

  26. Long, F., Sidiroglou-Douskos, S., Rinard, M.: Automatic runtime error repair and containment via recovery shepherding. ACM SIGPLAN Not. 49(6), 227–238 (2014)

    Article  Google Scholar 

  27. Mitsch, S., Platzer, A.: ModelPlex: verified runtime validation of verified cyber-physical system models. Formal Methods Syst. Design 49(1–2), 33–74 (2016)

    Article  MATH  Google Scholar 

  28. Pezzé, M., Wuttke, J.: Model-driven generation of runtime checks for system properties. Int. J. Softw. Tools Technol. Transf. 18(1), 1–19 (2016). https://doi.org/10.1007/s10009-014-0325-2

  29. Saxonica: Developers of the saxon processor for XSLT, XQuery, and XML schema, including the only XSLT 3.0 conformant toolset (2022)

    Google Scholar 

  30. Schmidt, D.C.: Model-driven engineering. Comput.-IEEE Comput. Soc. 39(2), 25 (2006)

    Article  Google Scholar 

  31. Schneider, D., Trapp, M.: A safety engineering framework for open adaptive systems. In: 2011 Fifth IEEE International Conference on Self-Adaptive and Self-Organizing Systems (SASO), pp. 89–98. IEEE (2011)

    Google Scholar 

  32. Spinczyk, O., Gal, A., Schröder-Preikschat, W.: AspectC++: an aspect-oriented extension to the C++ programming language. In: Proceedings of the Fortieth International Conference on Tools Pacific: Objects for Internet, Mobile and Embedded Applications, pp. 53–60. Australian Computer Society, Inc. (2002)

    Google Scholar 

  33. Van Der Aalst, W.: Process mining. Commun. ACM 55(8), 76–83 (2012)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Miren Illarramendi .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Da Silva, J., Illarramendi, M., Iriarte, A. (2023). Using Runtime Information of Controllers for Safe Adaptation at Runtime: A Process Mining Approach. In: Guiochet, J., Tonetta, S., Schoitsch, E., Roy, M., Bitsch, F. (eds) Computer Safety, Reliability, and Security. SAFECOMP 2023 Workshops. SAFECOMP 2023. Lecture Notes in Computer Science, vol 14182. Springer, Cham. https://doi.org/10.1007/978-3-031-40953-0_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-40953-0_8

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-40952-3

  • Online ISBN: 978-3-031-40953-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics