Model-driven approaches to software development require precise definitions for modelling languages, their syntax and semantics, their notions of consistency and refinement, as well as their mappings into implementations.
Modelling languages and processes, however, are subject to continuous evolution, and different constellations and dialects are required in different application domains, organisations, and even individual projects. So in order to support model driven development in a variety of contexts, we must find efficient ways of designing languages and processes, accepting that definitions are subject to change and extension and that tools need to be delivered in a timely fashion.
Thus, rather than ad-hoc solutions, a discipline of language engineering is required to support the definition and implementation visual modelling languages with respect to their
- abstract syntax and well-formedness rules
- operational and denotational semantics
- consistency and refinement relations
- model transformations
With this motivation, the objectives of this school are to provide tutorial-like introductions to fundamental techniques supporting the above tasks, to present examples of applications to specific languages and problem domains, and to offer the opportunity for practical experience in applying techniques and tools in sample projects.