Meta-modeling (MM - SS08)

Course: S7087 (Spring Semester 2008)
Professor: Prof. Dr. Oscar Nierstrasz
Assistant: David Röthlisberger
Audience: Master students in computer science
Time: Wednesdays, 11h15-13h00
Place: Engehaldenstrasse 8, 003
Start: February 20, 2008
Mailing-List: MM-Seminar
Repetition: None planned

Contents

Software applications are under ever-increasing pressure to adapt to new requirements, sometimes even at run-time. This in turn means that the abstract models of software designs must be kept closer in sync with the software itself. This seminar will explore classical techniques like metaprogramming and reflection to keep code, models and meta-models synchronized, as well as emerging techniques, such as model-driven engineering.

The idea of this seminar is that students will work on different topics in the area of metamodeling and metaprogramming. During the first couple of weeks, members of the Software Composition Group will present selected topics during the seminar. Afterwards, students will present the results of their investigations into their chosen topic. These talks should deliver in-depth information about the topic and should demonstrate tools, concepts or ideas from the field.

Students will be graded for their talks. Additionally, there will be a written or oral exam at the end of the semester covering all presented topics.

Deliverables

Schedule

Week Date Lecture/Seminar
1 20-Feb-08 Lecture: Introduction
2 27-Feb-08 Lecture: Magritte — Describe Once, Get Everywhere (Magritte Image)
3 05-Mar-08 Lecture: The Reflectivity — Sub-Method Structural and Behavioral Reflection
4 12-Mar-08 Lecture: FAME — a meta-modeling framework
5 19-Mar-08 Lecture: Object query languages (paper about Traversals from Lieberherr)
26-Mar-08 Easter vacation
6 02-Apr-08 Break
7 09-Apr-08 Lecture:
OmniBrowser — Meta-modeling Browsers (OmniBrowser image)
Hermion — Exploiting Runtime Information in the IDE
8 16-Apr-08 Lecture: Presenting is Storytelling
9 23-Apr-08 Break
10 30-Apr-08 Break
11 07-May-08 Break
12 14-May-08 Daniel Frey - DSLs
13 21-May-08 Marcel Härry - Transformation Languages (CheatSheet)
14 28-May-08 Exam (oral, 10 - 12 am)