Development of a model-based code generator for communication protocol handlers

OData support
Suba Gergely
Department of Control Engineering and Information Technology

During the development of railway automation devices usually there is a need for the implementation of several communication protocols in order to allow a secure data transmission between two devices that are made by different producers and may be different types. The Prolan Zrt. Railway Business is working on the development of a safety signal transmitter, that is called ProSigma. During the process, some self-developed protocols and their handling is being implemented in different programming languages.

Nowadays, the significance of model-driven approaches is rapidly increasing in industrial development. A suitable model is not only suggestive, but it also contains all the information that are necessary for the code generation. Thus, the idea of model based code generation presents itself. With its help, time and effort can be spared, not to mention that the number of bugs can be reduced. Generation is capable of accelerating the development of prototypes and can support by testing.

The aim of my thesis is to construct, based on a previously made project, a defining method for the dynamic behavior of the communication protocols and a code generator component based on this method. During my work I defined a way to model state machines and message handling Processes. Besides, I created a domain-specific model and I also designed and implemented a software component to generate Java source code. Finally, I tested it in practice on a handshake protocol used by Prolan.

During modelling I used SysML and UML Profiling to create a Domain Specific Language. The internal structure of code generator has been written in EMF and the generator in Java Xtend.


Please sign in to download the files of this thesis.