Relational reference attribute grammars: Improving continuous model validation

Johannes Mey, René Schöne, Görel Hedin, Emma Söderberg, Thomas Kühn, Niklas Fors, Jesper Öqvist, Uwe Assmann

Research output: Contribution to journalArticlepeer-review

Abstract

Just like current software systems, conceptual models are characterised by increasing complexity and rate of change. Yet, these models only become useful if they can be continuously evaluated, validated and serialized. To achieve sufficiently low response times for large models, incremental analysis is required. Reference Attribute Grammars (RAGs) offer mechanisms to perform incremental analysis efficiently using dynamic dependency tracking. However, not all features used in conceptual modelling are directly available in RAGs. In particular, support for noncontainment model relations is only available through encodings. We present an approach called Relational RAGs to directly model uni- and bidirectional noncontainment relations in RAGs and provide efficient means for navigating and editing them. Furthermore, we discuss the efficient and inter-operable serialization and deserialization of such model instances. This approach is evaluated using a scalable benchmark for incremental model editing and the JastAdd RAG system. Our work demonstrates the suitability of RAGs for validating complex and continuously changing models of current software systems.
Original languageEnglish
JournalJournal of Computer Languages
Volume57
DOIs
Publication statusPublished - 2020 Apr 1

Subject classification (UKÄ)

  • Computer Sciences

Free keywords

  • Incremental model evaluation
  • Bidirectional relations
  • Reference attribute grammars

Fingerprint

Dive into the research topics of 'Relational reference attribute grammars: Improving continuous model validation'. Together they form a unique fingerprint.

Cite this