City of bikes  
   DTU Logo


 Tutorial 1 (Monday morning)
 Tutorial 2 (Monday afternoon)

Programme (main conference)

Programme (workshops)

Follow us on twitter

Tutorials: Overview

The following tutorials are co-located with ECMFA 2012.

Monday, 2.7.2012 (morning)

Building Domain-Specific Modeling Languages with Full Code Generation

Juha-Pekka Tolvanen (MetaCase)

Domain-Specific Modeling (DSM) provides a viable solution for improving development productivity by raising the level of abstraction beyond coding. With DSM, the modeling language is made up of concepts from the problem domain world, not the code world (as in say UML). The architect or lead developer creates the modeling language for the domain, and automates the mapping of the concepts to code in a domain-specific code generator. This automation is possible because both the language and generators need fit the requirements of only one company and domain. As the language follows domain abstractions and semantics, when other developers in the team model with it they perceive themselves as working directly with domain concepts.

This tutorial introduces DSM through real-life examples from various domains. The main part of the tutorial addresses the guidelines for implementing DSM: how to identify the necessary language constructs, different ways of building code generators, how to keep generators simple by refactoring code into a domain framework, and how to build tool support for your modeling language.

Duration: 1/2 day (morning)

Target audience: Architects, lead developers, researchers

Juha-Pekka Tolvanen
Juha-Pekka Tolvanen, PhD, is the CEO of MetaCase ( He has been involved in model-driven approaches, metamodeling and related tools since 1991. He has acted as a consultant worldwide on modeling language development, authored a book (Domain-Specific Modeling, Wiley 2008) and written over 70 articles in journals and conferences. Juha-Pekka is an adjunct professor at the University of Jyväskylä, Finland.

Monday, 2.7.2012 (afternoon)

Improving the quality of EMF models using metrics, smells, and refactorings

Gabriele Taentzer, Thorsten Arendt (Philipps-Universität Marburg)

Models are primary artifacts in model-driven software development processes. Therefore, software quality assurance frequently leads back to the quality assurance of the involved models. Such a model quality assurance process can be performed based on static model analysis and uses techniques like model metrics and model smells. Based on the outcome of the model analysis, appropriate model refactoring steps can be performed.

A common open source technology in model-based software development is the Eclipse Modeling Framework (EMF). EMF is a modeling framework and code generation facility for building tools and other applications based on a structured data model. Besides the opportunity to support domain-specific modeling languages (DSMLs), also more general languages like the UML are supported and some commercial modeling products (e.g., IBM Rational Software Architect) rely on the UML2EMF technology.

In this tutorial, we present an integrated and generic framework for the quality assurance of EMF-based models. From the user's point of view, we show how metrics and smells are reported and refactorings are performed on arbitrary EMF instance models. Afterwards, we present how new metrics, smells, or refactorings (e.g., for your own DSML) can be integrated using several techniques as concrete specification languages (e.g., Java, OCL, or the EMF model transformation language Henshin).

Duration: 1/2 day (afternoon)

Target audience: Software developers using EMF as modeling platform; quality assurance manager in software development processes

Gabriele Taentzer
Professor for Software Engineering at the Department of Mathematics and Computer Science of the Philipps-Universität Marburg in Germany. She achieved the habilitation in Computer Science at the Technische Universität Berlin in 2003. Her research interests include model-driven software development, especially domain-specific visual languages, model transformation and model quality assurance, and graph transformation. Since 2002, she is steering committee member for conferences on automated software engineering (ASE), ETAPS, and graph transformation (ICGT). Furthermore, she has been program committee member of a variety of international conferences, especially on model-driven engineering such ECMFA, MoDELS, and ICMT. She has been involved in a number of research projects on model-driven software development.

Thorsten Arendt
Scientific assistant at the Department of Mathematics and Computer Science of the Philipps-Universität Marburg. He received his diploma in Computer Science from the Philipps-Universität Marburg in 2008. Since graduation, he has been responsible for the development of model quality assurance tools EMF Metrics, EMF Smell and EMF Refactor. He has 10 years of IT experience with specific focus on model-based software development, quality assurance of software models, and model refactoring.

Tuesday, 3.7.2012 (all day) Cancelled

Real time, real life, fast and efficient development of a running rich internet application (RIA) using model-based, abstract pattern development and code generation.

Karsten Holm (Soft Design A/S, Denmark)

Most IT post graduates don't believe us when we say we can develop an internet application with back-end integration from scratch in less than a day. Would you? In Soft Design A/S we have been developing customer specific software through 25 years. We cut to the chase and focus on the business essentials, letting patterns and generators do the tedious work for us. The tools and technique used are neither theoretical nor experimental but part of our daily development work. We use model-based development.

In this one day session we will demonstrate the power of model-based software development by building a small but complex application meeting the demands of a Rich Internet Application. Combining the Architected Rapid Application Development (ARAD) tool CA Plex with foundation and software design patterns from Websydian the fundamentals of an ultra efficient development platform is created.

The model and concept was designed and first released 20 years ago when Internet, C# and Java didn't exist. Still, today we support all this natively within the framework because of the flexibility and the open architecture of the tool. The declarative approach by statements and relations is still unchanged and viable after 20 years of stress testing in real life applications.

The waste majority of other so called CASE tools have vanished due to their lack of flexibility and openness to support and enable new technologies and paradigms as they were built only for their current time and not conceptually designed.

Duration: 1 day

Target audience: General IT and market technology knowledge is required.

Supplemental information:
CA Plex
CA Plex is a model-based Architected Rapid Application Development (ARAD) tool created by CA. The tool allows for development of applications in a Windows environment and compilation and testing in the target environment which might be Windows/.NET, Java/J2EE or the IBM System i. CA Plex supports the development of many different types of applications including client/server, web-based, service-oriented, character-based, batch and wireless device-based, all from a single set of skills and development techniques.

Websydian is a development software tool for creating integrated web applications and web services for RPG, CA 2E/Synon and CA Plex programs. Websydian provides the underlying technology foundation for integrated web applications and web services: transport layer, security, user management, session control and more. This allows developers to concentrate on core business processes and not technological "plumbing".

Soft Design
Soft Design A/S is a Danish software development house founded in 1985. The company employs a staff of 40 and services customers in 35 countries worldwide creating back-end integrated web applications, mobile IT solutions and software products.

Karsten Holm
Head of Consultancy Division at Soft Design A/S. Bachelor of Science from Aarhus Teknikum, 1991. 20 years of IT experience within all phases of software and application design and implementation based on a holistic and pragmatic view of development and design rooted in real life experience.