Skip to topic | Skip to bottom


MoDSE.WebHomer1.7 - 15 Nov 2006 - 10:31 - EelcoVisser

Start of topic | Skip to actions

Model-Driven Software Evolution

An NWO/JACQUARD project.


MoDSE website updated with

We have an opening for a PhD student and postdoc (2 years) in the project.

MoDSE Colloquium: Martin Bravenboer on Intelligent Coding Assistance for Code Generation in Modeling Frameworks

First MoDSE Workshop

MoDSE Colloquium: Eelco Visser on Domain-Specific Language Engineering (Part II)

Slides for lecture of Jan Heering available online.

MoDSE Colloquium: Jan Heering on Domain-Specific Languages in Perspective

2007-04-05 : First MoDSE colloquium
Anneke Kleppe. Towards the Generation of a Text-Based IDE from a Language Metamodel

2007-03-29: project publications

2007-02-26: Paper: Model-Driven Software Evolution: A Research Agenda (blog)

2007-02-25: Blog: Domain-Specific Language Engineering

2007-02-14: Zef Hemel accepts PhD position (blog)

2006-11-15: Program for kickoff meeting of 17 November 2006.

2006-10-15: Four open positions in the MoDSE project

2006-06: MoDSE proposal granted by JAQUARD program.


The promise of model-driven engineering (MDE) is that the development and maintenance effort can be reduced by working at the model instead of the code level. Models define what is variable in a system, and code generators produce the functionality that is common in the application domain.

The problem with model-driven engineering is that it can lead to a lock-in in the abstractions and generator technology adopted at project initiation. Software systems need to evolve, and systems built using model-driven approaches are no exception. What complicates model-driven engineering is that it requires multiple dimensions of evolution. In regular evolution, the modeling language is used to make the changes. In meta-model evolution, changes are required to the modeling notation. In platform evolution, the code generators and application framework change to reflect new requirements on the target platform. Finally, in abstraction evolution, new modeling languages are added to the set of (modeling) languages to reflect increased understanding of a technical or business domain. While MDE has been optimized for regular evolution, presently little or no support exists for metamodel, platform and abstraction evolution. It is this gap that this project proposes to address.

The first fundamental premise of this proposal is that evolution should be a continuous process. Software development is a continuous search for recurring patterns, which can be captured using domain-specific modeling languages. After developing a number of systems using a particular meta-model, new patterns may be recognized that can be captured in a higher-level or richer meta-model. The second premise is that reengineering of legacy systems to the model-driven paradigm should be a special case of this continuous evolution, and should be performed incrementally.

The goal of this project is to develop a systematic approach to model-driven software evolution. This approach includes methods, techniques, and underlying tool support. We will develop a prototype programming environment that assists software engineers with the introduction, development, and maintenance of models and domain-specific languages.

Edit | Attach | Printable | Raw | More topic actions
Revisions: | r1.8 | > | r1.7 | > | r1.6 | Page history | Backlinks
You are here: MoDSE > WebHome

to top

Copyright © 2003-2018, Software Engineering Research Group, Delft University of Technology, The Netherlands