Abstract
Live modeling enables modelers to incrementally update models as they are running and get immediate feedback about the impact of their changes. Changes introduced in a model may trigger inconsistencies between the model and its run-time state (e.g., deleting the current state in a statemachine); effectively requiring to migrate the run-time state to comply with the updated model. In this paper, we introduce an approach that enables to automatically migrate such runtime state based on declarative constraints defined by the language designer. We illustrate the approach using Nextep, a meta-modeling language for defining invariants and migration constraints on run-time state models. When a model changes, Nextep employs model finding techniques, backed by a solver, to automatically infer a new run-time model that satisfies the declared constraints. We apply Nextep to define migration strategies for two DSLs, and report on its expressiveness and performance.
Original language | English |
---|---|
Title of host publication | SLE 2018 - Proceedings of the 11th ACM SIGPLAN International Conference on Soft ware Language Engineering, co-located with SPLASH 2018 |
Editors | David Pearce, Steimann Friedrich, Tanja Mayerhofer |
Place of Publication | New York |
Publisher | Association for Computing Machinery, Inc |
Pages | 108-120 |
Number of pages | 13 |
ISBN (Electronic) | 9781450360296 |
DOIs | |
Publication status | Published - 24 Oct 2018 |
Event | 11th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2018, part of SPLASH 2018 - Boston, United States Duration: 5 Nov 2018 → 6 Nov 2018 |
Conference
Conference | 11th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2018, part of SPLASH 2018 |
---|---|
Country/Territory | United States |
City | Boston |
Period | 5/11/18 → 6/11/18 |
Keywords
- DSL
- Live modeling
- Relational model finding
- Run-time state migration