Domain-specific modelling language and code generator for developing repository-based Eclipse plug-ins: Master's thesis

Sanna Sivonen

Research output: Book/ReportBook (author)Scientificpeer-review


Eclipse is an open source platform for tool integration which can be extended by writing plug-ins that utilise the extension points provided by the Eclipse platform. Eclipse plug-ins are written in the Java language and the plug-in development work can be time consuming especially if multiple plug-ins are developed for the same application domain. Model-driven development is about focusing on models rather than computer programs in software development. Domain-specific modelling follows the principles of model-driven development by promoting the use of domain-specific modelling languages (instead of general-purpose modelling languages). The aim of this research is to develop a prototype graphical domain-specific modelling language (DSML) and a code generator for creating repository-based plug-ins for Eclipse. The purpose of DSML is to raise the level of abstraction and thus speed up the development process of several similar Eclipse plug-ins compared to hand writing the plug-ins in Java language. Also people not familiar with Java (i.e. end users) could build their own extensions with the language defined in this work. Developed DSML is demonstrated by generating the source code of an existing repository-based Eclipse plug-in. The plug-in that is used in the demonstration is an open source software architecture knowledge management tool called Stylebase for Eclipse, which has been developed at VTT Technical Research Centre of Finland. The Stylebase for Eclipse is a software product family, which has a number of variation points. Since the Stylebase for Eclipse tool is already developed once with the traditional code-centred approach, it is possible to compare the model-driven approach with the code-centred approach in this particular case. The case example shows that DSML and the code generator defined in this work can be used for generating repository-based Eclipse plug-ins. The code generator generates a fully functional Eclipse plug-in so the generated code does not have to be edited manually after its generation. Also variability in the software product family can be handled in a more flexible way in the model-driven approach.
Original languageEnglish
Place of PublicationEspoo
PublisherVTT Technical Research Centre of Finland
Number of pages89
ISBN (Electronic)978-951-38-7094-2
Publication statusPublished - 2008
MoE publication typeC1 Separate scientific books

Publication series

SeriesVTT Publications


  • model-driven development
  • software product family
  • variability


Dive into the research topics of 'Domain-specific modelling language and code generator for developing repository-based Eclipse plug-ins: Master's thesis'. Together they form a unique fingerprint.

Cite this