SELOMSJan 1, 2013

Formal Model-Driven Engineering: Generating Data and Behavioural Components

arXiv:1301.0044v13 citations
Originality Synthesis-oriented
AI Analysis

This work addresses the challenge of correctness in automated software development for domain-specific systems, though it is incremental as it builds on existing formal techniques.

The paper tackled the problem of ensuring correctness in model-driven engineering by using formal techniques to verify that model transformations for generating software components from object models are semantics-preserving, with the target language being SQL for database programming.

Model-driven engineering is the automatic production of software artefacts from abstract models of structure and functionality. By targeting a specific class of system, it is possible to automate aspects of the development process, using model transformations and code generators that encode domain knowledge and implementation strategies. Using this approach, questions of correctness for a complex, software system may be answered through analysis of abstract models of lower complexity, under the assumption that the transformations and generators employed are themselves correct. This paper shows how formal techniques can be used to establish the correctness of model transformations used in the generation of software components from precise object models. The source language is based upon existing, formal techniques; the target language is the widely-used SQL notation for database programming. Correctness is established by giving comparable, relational semantics to both languages, and checking that the transformations are semantics-preserving.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes