by Michał Antkiewicz, Mar 21, 2017
Behavioral Clafer was finally
merged into develop, which means it will be part of the next release: 0.5.0.
That is a huge step for Clafer because it adds capability of modeling how the structures evolve over time. In that context, all possible instances of a static Clafer model can be considered as all possible snapshots (statespace) of a dynamic model. Also, the constraints in a static model can be considered as global invariants in a dynamic model.
The
Clafer Model Wiki and the Clafer Tools (
Visualizer,
Configurator, and
IDE) have been updated to use the 0.5.0 version; however, there is currently no reasoning support for the behavioral constructs. The models can only be compiled, desugared, and rendered to HTML.
We added two example models to showcase the behavioural modeling style:
- Simplified Web Socket Protocol - a simple model showcasing state modeling, trace specification, and the intended traces.
- Power Window - a complex model showcasing modeling structure and behaviour with variability: feature modeling, component modeling, statemachine modeling, variability in behaviour using alphabet variability, inheritance, and strategy pattern, and (safety) properties.