Authors: Franco Cicirelli; Libero Nigro; Paolo F. Sciammarella
Addresses: CNR – National Research Council of Italy Institute for High Performance Computing and Networking (ICAR), 87036 Rende (CS), Italy ' Engineering Department of Informatics Modelling Electronics and Systems Science, University of Calabria, 87036 Rende (CS), Italy ' Engineering Department of Informatics Modelling Electronics and Systems Science, University of Calabria, 87036 Rende (CS), Italy
Abstract: The work described in this paper is concerned with a model-driven development of distributed real-time systems, like cyber-physical systems. A challenge in such systems' development consists of ensuring that a final implementation is compliant with its model used for functional and temporal property checking. In particular, a modern Java framework called Theatre is described which enables the modelling, analysis and synthesis of distributed real-time systems in a way which preserves such compliance. Theatre is based on the paradigm of actors, that is highly modular and encapsulated software entities which communicate with each other by asynchronous message-passing. Theatre rests on lightweight actors regulated by a customisable reflective control layer. Key features of Theatre are its support to seamless application development and timing predictability. The same model can be developed, without distortions, from early analysis through design and to a series of implementations. The paper describes Theatre and demonstrates its application to the development of a distributed dependable real-time system. Both modelling and property checking by simulation and real-time prototyping are illustrated. Theatre's current level of maturity and practical implementation in Java are detailed.
Keywords: distributed timed actors; Java; modelling and simulation; timing constraints; seamless development.
International Journal of Simulation and Process Modelling, 2020 Vol.15 No.1/2, pp.13 - 29
Received: 30 Jul 2018
Accepted: 28 Feb 2019
Published online: 29 Apr 2020 *