Fusing Statecharts and Java

Abstract

This paper presents FUSE, an approach for modeling and implementing embedded software components which starts from a main-stream programming language and brings some of the key concepts of Stchs as first-class elements within this language. Our approach provides a unified programming environment which not only preserves some of the advantages of Stchs’ formal foundation but also directly supports features of object-orientation and strong typing. By specifying Stchs directly in FUSE we eliminate the out-of-synch between the model and the generated code and we allow the tuning and debugging to be done within the same programming model. This paper describes the main language constructs of FUSE and presents its semantics by translation into the Java programming language. We conclude by discussing extensions to the base language which enable the efficient static checking of program properties.

Type
Publication
ACM Transactions on Embedded Computing Systems, vol 12, number 1s, pages 45:1-45:21, ACM, 2013
César Sánchez
César Sánchez
Research Professor

My research focuses on formal methods, in paricular logic, automata and game theory. Temporal logics for Hyperproperties. Applications to Blockchain.