Model-based development tools in Eclipse environment

OData support
Kövesdán Gábor
Department of Automation and Applied Informatics

The model-driven engineering provides tools, that make the implementation process faster and more effective. The main feature of this software development methodology is that, we create models representing the problems and we use those models for the implementation. Based on the models we can generate source code. To determine the structure of our models, we can create Domain Specific Languages (DSL). These languages can be used in a certain application domain to describe the solution of a problem in that domain. With the tools that support model-driven engineering a code generator application was developed in the Eclipse environment. This application uses a model that is created based on a text, written in a specific DSL to generate the source code. The problems, that the generator program needs to solve are the following. Firstly, generate the source code of a Windows Forms application, that can strore data of entities in a database, displays the data for the user, provides methods for updating and deleting data. Secondly, the program’s user interface should have different type of input fields that can be used to provide entity data. Finally the program should validate the data that the user provided, and if the data is not valid the program should display an error message. All in all, with the development of this application we want to give fast, automated solutions for these common problems: implement the four basic database handling functions, creation of a user interface, validation and error handling. The code generator program can generate the source code that implements the requirements mentioned above, in case of every entity. In one case we saw, that the generated application code was 28% less than the code generator program code. However after the generation of a second application we could generate 31% more code than we wrote, therefore after only two application code generations, we can say it was worth investing resources into the code generator.


Please sign in to download the files of this thesis.