Struktúra alapú tesztkészletek vizuális elemzése
Szoftverfejlesztésben és rendszertervezésben számos tesztelési és teljesítménymérési megközelítés épít gráf-alapú modellek szisztematikus generálására. Például gráffeldolgozó rendszerek helyességének tanúsítványozásához nagy számú diverz modellre, mesterséges intelligencia komponensek teszteléséhez pedig realisztikus tesztesetet kell előállítani. Gráfgenerálás során a tervezőmérnök deklaratívan fogalmazza meg a modellek elvárt strukturális tulajdonságait (például logikai jólfortmáltsági feltételeket, elvárt statisztika eloszlásokat), és ezen specifikáció alapján automatikusan generálhatóvá válnak a modellek.
A gráfgenerálás nehéz feladat, ugyanis a tervezőmérnök logikai kényszereket ad meg amelyek hiba esetén könnyen ellentmondhatnak egymásnak. Továbbá jelenleg nem áll a mérnökök rendelkezésre olyan módszer, amely segítené a hibakeresését, a generálási folyamat nyomonkövetését, valamint a generált gráfok eloszlását statisztikai elemzését. Ezáltal nem tudják ellenőrizni hasznosak-e tesztelésre, vagy sem. Végül ezen gráfgenerátor eszközök telepítése és működtetése komoly műszaki kihívást is jelent, mivel ezek bonyolult logikai és numerikus következtető alkalmazásokra épülnek.
A dolgozatom célja, hogy egy publikusan elérhető, egyszerűen használható, böngészőben futó vizualizációs eszköz jöjjön létre, amely mind szerverről, mind lokálisan kapott információkat képes legyen feldolgozni, a statisztikai adatokat megjeleníteni. Ugyanakkor a legfontosabb funckiója az lenne, hogy a generálás bonyolult folyamatába lényegében egy hibakeresési módot adjon.
Dolgozatomban egy olyan eszközt mutatok be, amely képes nagyméretű gráfokat vizualizálni, és különböző metrikákkal elemezni. Eszközöm a korszerű D3.js technológiára épít, így még több ezres elemű gráfokra is gyors vizualizálást biztosít, valamint különböző gráfmetrikák számításával is elemzem a vizsgált gráfmetrikák eloszlását. Továbbá az általam készített eszköz segítséget nyújt a specifikációban lévő lehetséges ellenmondások felfedésére azáltal, hogy lehetővé teszem a generálási lépéseket visszajátszását.
Az általam készített alkalmazás egy könnyen kezelhető felhasználói felületet biztosít a Viatra Solver gráfgenerátorhoz, amely így bonyolult telepítési lépések nélkül is használhatóvá válik, valamint nagyban könnyíti a gráfgenerális feladatokban a hibakeresést. Mivel az eszköz online elérhető, böngészőben fut, így használata gyors és könnyű, nem szükséges a tervezőmérnöknek különböző logikai megoldókat telepítenie.