Online oktató platform modernizálása hipermédia alapokon

OData támogatás
Konzulens:
Dr. Forstner Bertalan
Automatizálási és Alkalmazott Informatikai Tanszék

Az Avatao egy magyar informatikai cég, melynek a terméke egy online platform, amin keresztül szoftverfejlesztők szerezhetnek gyakorlatias tudást az IT biztonság témakörében. A szakdolgozatom témájaként az Avatao platform frontend oldali modernizálását választottam, és egy generikus, kliens oldali könyvtár létrehozását a Collection+JSON hipermédia típushoz, Angular implementációval karöltve. Munkám során olyan szoftver létrehozását célzom meg, ami könnyen érthető, fenntartható és kiegészíthető. Modern technológiákat és keretrendszereket használva csökkenthető a biztonsági problémák kockázata, valamint gyorsítható a fejlesztési folyamat. A szoftver előző verziója nehezíti a fejlesztést és sok inkonzisztenciát tartalmaz, mert prototipizáló stílusban lett írva. AngularJS keretrendszert használta, aminek voltak architekturális hiányosságai, és ez könnyűvé tette az ellentmondásos kód írását.

A leírt problémák megoldására, újraírtam a frontendet a legújabb Angular verzióval. Ezzel újra tudtam tervezni minden egyes komponenst, felhasználva a Clean Code elveit, valamint be tudtam vezetni modern tervezési mintákat. Már volt tapasztalatom a régi rendszerrel, amit felhasználva egy jobb szoftvert hoztam létre. A backend API Collection+JSON adatstruktúrát használ, ezért készítettem egy nyílt forráskódú könyvtárat, ami segíti az ilyen típusú adatok kezelését. A fejlesztési folyamatot is újra kellett tervezni, elkezdtem használni a Yarn csomagkezelőt, TSLint statikus kód analizátort és az Angular-CLI programot a frontend alkalmazás fordítására.

Az új frontend gyorsította a fejlesztési folyamatokat azáltal, hogy a monoton manuális munkát megszüntette és segített, hogy a csapat agilisabb legyen, hiszen a változások kevesebb időt és erőforrást igényeltek. A váltás Javascript nyelvről a TypeScript nyelvre csökkentette a hibakeresések idejét. Az automatizált gyorsítótár töröltetés és kód stílus ellenőrzés csökkentette a hibák valószínűségét.

Letölthető fájlok

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