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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
- 2.
We assume \(I_c\) is concretely realized as a map (or dictionary) that associates ASM function symbols (the keys) with their values.
- 3.
The models are available at https://github.com/asmeta/asmeta/tree/master/code/experimental/asmeta.simulator%40run.time/examples/MVM/ConfModels.
References
ASMETA (ASM mETAmodeling) toolset. https://asmeta.github.io/
Functional mock-up interface. https://fmi-standard.org/
Jolie. https://jolie-lang.org
Object management group business process model and notation. https://bpmn.org/
Straight Through Processing - STP, Investopedia, 18 October 2020. https://www.investopedia.com/terms/s/straightthroughprocessing.asp
YAKINDU Statechart Tools. https://itemis.com/en/yakindu/state-machine
Abba, A., et al.: The novel mechanical ventilator Milano for the COVID-19 pandemic. Phys. Fluids 33(3), 037122 (2021)
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
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
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)
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)
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
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
Börger, E., Raschke, A.: Modeling Companion for Software Practitioners. Springer, Heidelberg (2018). https://doi.org/10.1007/978-3-662-56641-1
Börger, E., Stärk, R.: Abstract State Machines: A Method for High-Level System Design and Analysis. Springer, Berlin (2003)
Fuller, A., Fan, Z., Day, C., Barlow, C.: Digital twin: enabling technologies, challenges and open research. IEEE Access 8, 108952–108971 (2020)
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)
Grieves, M.: Origins of the Digital Twin Concept, August 2016
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
Mirandola, R., Potena, P., Riccobene, E., Scandurra, P.: A reliability model for service component architectures. J. Syst. Softw. 89, 109–127 (2014)
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
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
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
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)
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
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
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)
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
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
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)