Párhuzamos program unit-tesztelése MSTest2 keretrendszerben

2018-2019 ősz

Szoftver

Téma leírása

A számítógépek teljesítményének növelésére a processzor gyártók egyre több magot integrálnak a processzorokba, amelyet hatékonyan erre a célra fejlesztett párhuzamos algoritmusok tudnak kihasználni. Az algoritmusok, adatstruktúrák ellenőrzésére használt módszerek (pl. unit tesztek) azonban párhuzamos esetben nem, vagy kevéssé használhatóak. A párhuzamos viselkedés szimulálása alapvetően nem triviális, és egy sikeres teszt nem jelenti azt, hogy más időzítéssel nem léphet fel konkurencia hiba.

A feladat a problémakör megértése után olyan módszerek keresése és kidolgozása, amelyek a problémát kezelni tudják. Például az IBM ConTest terméke (https://www.research.ibm.com/haifa/projects/verification/contest/) kifejezetten olyan időzítés előállítására törekszik a tesztelés során, amely a konkurencia és szinkronziációs hibákat előhozza.

Az elérendő cél a problématerület megértése mellett az MSTest2 keretrendszer kiegészítése oly módon, hogy unit teszt formájában tudjon párhuzamos algoritmusokat tesztelni.


téma továbbvihető szakdolgozatnak/diplomatémának. Feladatválasztástól függően a téma alkalmas lehet komolyabb, több féléves munkához, és akár TDK dolgozatot is lehet írni a témából. (Ez nem elrettentés, csak lehetőség, ha érdekel.)

A sikeres önálló labor, szakdolgozat, diplomaterv félévhez szükséges a hallgató és a konzulens együttműködése. Az elvárásokról és az elvégzett munka értékeléséről a https://www.aut.bme.hu/Course/VIAUAL01 tárgyi oldalon található dokumentumok az irányadóak, érdemes áttanulmányozni a jelentkezés előtt.

Feltételek

  • programozási készség
  • párhuzamos programozási alapismeretek
  • C# nyelv ismerete

Maximális létszám: 1 fő