MDSD/PLE Conference in Leipzig
On Oct 19 and 20, I was at the conference
Model-Driven Development and Product Lines: Synergies and Experience organized by Ulrich Eisenecker from the University Leipzig. As you can see from the
program, there were a number of interesting presentations. Here are some comments about things that I found especially interesting:
- JP Tolvanen of Metacase showed once again their MetaEdit+ tool. As most of you will probably know, they have a tool for defining and working with DSLs. Once again, it became obvious that they have by far the most advanced tool in this category. I am not necessarily convinced about the way they process models (their code generation language doesn't look that nice, and they don't support model-2-model transformations) but their editor, as well as the facilities to build the graphical language is really cool. If they only were a bit mre standards-conforming. I (hope I) convinced JP to at least build an EMF export for the meta model and the model, so that other tools (such as oAW) can be used to process models. To be honest, I would really like to use MetaEdit+ as the tool to build DSLs and edit models and then use oAW to process them. I think that would be an interesting combination... Well, let's see.... :-)
- Roman Roth of innoQ talked about model-driven software modernization. The idea is to extract the structures from existing host applications (assembler!) into models and then to use MDSD to build the new, modernized applications. His conclusion was that this works in principle, but some aspects were much more challenging than expected. Very interesting presentation! Note that the OMG is working on a standard for this kind of thing called ADM (for Architecture Driven Modernization) - a funny coincidence, that it is the reverse of the MDA acronym :-)
- Then Danilo Beuche of pure-systems talked about some of the challenges of converting a set of applications into a product line. He mentioned that while there are some technical challenges (such as how to find the variation points in existing applications - he showed some very interesting approaches!) he emphasized that the main challenges are on the management and organizational level. So, if you want to establish PLE in an organization, you WILL NEED management buy-in. So don't forget that!
- Later, Axel Uhl, the Chief Development Architect for SAP's MDD tools talked about the challenges of scaling MDD to the enterprise level. Currently, they have roughly 200 (!) different development tools, most of them in some way model-based. All of them shall be integrated into a common new repository-based MDD development environment. It is really interesting what kinds of challenges will show up on this scale. Luckily, most of us are not working on this scale, so many of the problems are not directly relevant, but this was certainly one of the best presentations of the conference.
- The last session on Thursday was by Jens Weiland of DaimlerChrysler Research talked about variant management for Matlab/Simulink models in the context of automotive systems. The approach he took was very much based on the approach I once experimented with (see this (german) article). It is cool to see that these things are beginning to be used in practice - well, at least *research* practice :-) However, I find it interesting that these rather advanced concepts are adopted in the technical/embedded dmain. This once more confirms my impression that currently, the embedded domain is much more eager at improving their approaches/methodologies/tools than the enterprise world. I will blog on this aspect some more, later, I guess :-)
- The first session I attended on Friday was by Peter Haensgen of intershop. He talked about their approach to MDSD. He had one slide I really liked. He shows a number of metamodels (and models) that they use for building their system. He suggested that each of the models can be characterized along six dimensions: meta level, partition, technical domain, abstraction level, (concrete) syntax and version. Also, the relationships between models can be categorized: instance-of (i.e. crossing a meta level, transformation relationship and dependencies (or references). Nice categtaorization...!
- Tom Stahl, my coauthor on the MDSD book, talked about management issues in model-driven projects. You could feel the experience he has in this area ... interesting talk inspired from practice.
Note that for most of the talks I mentioned in this blog entry, the slides are available on the
program page. I don't know whether it is planned that the conference will be repeated next year - I would certainly suggest to do so!