Legacy kód transzformálása Java programozási nyelvre (TDK lehetőséggel)

2016-2017 tavasz

Téma leírása

Az elavult szoftverek modern környezetbe történő átültetése mindig bonyolult feladat. Sok ilyen szoftver még mindig használatban van, és a lecserélésük nehéz. Ezeket a szoftvereket úgy kívánatos modern környezetbe átültetni, hogy a korszerű szoftvertervezési konvenciókat kövessék, tehát jól olvasható és karbantartható kódjuk legyen, és a kompatibilitást is teljesen megőrizzék. A rendelkezésre állási követelmények miatt általában nem igen lehet az eredeti rendszert leállítani, és az új verziót éles környezetben tesztelni. Ezeket a nehézségeket könnyíthetné meg egy transzformátor alkalmazás, amellyel a kódot le lehetne képezni hasonló struktúrájú Java kódra, ez pedig kézi refaktorálási lépésekkel könnyebben javítható lenne. A hallgató feladata, hogy C nyelvű kódot feldolgozzon, abból programozásinyelv-független modellt építsen, majd a modellt bejárva Java kódot generáljon. Első lépésben csak az alapvető nyelvi elemeket kell támogatni. Később a könyvtári hívásokat a kódgenerálás előtt modelltranszformációval módosítani kell, hogy a célnyelvnek megfelelő hívást használják. (Pl. printf() helyett System.out.printf().)

A feladat lehetőséget ad a modellezés aktuális kutatási területeivel való megismerkedésre. A téma továbbvihető későbbi félévekre, és TDK dolgozat készítésére is ad lehetőséget. Nem követelmény a modellezési fogalmak alapos ismerete, a Szoftvertechnikák tárgy anyaga tartalmazza a szükséges ismereteket.

Miért válassz kutatási jellegű feladatot? Az egyetemi képzés teljesítése mindenképpen versenyképes tudással lát el, akkor is sikeres leszel a szakmában, ha önálló labor, szakdolgozat vagy diplomaterv munkádként kifejlesztesz egy kétszázötvenhatodik háromrétegű webalkalmazást, mert megismerkedsz az iparban használt technológiákkal, és utána egy cégnél majd jó pénzért kifejlesztheted a kétszázötvenhetedik háromrétegű webalkalmazást. Azonban van egy másik út is. Amíg az egyetemen vagy, lehetőséged van arra, hogy könnyen megismerkedj olyan technológiákkal és módszerekkel is, amelyek jelenleg még nem annyira számítanak trendnek, vagy nem terjedtek el olyan széles körben. El tudsz mélyedni egy sokkal különlegesebb területen, amelyet nem mindenki ismer. Ebben kipróbálhatod saját ötleteidet, saját kreativitásod. A könyvek és tutorialok monoton olvasgatása helyett valami újat alkothatsz. Ez később kiemel téged a többi, "átlagos" hallgató közül, versenyelőnyre teszel szert a társaiddal szemben. Továbbá lehetőséged nyílik arra is, hogy TDK dolgozatot, vagy akár tudományos konferenciákra vagy folyóiratokba cikket írj. Attól függően, hogy mikor kapcsolódsz be egy kutatási témába, a BSc önálló labortól kezdve akár három évig is dolgozhatsz egy területen, és ez alatt az idő alatt az adott témának a szakértőjévé válhatsz. Ez később akár PhD képzés keretében vihető tovább, amelyhez a TDK munkák és egyéb publikációk plusz pontot jelentenek.

Feltételek

  • Java, angol

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