szschaler / henshin_xdsmls

Henshin based xDSMLs in GEMOC

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Henshin based xDSMLs for GEMOC Studio

This repository contains a concurrent execution engine that implements support for operational semantics defined in graph-transformation systems (GTSs) specified in Henshin. Details of the approach can be found in the publication listed at the end.

Installation

  1. Install the nightly build of GEMOC Studio
  2. Run GEMOC Studio and install Henshin following their normal installation procedure
  3. Clone this repository and import all projects into your GEMOC Studio
  4. Clone one of the example repositories (banking, production line system) and import all projects except the .design, .henshin, and the .example projects.
  5. Run a runtime instance of GEMOC Studio -> Go to Debug or Run Configurations: Eclipse Application: New_configuration. Make sure it's a new workspace. You may have to set a non-default working directory on the Arguments tab.
  6. In the second instance of GEMOC Studio import the .design, .henshin, and the .example projects from the example project. Inspect them and follow the instructions in the example project readme to run the debugger.

Features

Annotating any LHS node with Target will make the match of that node the target of the rule application for purposes of the GEMOC debugger. This will make for better representation in the GEMOC stack trace. Only LHS nodes and no multi-nodes can be annotated at this point. Not annotating any node with Target may mean that Sirius diagrams do not update when stepping through a DSML model in the debugger.

The engine integrates with GEMOC's concurrency strategies framework allowing filtering and exploration of the concurrency model dynamically throughout a debug session. A paper is under preparation and a video demo can be found here:

image

Publications

  1. Zschaler, S. Adding a HenshinEngine to GEMOC Studio: An experience report. GEMOC Workshop 2018. pdf slides
  2. Zschaler, S., Bousse, E., Deantoni, J. et al. A generic framework for representing and analyzing model concurrency. Softw Syst Model 22, 1319–1340 (2023). https://doi.org/10.1007/s10270-022-01073-2

About

Henshin based xDSMLs in GEMOC

License:Eclipse Public License 2.0


Languages

Language:Xtend 95.1%Language:Java 4.9%