Modeling is a key element in reducing the complexity of software systems during their development and maintenance. Model transformations are essential for elevating models from documentation elements to first-class artifacts of the development process. Transformations also play a key role in analyzing models to reveal conceptual flaws or highlight quality bottlenecks and in integrating heterogeneous tools into unified tool chains.
Model transformation includes approaches such as: model-to-text transformation, e.g., to generate code or other textual artifacts from models; text-to-model transformations, e.g., to derive models from structured text such as legacy code; and model-to-model transformations, e.g., to normalize, weave, analyze, optimize, simulate, and refactor models, as well as to translate between modeling languages.
Model transformation encompasses a variety of technical spaces, including modelware, grammarware, dataware, and ontoware, a variety of model representations, e.g., based on different types of graphs, and a variety of transformation paradigms including rule-based transformations, term rewriting, and manipulations of objects in general-purpose programming languages.
The study of model transformation includes foundations, structuring mechanisms, and properties, such as modularity, composability, and parameterization of transformations, transformation languages, techniques, and tools. An important goal of the field is the development of high-level model transformation languages, providing transformations that are amenable to higher-order model transformations or tailored to specific transformation problems.
The efficient execution of model queries and transformations by scalable transformation engines on top of large graph data structures is also a key challenge in different application scenarios. Novel algorithms as well as innovative (e.g., distributed) execution strategies and domain-specific optimizations are sought in this respect.
To achieve impact on software engineering in general, methodologies and tools are required to integrate model transformation into existing development environments and processes. ICMT is the premier forum for researchers and practitioners from all areas of model transformation.
Topics of interest include, but are not limited to:
Transformation paradigms and languages:
- graph rewriting, tree rewriting, attribute grammars
- rule-based, declarative, imperative, and functional
- textual, graphical
- model queries, pattern matching
- transformation by example/demonstration
- modularity, reusability, and composition
- comparison of transformation languages
- theoretical foundations
Transformation algorithms and strategies:
- bidirectional transformation
- incremental transformation
- scalability and optimization
- termination and confluence
- higher-order transformation
- transformation chains
- non-functional aspects of transformations
Development of transformations:
- specification, verification, and validation
- verification and validation
(incl. testing, debugging, termination, confluence, metrics)
- development processes
- tool support
- benchmarking of transformation engines
Applications and case studies:
- aspect weaving
- model comparison, differencing, and merging
- model synchronization and change propagation
- co-evolution of models, metamodels, and transformations
- round-trip/reverse/forward engineering
- industrial experience reports
- empirical studies
For more information, please refer to the submission & publishing information!