The Design and Implementation of a Graph Rewrite Engine for Model Transformations

Loading...
Thumbnail Image

URL

Journal Title

Journal ISSN

Volume Title

Helsinki University of Technology | Master's thesis
Checking the digitized thesis and permission for publishing
Instructions for the author
Location:
P1 Ark Aalto

Date

Major/Subject

Mcode

T-106

Degree programme

Language

en

Pages

12 s. + 88 s.

Series

Abstract

Mallitransformaatiota käytetään useilla sovellusalueilla, kuten ohjelmasynteesissä, refaktoroinnissa ja aukikoodauksessa. Mallitransformaatio on kuvaus lähdemallista kohdemalliin, missä kuvaus määrittää lähde- ja kohdemallien elementtien vastaavuudet. Matemaattisina oliona mallit ovat graafeja, hypergraafeja tai relaatioita, riippumatta formalismista, joilla ne on kuvattu. Täten mallitransformaatio mallien välillä voidaan kuvata graafiuudelleenkirjoituksella (tai hypergraafi- tai relaatiouudelleenkirjoituksella). Graafiuudelleenkirjoitus tarjoaa täsmällisen tavan, jolla transformaatio kuvataan, missä aligraafit korvataan toisilla aligraafeilla uudelleenkirjoitussääntöjen määrittämällä tavalla. Tässä diplomityössä esitellään graafiuudelleenkirjoitusta soveltavan mallitransformaatiosovelluksen suunnittelu ja toteuttaminen. Ohjelmisto on nimeltään CGRK, ja se pohjautuu formaaliin matemaattiseen taustaan, joka esitellään työssä. CGRK käyttää hyväksi metatasonkehystä, jossa lähde- ja kohdemallit ovat metamallin instansseja. Transformaatioprosessi käsittää sekä metamallien että lähdemallin lataamisen oliotietokantaan, jossa mallit kuvataan graafeina. Varsinainen graafitransformaatio tapahtuu soveltamalla useita perättäisiä uudelleenkirjoitusoperaatioita graafiin. Yksittäinen muutos mallinnetaan graafiuudelleenkirjoitussäännöillä, jotka ovat kuvauksia siitä, miten lähdemallin konstruktiot uudelleenkirjoitetaan kohdemallin konstruktioiksi. Mallitransformaation kannalta työkalu on sekä endo- että eksogeeninen j a se tukee niin horisontaalia kun vertikaaliakin transformaatiota. Vastaavasti graafiuudelleenkirjoituksen kannalta työkalu voidaan katsoa olevan kaksin- ja yksinkertaisen poistotyöntölähtökohtien hybridi. Työssä keskustellaan mallitransformaation ja graafiuudelleenkirjoituksen keskeisistä ominaisuuksista.

Description

Supervisor

Tarhio, Jorma

Thesis advisor

Huima, Antti

Other note

Citation