Defining Models - Meta Models versus Graph Grammars

Authors

  • Berthold Hoffmann
  • Mark Minas

DOI:

https://doi.org/10.14279/tuj.eceasst.29.411

Abstract

The precise specification of software models is a major concern in model-driven design of object-oriented software. Metamodelling and graph grammars are apparent choices for such specifications. Metamodelling has several advantages: it is easy to use, and provides procedures that check automatically whether a model is valid or not. However, it is less suited for proving properties of models, or for generating large sets of example models. Graph grammars, in contrast, offer a natural procedure - the derivation process - for generating example models, and they support proofs because they define a graph language inductively. However, not all graph grammars that allow to specify practically relevant models are easily parseable. In this paper, we propose contextual star grammars as a graph grammar approach that allows for simple parsing and that is powerful enough for specifying non-trivial software models. This is demonstrated by defining program graphs, a language-independent model of object-oriented programs, with a focus on shape (static structure) rather than behavior.

Downloads

Published

2010-07-22

How to Cite

[1]
B. Hoffmann and M. Minas, “Defining Models - Meta Models versus Graph Grammars”, eceasst, vol. 29, Jul. 2010.