Modellfeldolgozók tesztvezérelt verifikálása

OData támogatás
Konzulens:
Dr. Lengyel László
Automatizálási és Alkalmazott Informatikai Tanszék

A szoftverfejlesztés során a felmerülő költségek csökkentése mellett cél a szoftvertermékek minőségének növelése, a hatékony fejlesztési folyamatok kialakítása és alkalmazása. Ennek kézenfekvő módszere a fejlesztés közben felmerülő hibák lehető legkorábban történő azonosítása és javítása.

A hibák korai azonosítását többek között a szoftverprojekt tesztelése segíti. A tesztelés célja annak vizsgálata, hogy a szoftver megfelel-e a kitűzött követelményeknek, valamint annak, hogy az előírt követelmények valóban az adott problémára vonatkoznak, azaz a szoftverterméket verifikálni és validálni kell.

Maga a modelltranszformáció is egy szoftvertermék, amelyet fejlesztünk, validálunk és verifikálunk a használatbavétele előtt. A modelltranszformációk kiemelt használati területe a kódgenerálás: modellt készítünk az adott szakterületen előforduló problémáról, majd a modellt felhasználva forráskódot -- ami szintén egy modell -- generálhatunk. A modellek elkészítését követően olyan forráskódot generálunk, ami valamilyen általános felhasználású programozási nyelven fogalmazza meg és dolgozza fel az adott problémát. Egy jól átgondolt és megfelelően implementált, forráskódot előállító modelltranszformációs motor számottevően javítja a kívánt szoftvertermék minőségét, hiszen már tesztelt, szakemberek által felülvizsgált komponensekből építkezik, ezért hatékony eszköz minőségi termékek fejlesztésére.

Ahogy a szoftverprojektek során, úgy a modelltranszformációk esetén is előfordulhatnak tervezési és implementációs hibák. Mivel a modelltranszformációk leírása során is szükség van az adott szakterület ismeretére, így ezek tesztelése sem automatizálható teljes mértékben.

Jelen dolgozat olyan tesztelést segítő algoritmusokat és módszert mutat be, amelyek könnyebbé teszik modelltranszformációk tesztelését a szakterület ismerőinek. Az algoritmusok bemeneti modelleket generálnak egy adott modelltranszformációhoz. A modelltranszformáció szabályait végrehajtva ezeken az automatikusan generált bemeneti modelleken kimeneti modelleket kapunk. Az így generált kimeneti modelleket összevetve a bemeneti modellekkel megállapíthatjuk, hogy a modelltranszformáció megfelel-e az előírt követelményeknek. A bemutatott algoritmusok a tesztelést részben automatizálva segítik a szakterület ismerőinek munkáját.

Letölthető fájlok

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