Automatikus kiértékelő rendszer programozás tantárgyakhoz

A programozási házi feladatokra beadott megoldásokat kétféleképpen lehet vizsgálni: helyességre és jóságra. A helyes program (megfelelő kimenetet ad) nem biztos, hogy jó is (gyors, karbantartható, áttekinthető). A helyesség vizsgálata automatizálható, és nagy segítség lehet mind a hallgatók, mind az oktatók számára. A hallgatók a helytelenül működő programra hamar kaphatnak visszajelzést, az oktatók pedig a jóság vizsgálatára koncentrálhatnak.

Az automatikus tesztelés azonban biztonsági kérdéseket vet föl. Nem csak a feltöltött programok futtatása, de már a lefordításuk is kockázatos lehet – gondolva itt egy hatalmas számításigényű C++ sablon metaprogram fordítására, vagy a fordító hibáit kihasználni megpróbáló, szándékosan hibás feltöltésekre.

A feladat egy automatikus kiértékelő rendszer biztonsági problémáinak vizsgálata, és egy prototípus elkészítése.

A jelentkezővel szembeni elvárások: alapvető Linux felhasználói, illetve programozási ismeretek.