This site uses only proprietary and third party technical cookies. By continuing to browse the site you are agreeing to our use of cookies. I agree I want to find out more
Browse the Department site:
Browse the Teaching site:

Programme of Course "Model Driven Engineering"



Type of course unit:

Master Degree in Computer Science curriculum SDRC: Elective
Master Degree in Computer Science curriculum ASSC: Elective
Master Degree in Computer Science curriculum GSEEM: Compulsory
Master Degree in Computer Science curriculum General: Elective

Level of course unit:

Postgraduate Degrees


2nd semester

Number of credits:

Master Degree in Computer Science: 6 (workload 150 hours)


Alfonso Pierantonio (AlfonsodotPierantonioatunivaqdotit)

1. Course Objectives

LEARNING OUTCOME On successful completion of this module, students should be able to: * Knowledge Explain the principles and concepts underlying model-driven engineering Describe concept and approaches for defining the syntax and semantics of domain-specific modelling languages Define and explain the concepts, syntax and semantics of model transformation languages and mode-to-text tools Explain the basic concepts and techniques underlying the automated generation of (diagrammatic and textual) modelling editors and environments * Skills Use abstraction in the construction of software models and in the definition of domain-specific modelling languages Apply the EMF frameworks for model-driven engineering, including the definition of meta-models for domain-specific modelling languages Apply tools for model transformation and model-to-text generation Apply tools for model construction, model differencing and comparison, model management * Competence Assess the applicability and limitations of model-driven engineering and tools for development of software Judge the practical application of modelling and model management in realistic scenarios Discuss and document the construction and validation of models and extensions of supporting software tools

2. Course Contents and learning outcomes (Dublin Descriptors)

Topics of the course include:

  • Introduction, Metamodeling, General-purpose vs domain-specific modeling, Modeling languages (concrete vs abstract syntax), the metamodeling architecture, the Meta-Object Facility.
  • Eclipse EMF
  • Model Transformations: MOF Query-View-Transformation, ATL, JTL
  • Model management: Model weaving, Model differencing
  • Concrete Syntax: EMFText, GMF
  • Coupled Evolution: Metamodel/Model co-evolution, Metamodel/Transformation co-evolution, EMF Migrate

3. Course Prerequisites

General admission requirements for the study programme. Background knowledge on the Unified Modelling Language (UML) is an advantage as well as a solid knowledge of the object-oriented paradigm.

4. Teaching methods and language

The course consists of 4 hours of combined lectures and hands-on exercises per week. In addition, there are smaller mandatory assignments and a larger project. The project work will be concerned with the study and/or practical application of recent techniques for model-driven development. Regular assessments of the project progresses are recommendable must not mandatory, the project outcome must be documented in a 10 page written report. Assignments are individual, whereas the project can be conducted in groups of 2-4 participants.


Course information last updated on: 11 aprile 2018, 13:47