Enhancement of e-learning systems with the support of machine learning methods

Az előző félévekben elvégzett munkámra alapozva folytattam tovább a kialakulóban lévő e-learning platform fejlesztését. A munka egy részét a szakmai gyakorlatom keretében végeztem, ugyanis akkor is ezen a projekten dolgoztam. Ezt követően pedig a szakdolgozatom írása mellett és annak keretében folyattam a munkát a projekten. Az architektúra nem változott, a részleteinek megvalósításán dolgoztam. Rengeteg megtervezett részét és funkcióját hoztam létre, amiket a következőkben részletezek. Ahhoz, hogy az esetleges hibákat könnyebben tudjam kezelni, logger-t adtam hozzá az auth service-hez. Megfelelő helyen meghívva a logger-t a hibákat és fontos eseményeket kinaplózz egy fájlba. Amit kiíratok egy eseménykor, az az adott idő, naplózási szint (például, hogy hiba, figyelmeztető, vagy csak informáló esemény történt), hibakód, üzenet és végül a service és fájl neve, ahol az esemény történt. Abban az esetben, ha egy helyen kivétel, azaz normál működést azonnal megszakító hiba történne és az le van kezelve (azaz nem váratlan), akkor részletes leírást is ír az előbbiek felsorolt mellett, hogy miért történt a kivétel. Még mivel eddig csak a felhasználói adatokkal voltak műveletek így csak annak volt meg a táblája a MySQL adatbázisban. Létrehoztam még a szükséges másik kettő táblát is. Ez egyik ugye roles tábla, amiben egy-egy számhoz van hozzárendelve egy-egy hozzáférési szerepkör neve. Ebből jelenleg négy van: owner, editor, student_plus és student, azaz a kurzus tulajdonosa, szerkesztő, diák és diák plusz. Létrehoztam még a mongodb-ben az kurzusok tárolásához szükséges adatbázist is. Ehhez Mongo Atlast használtam, a Mongo felhőalapú adatbázis szolgáltatását, ami ingyenes opciót is kínál. Emellett Mongo Compass-t is telepítettem, ami egy grafikus felületet kínáló alkalmazás MongoDB-hez. Először egy kezdetleges sémával hoztam létre pár kurzust, minta adatokkal, majd folyamatosan változott az adatok formája a fejlesztés folyamán ahogy a hozzákapcsolódó műveletek létrejöttek és változtattam a kezdeti sémán. A továbbiakban számos kurzus és tartalmaikon végzett műveletet implementáltam: kurzus: létrehozása, törlése, tulajdonságok módosítása, kurzuslista lekérése; tartalom: létrehozása, lekérése, törlése, módosítása, kurzus teljes tartalmának lekérése. További fejlesztésként az összes service-to-service http kommunkációt változtatnám meg websocket kommunikációra és hosszabb távú tervként pedig az szeretném, hogy a platformra mesterséges intelligencia bevezetésére kerüljön sor.

Mészáros László

2024-01-14

Támogató: Exadel Hungary