Tutorial T2

Generative Programming and Component Engineering

Implementing Domain-Specific Modelling Languages and Generators

This tutorial is CONFIRMED.


Domain-Specific Modelling (DSM) languages provide a viable solution for improving development productivity by raising the level of abstraction beyond coding. In DSM, the models are made up of elements representing concepts that are part of the domain world, not the code world (as for example in UML). These languages follow domain abstractions and semantics, allowing developers to perceive themselves as working directly with domain concepts. In many cases, full final product code can be automatically generated from these high-level specifications with domain-specific code generators.

This tutorial introduces DSM and looks at how it differs from modelling languages that focus more on the level of the code world. This is followed by real-life examples of DSM from various fields of software product development (some of these examples are published at the DSM Forum). The main part of the tutorial addresses the guidelines for implementing DSM: how to identify the necessary language constructs, and different ways of building code generation. Tutorial includes also some interactive group solving tasks to create relevant parts of sample domain-specific languages and code generators.

This tutorial was prepared by Risto Pohjonen and Juha-Pekka Tolvanen of MetaCase, Inc.


Vennaste saal

Date and Time

Wednesday, Sep. 28, 2005: 9.00-12.30 (half-day)


Risto Pohjonen, rise (at) metacase.com

Risto Pohjonen works as a developer and consultant at MetaCase. He has over 10 years experience in implementing metamodel-based modeling tools and in consulting companies how to define modelling languages and code generators. Risto has also written several articles and has given lectures on software analysis and design and domain-specific languages.

Gpce05.TutorialT2 moved from Gpce05.TutorialGP2 on 13 Apr 2005 - 19:49 by AndrewMalton - put it back