ConStaBL – A Fresh Look at Software Engineering with State Machines

07/07/2023
by   Karthika Venkatesan, et al.
0

Statechart is a visual modelling language for systems. In this paper, we extend our earlier work on modular statecharts with local variables and present an updated operational semantics for statecharts with concurrency. Our variant of the statechart has local variables, which interact significantly with the remainder of the language semantics. Our semantics does not allow transition conflicts in simulations and is stricter than most other available semantics of statecharts in that sense. It allows arbitrary interleaving of concurrently executing action code, which allows more precise modelling of systems and upstream analysis of the same. We present the operational semantics in the form of the simulation algorithm. We also establish the criteria based on our semantics for defining conflicting transitions and valid simulations. Our semantics is executable and can be used to simulate statechart models and verify their correctness. We present a preliminary setup to carry out fuzz testing of Statechart models, an idea that does not seem to have a precedent in literature. We have used our simulator in conjunction with a well-known fuzzer to do fuzz testing of statechart models of non-trivial sizes and have found issues in them that would have been hard to find through inspection.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/14/2018

Structural Operational Semantics for Control Flow Graph Machines

Compilers use control flow graph (CFG) representations of low-level prog...
research
10/15/2020

Abstract Congruence Criteria for Weak Bisimilarity

We introduce three general compositionality criteria over operational se...
research
04/02/2021

Fairness and Observed Communication Semantics for Session-Typed Languages

Observed communication semantics provide an intuitive notion of equivale...
research
07/05/2019

Operational Semantics of Games

We introduce operational semantics into games. And based on the operatio...
research
11/03/2020

Towards Conceptual Modeling Semantics: Eventizing Tarski's Truth Schema

Modeling languages in software engineering (e.g., UML) evolved from soft...
research
10/06/2016

Generating Simulations of Motion Events from Verbal Descriptions

In this paper, we describe a computational model for motion events in na...
research
01/26/2017

An Introduction to Classic DEVS

DEVS is a popular formalism for modelling complex dynamic systems using ...

Please sign up or login with your details

Forgot password? Click here to reset