Kódgenerálás UML-ből

Konzulens:
Suba Gergely
Tárgy:
Önálló laboratórium - Szoftverfejlesztés és rendszertervezés specializáció, BSc Info.
Önálló laboratórium - Irányítórendszerek ágazat, BSc Vill.
Önálló laboratórium 1 - Irányítórendszerek főspecializáció, MSc Vill.
Önálló laboratórium 2 - Irányítórendszerek főspecializáció, MSc Vill.
Önálló laboratórium 1 - Vizuális informatika főspecializáció, MSc Info.
Önálló laboratórium 2 - Vizuális informatika főspecializáció, MSc Info.
Önálló laboratórium 1 - Intelligens beágyazott mecha. rendsz. szakir., MSc Mecha.
Önálló laboratórium 1 - Egészségügyi mérnök, MSc Eü.
Önálló laboratórium 2 - Egészségügyi mérnök, MSc Eü.
Hallgatói létszám:
2
Folytatás:
Szakdolgozat / Diplomaterv
TDK dolgozat
Leírás:
Egyre nagyobb a kereslet a kódolási folyamatot egyszerűsítő és rövidítő fejlesztőeszközökre. Ezek segítségével a fejlesztőcégek munkaerőt vagy időt spórolhatnak, emellett a kódban rejlő hibák is csökkenthetőek. Szoftverfejlesztés területén az UML tekinthető elsőzámú modellezési nyelvnek. Előnye, hogy egy-egy diagram segítségével a program egyes aspektusait nagyon tömör és átlátható formában reprezentálhatjuk. Éppen ezért messzemenően előnyös lehet, ha a tervezési fázisban elkészült, jól átlátható modellből automatikusan tudunk kódot generálni. Ilyen eszközök a kereskedelemben már léteznek, hátrányuk azonban, hogy a testreszabhatóságuk korlátozott, ezen kívül nem vagy csak alig támogatnak különféle bemeneti formátumokat. 

A konkrét feladat:

Szoftver tervezése és implementálása, amely UML diagramból kódot generál, pl.

  • Class diagramból Java vagy C# vázak, C++ vagy C header fájlok, protokoll statikus leírások
  • State machine diagramból Java, C#, C++ vagy C állapotgép implementációk, protokoll dinamikus leírások
  • Activity diagramból Java, C#, C++ vagy C algoritmus leírások

Feltételek:

  • a szakirodalom tanulmányozásához szükséges szintű angol nyelvtudás
  • a C#, Java, Haskell programozási nyelvek valamelyikének ismerete
  • UML alapszintű ismerete

 

A téma továbbvihető BSc szakdolgozatként és MSc diplomatervként is.