Intensive Course on Model-Driven Engineering

582706
3
Hajautetut järjestelmät ja tietoliikenne
Syventävät opinnot
In this course the participants are taught about the principles and practice of model-driven engineering. Background, concepts and principles of model-driven engineering are introduced in a series of lectures. The lectures introduce the concepts of models, meta-models and model transformations, as well as discuss the principles of modelling processes and developing modelling languages. Practise is taught in a series of hands-on workshop sessions, where the participants design, develop and apply their own modelling languages for representation and implementation of web applications. The Eclipse framework is used for these purposes. There is no course exam. The couse is assessed based on the quality of the artefacts produced by the course participants (e.g. modelling language design and implementation, and associated model transformations). The course is ended with a demonstration session where the students present and discuss their products. Course book: Brambilla, Marco and Cabot, Jordi and Wimmer, Manuel: "Model-Driven Software Engineering in Practice - Synthesis Lectures on Software Engineering", Morgan & Claypool Publishers, September 2012, 182 pages.
Vuosi Lukukausi Päivämäärä Periodi Kieli Vastuuhenkilö
2013 kevät 06.05-17.05. 4-4 Englanti Toni Ruokolainen

Luennot

Aika Huone Luennoija Päivämäärä
Ma 10-12 C222 Toni Ruokolainen 06.05.2013-06.05.2013
Ti 10-12 C222 Toni Ruokolainen 07.05.2013-07.05.2013
Ke 10-12 B222 Toni Ruokolainen 08.05.2013-08.05.2013
Pe 10-12 B222 Toni Ruokolainen 10.05.2013-10.05.2013

Harjoitusryhmät

Group: 1
Aika Huone Ohjaaja Päivämäärä Huomioitavaa
Ma 12-14 B221 Toni Ruokolainen 06.05.2013—06.05.2013
Ti 12-14 B221 Toni Ruokolainen 07.05.2013—07.05.2013
Ke 12-14 B221 Toni Ruokolainen 08.05.2013—08.05.2013
Pe 12-14 B221 Toni Ruokolainen 10.05.2013—10.05.2013
Ma 12-14 B221 Toni Ruokolainen 13.05.2013—13.05.2013
Ke 12-14 B221 Toni Ruokolainen 15.05.2013—15.05.2013
Pe 10-14 B221 Toni Ruokolainen 17.05.2013—17.05.2013

Yleistä

Grading criteria and schedule changes!

Grading criteria has been chanaged due to the workshop-intensive nature of the course: you can get either pass/failed out of the course, or in the case of exceptional contributions a grade of 5/5.

Due to schedule changes the demonstration session has been cancelled! Instead, the Friday timeslot is available for you to implement your course portfolio - the lecturer will be available for guidance at the department.

The deadline for returning your course portfolio is Monday 20th May.

 

Lecture and workshop cancelled on Friday 10th May! Lecture and the workshop will be held instead on Monday, 10-12a.m. in class room B222.

Lectures: 6 May (Mon) 10-12 C222, 7 May (Tue) 10-12 C222, 8 May (Wed) 10-12 B222, 10 May (Fri) 10-12 B222

Exercise sessions: 06.05. Mon 12-14 B221, 07.05. Tue 12-14 B221, 08.05. Wed 12-14 B221,
10.05. Fri 12-14 B221, 13.05. Mon 12-14 B221, 15.05. Wed 12-14 B221, 17.05. Fri 10-14 B221 (Demonstration session)

Model-Driven Engineering (MDE) is a modern software engineering discipline where
models are utilized as the primary artefacts of engineering activities. In this
context, models are considered as representations of systems under study such as
software components, web applications, services or enterprise systems. Models
are constructed using a modelling language having a well-defined formal
definition. A modelling language definition comprises an abstract syntax (a
consistent set of rules defining the structure of the language), a concrete
syntax (the representation, or user interface, of the language), and a semantic
grounding defining what the concepts of the language mean. In MDE models are
transformed to other models and software engineering artefacts (e.g. Java source
code or configuration files) automatically using so-called model
transformatiaons.

In this course the participants are taught about the principles and practice of
model-driven engineering. Background, concepts and principles of model-driven
engineering are introduced in a series of lectures. The lectures introduce the
concepts of models, meta-models and model transformations, as well as discuss
the principles of modelling processes and developing modelling
languages. Practise is taught in a series of hands-on workshop sessions, where
the participants design, develop and apply their own modelling languages for
representation and implementation of web applications. The Eclipse framework
(http://eclipse.org) is used for these purposes.

Schedule
-----------

  • 6 May 2013

  10-12 C222 Lecture 1:  Model-Driven Engineering
  12-14 B221 Workshop 1: Introducing and installing the tools; Case description

  • 7 May 2013

  10-12 C222 Lecture 2:  Designing domain-specific modelling languages
  12-14 B221 Workshop 2: Creating abstract syntaxes with the Eclipse
         Modelling Framework

  •  8 May 2013

  10-12 B222 Lecture 3:  Developing domain-specific modelling languages
  12-14 B221 Workshop 3: Creating textual concrete syntaxes with XText

  • 10 May 2013

  10-12 B222 Lecture 4:  Applying domain-specific modelling languages with
         model transformations
  12-14 B221    Workshop 4: Model-to-model and model-to-text transformations

  •  13 May 2013

  12-14 B221 Lecturer available for guidance

  • 15 May 2013

  12-14 B221 Lecturer available for guidance

  •  17 May 2013

  10-14 B221 Demonstration session

Kurssin suorittaminen

There is no course exam. The course is assessed based on the quality of the
artefacts produced by the course participants (e.g. modelling language design
and implementation, and associated model transformations). The course is ended
with a demonstration session where the students present and discuss their
products.

Kirjallisuus ja materiaali

Brambilla, Marco and Cabot, Jordi and Wimmer, Manuel: "Model-Driven Software
Engineering in Practice - Synthesis Lectures on Software Engineering", Morgan &
Claypool Publishers, September 2012, 182 pages.
http://www.morganclaypool.com/doi/abs/10.2200/S00441ED1V01Y201208SWE001

 

The course book is now available as a electronic copy via our university: https://helka.linneanet.fi/cgi-bin/Pwebrecon.cgi?BBID=2458306&LANGUAGE=English

Slides

Slides are based on the instructor's material provided by the book authors. The slides are available here: https://www.cs.helsinki.fi/i/thruokol/opetus/2013/mde/

Eclipse distributions

We will be using Eclipse Juno (http://eclipse.org) as a development framework in this course. More specifically, we will be using the "Modeling" package: http://www.eclipse.org/downloads/packages/eclipse-modeling-tools/junosr2 Below are links to local copies compatible with the Department of Computer Science  machines: