Domain-Specific Modeling needs multi-models

03 November 08 - 22:02

In previous articles I've mentioned a couple of times that a successful model-driven approach is based on a combination of MDE and DSLs. An MDE ( Model-Driven Engineering ) approach should define what models are needed, the modeling notations / languages and the processes (i.e. in what order should de models be defined and how are they transformed). So, DSLs are just part of MDE, they define how the models are notated: a DSL is a model language. Note: a model can be expressed in both a visual (DSVL) and a textual syntax.

When talking about different kind of models, people mostly think about models on different abstraction levels. For example the PIMs and PSMs of the Model-Driven Architecture ( MDA ). In such cases the idea is to move from the problem to the solution space by refining high level models into lower levels models, until an executable model (can be expressed in a programming language) is created. I like to use the term refining instead of transforming, because in most cases additional information is needed (e.g. a business process model expressed in BPMN, modeled from a user perspective, can't be transformed into an executable model without adding information).

However, to accurately abstract complex systems one monolithic model in one modeling language isn't sufficient. Besides the abstract/concrete dimension sketched above, we need the concept of multi-models.

read more three comments

MoDELS'08: Panel discussion on the past & future of MDD

08 October 08 - 12:26

Moderator: Robert B. France
Panelists:

  • Richard M. Soley, Chariman and CEO, Object Management Group, USA
  • Jeff Kramer, Professor of Distributed Computing, Dean of the Faculty of Engineering, Imperial College, UK
  • Bran Selic, Retired IBM Distinguished Engineer, Canada
  • Grady Booch, IBM Fellow and Chief Scientist, IBM Rational, USA
  • Patrick Farail, Airbus, France

To give you an idea of the ambiance I'll start by listing some quotes from this panel discussion, the question to you: who has pronounced each one?

  1. UML is the worst modeling language except for all the others.
  2. The difference between terrorists and modeling experts: you can negotiate with terrorists.
  3. Java is not a bad Lisp, if it were not for the lack of parentheses.
  4. UML is both a blessing and a curse.
  5. An UML tool has a far more complex interface than a modern aircraft cockpit.

The panelists did all receive the opportunity to start with a seven minute explanation of their view on the past and future of MDD. That was really educational, let's just not talk about the seven minutes time limit...

read more No comments

MoDELS '08: Metamodeling and Modularity

04 October 08 - 19:45

In the metamodeling an modularity session I've visited two presentations. The first one about Metamodel Components and Composition. The second one about Interfaces and Metainterfaces for Models and Metamodels.

read more three comments

MoDELS '08: The objects and Arrows of Computational Design

04 October 08 - 19:24

The third keynote, titled ‘The Objects and Arrows of Computational Design', of the MoDELS '08 conference was by Don Batory from the University of Texas, US.

Don starts by stating that the future of software design and development is automation. The age of computational design consists of:

  • Design: steps to take to create an artifact.
  • Synthesis: the evaluation of these steps to produce the actual output / artifact.

Don sees two important complementary notions in this field: Model-Driven Engineering (MDE) and Software Product Lines (SPL). MDE is about using high-level models to specify software and transforming them into low-level artifacts, while SPL is about software families. In SPL we know the problems and the solutions, we just want to automate the construction of these solutions. In short: MDE can be seen as a general paradigm for program synthesis while SPL can be seen as a domain-specific paradigm for program synthesis.

read more one comment

MoDELS '08: Composition and Analysis of Behavorial Models

04 October 08 - 17:50

I've followed two presentations in the session on composition and analysis of behavioral models. The first one on a general approach for scenario integration, the second one on behavioral modeling and composition of object slices using event observation.

read more No comments

MoDELS '08: Domain-Specific Modeling

02 October 08 - 18:34

I've of course attended the session on Domain-Specific Modeling @ MoDELS '08. Three really interesting (and different) presentations of papers were given. The first one about a Domain-Specific Language (DSL) for workflows, the second one was about a graphical DSL for train signaling, and last but not least, a more infrastructural paper was presented focussing on the problems around multi-modeling.

read more No comments

MoDELS '08: Abstraction, the neglected side of modelling

01 October 08 - 20:27

Jeff Kramer did a very interesting talk about abstraction in the first keynote of MoDELS '08. He'd start with the question why some students are able to produce elegant designs and also comprehend complex distributed algorithms, while others can just apply patterns and don't grasp the essence. He states that the heart of the problem is the ability to deal with abstraction.

read more one comment

MoDELS '08: MDE is a hot topic

01 October 08 - 20:13

With a total number of 372 participants from more than 20 countries all over the world, MoDELS '08 can be seen as an international event. 271 papers have been submitted, which is twice as much as the previouse conference in 2007. So, we can conclude that Model-Driven Engineering gets more and more attention. I hope this will result in innovative and interesting research, creating a well-founded engineering discipline.

read more No comments

MoDELS '08

29 September 08 - 14:55

It's been a while since my last blog post. I highly enjoyed a vacation in southern spain :). By now, I'm back in business. After two conferences in the Netherlands last week, a NAF Insight session on busines rules (I've presented the Mendix vision on Business Engineering, including a live demonstration) and the BPM2008 congres (with a Mendix presentation on the integration of BPM and model-driven tooling), I'll attend the ACM/IEEE 11th International Conference on Model Driven Engineering Languages and Systems in Toulouse (France) this week.

read more two comments

The structure of Domain-Specific Languages

03 September 08 - 15:38

In previous posts I've talked a bit about DSLs, DSL in the context of MDE and DSL compared to UML and MDA. While the term DSL is often used nowadays, its interesting to look at the different structures a DSL can have. DSLs can be implemented using various structures, like textual languages, graphical languages, wizards and interactive GUIs, or a combination of the previous. In principle the structure of a DSL can vary along two different axes: the range of variation and the notation.

read more No comments