Sequentially Constructive Statecharts (SCCharts)
SCCharts [1] is a visual synchronous language that is designed for specifying safety-critical reactive systems. SCCharts uses a new statechart notation similar to Harel Statecharts [3] and provides deterministic concurrency based on a synchronous model of computation (MoC), without restrictions common to previous synchronous MoCs like the Esterel constructive semantics [2]. Specifically, we lift earlier limitations on sequential accesses to shared variables, by leveraging the sequentially constructive MoC [4]. Thus SCCharts in short are SyncCharts [5] syntax plus Sequentially Constructive semantics.
The key features of SCCharts are defined by a very small set of elements, the Core SCCharts, consisting of state machines plus fork/join concurrency.
Conversely, Extended SCCharts contain a rich set of advanced features, such as different abort types, signals, history transitions, etc., all of which can be reduced via semantics preserving model-to-model (M2M) transformations into Core SCCharts. Extended SCCharts features are syntactic sugar because they can be expressed by a combination of Core SCCharts features.
On the one hand this eases the compilation and makes it more robust because it reduces its complexity. On the other hand, using Extended SCCharts features, a modeler is able to abstract away complexity of his or her SCCharts model which increases robustness and readability of a model. This approach enables a simple yet efficient compilation strategy and aids verification and certification.
Documentation
- Quick Start Guide
- What's New in Version 1.0?
- Syntax
- Examples
- Converting Legacy Models (sct)
- For Developers
- LEGO Mindstorms - leJOS and SCCharts
- Simulation Visualization (KViz)
- Previous Versions (Deprecated Documentation)
- Environment Visualization (KEV)
- Execution Manager (KIEM)
- Interactive Timing Analysis
- Kieler Compiler
- Leveraging Ptolemy Semantics (KlePto)
- Project Creation, Initialization and Launch (Prom)
- Project Management (Prom)
- SCCharts (pre 1.0)
- Simulation Visualization (KiVis)
- SyncCharts
- The SC Language (SCL)
- Transformation Mapping (KTM)
Downloads
The KIELER SCCharts Product includes the SCCharts editor and compiler.
Release 1.2.0
KIELER SCCharts Product v. 1.2.0 (2021-07-05, based on Eclipse 2021-06). Available platforms:
Nightly Builds
KIELER App on Mac OS
After downloading KIELER, Mac OS quarantines the application and, for some reason, considers the app broken and wants you to move it into the Trash.
Hence, if you want to use KIELER on your Mac, you have to remove the quarantine flag manually. You can use the following command:
xattr -rc com.apple.quarantine ./Kieler.app
or
xattr -rd com.apple.quarantine ./Kieler.app
depending on the Mac OS version