Automatikus absztrakció a modellvezérelt fejlesztésben

OData támogatás
Konzulens:
Dr. Horváth Ákos
Méréstechnika és Információs Rendszerek Tanszék

A mérnöki megközelítés egyik legalapvetőbb eszköze a modellalkotás, melynek célja a feladat komplexitásának csökkentése, az átláthatóság növelése, vagy éppen a megoldás megtervezésének elősegítése. A szoftverfejlesztésben is ezen alapul a modellvezérelt fejlesztési paradigma, ami lehetővé teszi precíz modellekből, pontosan definiált absztrakciós vagy finomítási lépéseken keresztül az alkalmazás kódjának, dokumentációjának vagy konfigurációs leíróinak automatikus generálását.

A modellvezérelt fejlesztésben (MDE) a részletes (forrás) rendszermodellekhez gyakorta szükséges különböző nézeti modelleket létrehozni (pl.: megbízhatósági modell, hardver architektúra stb), amelyek kizárólag az adott nézőpont szempontjából releváns információkat tartalmazzák. Ezt a nézőpont alkotást nevezhetjük modell absztrakciónak (model abstraction). A forrás modellek és nézeti modellek közötti szinkronizáció megvalósítására jellemzően egyszeri futású (batch) transzformációkat használnak. Ez azonban nem inkrementális megoldás, hiszen bármilyen változás esetén a transzformációt újra le kell futtatni, és a semmiből kell felépíteni az egész nézeti modellt.

A széles körben alkalmazott származtatott értékek lehetőséget adnak olyan speciális attribútumok, referenciák definiálására, melyek más modellbeli elemekből automatikusan kiértékelhetőek. Pillanatnyi értékük nem transzparens módon számolódik minden egyes lekérdezéskor, hanem konkrét értékként léteznek a modellben, és csak a szükséges módsítások esetén frissül.

Diplomamunkám keretében egy olyan keretrendszert hoztam létre, mely képes lekérdezések által definiált származtatási szabályokon keresztül absztrakt nézeti modelleket inkrementálisan szinkronban tartani. Az így létrejött modellekben a származtatott értékek kiterjesztéseként olyan származtatott objektumok materializálódnak, melyek életciklusa szorosan összekapcsolódik a forrásmodellel. Mivel a nézetek teljes értékű modellként viselkednek, így akár bemenetként szolgálhatnak bármilyen más modellekkel kapcsolatos operációknak is. Az elkészült rendszert sikeresen integráltam az EMF-IncQuery inkrementális gráfminta illesztő technológia Viewers vizualizációs rétegébe is.

A keretrendszer az iparban de facto szabványnak számító Eclipse Modeling Framework-re (EMF) épül, a lekérdezéseket deklaratív gráf mintákkal definiálhatjuk, amelyek végrehajtásához az EMF-IncQuery technológiát használtam fel és bővítettem ki. Az elkészült rendszer használhatóságát egy releváns repülőgépipari kutatási projekt keretében értékeltem ki.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.