The computing devices use communication protocols to exchange information – thanks to this webpages can be loaded and applications started. Communication protocols are used in the field of railway control engineering too when exchanging data between different devices. One of Prolan Zrt.’s projects is designing and implementing railway control systems and during this they need to use properly a great ammount of communication protocols.
Nowadays the model based software engineering is gaining popularity. In the field of software engineering the most well-known and prominent modeling language is UML (Unified Modeling Language). It helps specifying, visualizing, and documenting models of software systems.
It seems both logical, profitable and advantageous to use UML during designing the models used by Prolan Zrt.’s communication protocols. However, the fact that UML is a general-purpose language may limit its suitablitiy for modeling some particular specific domains, for which specialized languages and tools may be more appropriate. The standard has an option for specializing some elements of UML, imposing new restrictions on them – it is called UML profiling. One of my tasks was to design and implement an UML profile for Prolan Zrt.’s communication protocols.
We can use models even to generate codes. By this we can shorten the coding process and even reduce the possibility of errors and failures.
During my thesis I got familiar with some modeling softwares and took part in the development of a codegenerator, during this I used EMF and Java Xtend, furthermore I made a plugin for the MagicDraw modeling software which can generate code.