University of Twente Student Theses
Action semantics applied to model driven engineering
Stuurman, Gijs (2010) Action semantics applied to model driven engineering.
PDF
786kB |
Abstract: | Model Driven Engineering (MDE) is a software engineering approach using a high level of abstraction to model software systems. These models drive the development activities. The power of such models is that they are technology independent and are often expressed in Domain Specific Languages (DSL). The practice of MDE is to create a modeling language or metamodel in which to express models. A language requires a formal definition of its semantics. For modeling languages there are various approaches to specify the static semantics. However, there is no standard approach to specify the dynamic semantics, which specifies the execution behavior of models. Action semantics (AS) is a framework for the formal description of programming languages. Peter Mosses developed action semantics as a new formalism that would improve the shortcomings of denotational and structural operational semantics. AS aims to be both precise and pragmatic. A semantic framework needs to be precise by being unambiguous, complete and consistent. Its pragmatic aim is to aid the language creator by using a human readable, English-like syntax and including first class constructs to model common computational concepts such as control flow, bindings and storage. In this work, action semantics is adapted from its origin in programming languages to modeling languages. Whereas programming languages use grammars and abstract syntax trees, modeling languages use metamodels and models, which may contain cycles. This difference is the biggest challenge that has been resolved. This work provides action semantics as a semantic framework for modeling languages. This is done by modeling action semantics for MDE as a modeling language itself with the action semantics metamodel. Tool support consists of a compiler which compiles a model to an action tree that defines the semantics of a model. A simulator is also provided that can run action trees, either with a GUI or on the command line. This simulator allows the semantic description of a modeling language to be used for prototyping. Action semantics for MDE has been successfully used to specify the execution behavior of two modeling languages. |
Item Type: | Essay (Master) |
Faculty: | EEMCS: Electrical Engineering, Mathematics and Computer Science |
Subject: | 54 computer science |
Programme: | Computer Science MSc (60300) |
Link to this item: | https://purl.utwente.nl/essays/59727 |
Export this item as: | BibTeX EndNote HTML Citation Reference Manager |
Repository Staff Only: item control page