Title :
Tempo-Toolkit: Tempo to Java Translation Module
Author :
Georgiou, Chryssis ; Musial, Peter M. ; Ploutarchou, Christos
Author_Institution :
Univ. of Cyprus, Nicosia, Cyprus
Abstract :
TIOA is a formal language for modeling distributed, concurrent, and timed/untimed systems as collections of interacting state machines, called Timed Input/Output Automata. TIOA provide natural mathematical notations for describing systems, their intended properties, and the relationships between their descriptions at varying levels of abstraction. The Tempo toolkit is an implementation of the TIOA language and a suite of tools that supports a range of validation methods for description of systems and their properties, including static analysis, simulation, and machine-checked proofs. The tools are implemented as Eclipse plugins. In this paper we introduce a new plugin of the toolkit, the Tempo-to-Java compiler, which automatically translates high level Tempo specification into executable Java code for various distributed platforms. The translation process is verified to preserve the formal properties of the source specification, hence leading to generated code which is correct by construction.
Keywords :
Java; automata theory; concurrency control; distributed processing; formal languages; formal specification; program compilers; program diagnostics; program interpreters; program verification; Eclipse plugins; TIOA language; Tempo-to-Java compiler; Tempo-toolkit; code generation; concurrent system modeling; distributed platforms; distributed system modelling; executable Java code; formal language; formal properties; high-level Tempo specification translation; interacting state machines; machine-checked proofs; natural mathematical notations; source specification; static analysis; timed input-output automata; timed system modelling; translation process verification; untimed system modelling; validation method; Automata; Clocks; Fires; Java; Schedules; Synchronization; Trajectory; Automatic code generation; Design tools and techniques; Distributed programming; Verifiable translation;
Conference_Titel :
Network Computing and Applications (NCA), 2013 12th IEEE International Symposium on
Conference_Location :
Cambridge, MA
Print_ISBN :
978-0-7695-5043-5
DOI :
10.1109/NCA.2013.17