Skip to main content

Compositional Simulation of Abstract State Machines for Safety Critical Systems

  • Conference paper
  • First Online:
Formal Aspects of Component Software (FACS 2022)

Abstract

Model-based simulation is nowadays an accepted practice for reliable prototyping of system behavior. To keep requirements complexity under control, system components are specified by separate models, validated and verified in isolation from the rest, but models have to be subsequently integrated and validated as a whole. For this reason, engines for orchestrated simulation of separate models are extremely useful.

In this paper, we present a compositional simulation technique for managing the co-execution of Abstract State Machines (ASMs) communicating through I/O events. The proposed method allows the co-simulation of ASM models of separate subsystems of a Discrete Event System in a straight-through processing manner according to a predefined orchestration schema.

We also present our experience in applying and validating the proposed technique in the context of the MVM (Mechanical Ventilator Milano) system, a mechanical lung ventilator that has been designed, successfully certified, and deployed during the COVID-19 pandemic.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

Notes

  1. 1.

    https://mvm.care/.

  2. 2.

    We assume \(I_c\) is concretely realized as a map (or dictionary) that associates ASM function symbols (the keys) with their values.

  3. 3.

    The models are available at https://github.com/asmeta/asmeta/tree/master/code/experimental/asmeta.simulator%40run.time/examples/MVM/ConfModels.

References

  1. ASMETA (ASM mETAmodeling) toolset. https://asmeta.github.io/

  2. Functional mock-up interface. https://fmi-standard.org/

  3. Jolie. https://jolie-lang.org

  4. Object management group business process model and notation. https://bpmn.org/

  5. Straight Through Processing - STP, Investopedia, 18 October 2020. https://www.investopedia.com/terms/s/straightthroughprocessing.asp

  6. YAKINDU Statechart Tools. https://itemis.com/en/yakindu/state-machine

  7. Abba, A., et al.: The novel mechanical ventilator Milano for the COVID-19 pandemic. Phys. Fluids 33(3), 037122 (2021)

    Google Scholar 

  8. Arcaini, P., Bombarda, A., Bonfanti, S., Gargantini, A., Riccobene, E., Scandurra, P.: The ASMETA approach to safety assurance of software systems. In: Raschke, A., Riccobene, E., Schewe, K.-D. (eds.) Logic, Computation and Rigorous Methods. LNCS, vol. 12750, pp. 215–238. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-76020-5_13

    Chapter  Google Scholar 

  9. Bañares, J.Á., Colom, J.M.: Model and simulation engines for distributed simulation of discrete event systems. In: Coppola, M., Carlini, E., D’Agostino, D., Altmann, J., Bañares, J.Á. (eds.) GECON 2018. LNCS, vol. 11113, pp. 77–91. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-13342-9_7

    Chapter  Google Scholar 

  10. Bencomo, N., Götz, S., Song, H.: Models@run.time: a guided tour of the state of the art and research challenges. Softw. Syst. Model. 18(5), 3049–3082 (2019)

    Google Scholar 

  11. Bombarda, A., Bonfanti, S., Gargantini, A., Riccobene, E.: Developing a prototype of a mechanical ventilator controller from requirements to code with ASMETA. Electron. Proc. Theor. Comput. Sci. 349, 13–29 (2021)

    Article  Google Scholar 

  12. Bombino, M., Scandurra, P.: A model-driven co-simulation environment for heterogeneous systems. Int. J. Softw. Tools Technol. Transf. 15(4), 363–374 (2013). https://doi.org/10.1007/s10009-012-0230-5

    Article  Google Scholar 

  13. Bonfanti, S., Riccobene, E., Scandurra, P.: A runtime safety enforcement approach by monitoring and adaptation. In: Biffl, S., Navarro, E., Löwe, W., Sirjani, M., Mirandola, R., Weyns, D. (eds.) ECSA 2021. LNCS, vol. 12857, pp. 20–36. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-86044-8_2

    Chapter  Google Scholar 

  14. Börger, E., Raschke, A.: Modeling Companion for Software Practitioners. Springer, Heidelberg (2018). https://doi.org/10.1007/978-3-662-56641-1

  15. Börger, E., Stärk, R.: Abstract State Machines: A Method for High-Level System Design and Analysis. Springer, Berlin (2003)

    Google Scholar 

  16. Fuller, A., Fan, Z., Day, C., Barlow, C.: Digital twin: enabling technologies, challenges and open research. IEEE Access 8, 108952–108971 (2020)

    Article  Google Scholar 

  17. Gargantini, A., Riccobene, E., Scandurra, P.: A metamodel-based language and a simulation engine for abstract state machines. J. UCS 14(12), 1949–1983 (2008)

    Google Scholar 

  18. Grieves, M.: Origins of the Digital Twin Concept, August 2016

    Google Scholar 

  19. Huiskamp, W., van den Berg, T.: Federated simulations. In: Setola, R., Rosato, V., Kyriakides, E., Rome, E. (eds.) Managing the Complexity of Critical Infrastructures. SSDC, vol. 90, pp. 109–137. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-51043-9_6

    Chapter  Google Scholar 

  20. Mirandola, R., Potena, P., Riccobene, E., Scandurra, P.: A reliability model for service component architectures. J. Syst. Softw. 89, 109–127 (2014)

    Article  Google Scholar 

  21. Orlando, S., Pasquale, V.D., Barbanera, F., Lanese, I., Tuosto, E.: Corinne, a tool for choreography automata. In: Salaün, G., Wijs, A. (eds.) FACS 2021. LNCS, vol. 13077, pp. 82–92. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-90636-8_5

    Chapter  Google Scholar 

  22. Riccobene, E., Scandurra, P.: A formal framework for service modeling and prototyping. Formal Aspects Comput. 26(6), 1077–1113 (2013). https://doi.org/10.1007/s00165-013-0289-0

    Article  Google Scholar 

  23. Riccobene, E., Scandurra, P.: Model-based simulation at runtime with abstract state machines. In: Muccini, H., et al. (eds.) ECSA 2020. CCIS, vol. 1269, pp. 395–410. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-59155-7_29

    Chapter  Google Scholar 

  24. Riccobene, E., Scandurra, P.: Model-based simulation at runtime with abstract state machines. In: Software Architecture - 14th European Conference, ECSA 2020 Tracks and Workshops, Proceedings. Communications in Computer and Information Science, vol. 1269. Springer, Berlin (2020)

    Google Scholar 

  25. Talcott, C., et al.: Composition of languages, models, and analyses. In: Composing Model-Based Analysis Tools, pp. 45–70. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-81915-6_4

    Chapter  Google Scholar 

  26. Van Tendeloo, Y., Van Mierlo, S., Vangheluwe, H.: A multi-paradigm modelling approach to live modelling. Softw. Syst. Model. 18(5), 2821–2842 (2018). https://doi.org/10.1007/s10270-018-0700-7

    Article  Google Scholar 

  27. Weyns, D., Iftikhar, M.U.: Model-based simulation at runtime for self-adaptive systems. In: Kounev, S., Giese, H., Liu, J. (eds.) 2016 IEEE International Conference on Autonomic Computing, ICAC 2016. IEEE Computer Society (2016)

    Google Scholar 

Download references

Acknowledgement

We thank the students Davide Santandrea and Michele Zenoni for their contribution in tool implementation and case study composition.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Silvia Bonfanti .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2022 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

Bonfanti, S., Gargantini, A., Riccobene, E., Scandurra, P. (2022). Compositional Simulation of Abstract State Machines for Safety Critical Systems. In: Tapia Tarifa, S.L., Proença, J. (eds) Formal Aspects of Component Software. FACS 2022. Lecture Notes in Computer Science, vol 13712. Springer, Cham. https://doi.org/10.1007/978-3-031-20872-0_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-20872-0_1

  • Published:

  • Publisher Name: Springer, Cham

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

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics