Monday, October 31, 2005


U-Languages or M-Languages?

This is a copy of a text previously posted Saturday, December 11, 2004 on my previous Blog.


I cannot resist quoting Stefan Tilkov's blog :

" ... Once upon a time, I used to believe the OMG shared the vision of modeling based on custom meta-models — after all, what MS now claims as its innovation is something that is very much aligned with the original MOF concept. Sadly, though, with OMG’s ridiculous monster of a modeling language that aims to be everything to everybody, this seems to be no longer the case. (If anybody needs proof that Tim Bray is right in asserting that standards bodies should never invent anything, and is tired of using another well-known monster to do so, UML 2 would be a great candidate.)

So in the end, it seems to come down to MOF in its sort-of-working semi-compatible non-standardized incarnation (EMF), embedded into Eclipse, vs. Microsoft’s proprietary DSL stuff, embedded into Visual Studio. And the strangest thing is: I’d rather place a bet on something that is backed by than on an OMG standard nobody gives a fuck about. Care for another example? Take this."

So seems that the old debate on (Unique/Unified/Universal) languages or U-languages is starting again. After the failure of languages like PL/1 and ADA to name only two of them, it seems that what happened on the programming scene is on the verge of happening again on the modeling scene with UML 2.0. [By the way it is funny to notice how old ADA unconditional supporters are easily tempted to back UML 2.0. ]

The OMG camp has always been divided between the tenants of U-languages (UML) and the tenants of M-languages (Meta-Languages, e.g. MOF based). Until now, at the cost of constant compromises and aligments, these views have been cohabiting in the MDA approach.

But today, with the emergence of the very strong DSL trend in industry and research and the clear commitment of Microsoft "Software Factories" into the M-language camp, the cursor seems to move away from the UML 2.0 users and profilers.

This does not come as a surprise since it is only an aligment on what is already happening in the XML technical space. After all, the co-existence of the various XML schemas and DTDs is not apparently such a catastrophic move, at least from the point of view of the users.

Departing from the apparent comfort of huge, unprecise and difficult to specialize monolithic languages like UML 2.0, lead us to the apparent creative and productive environment of multiple coordinated languages. It is quite easy to see what could be achieved with the help of small, well focused and precise DSLs. However we have still many problems beyond of us to solve. The big challenge is how to cope with the fragmentation problem, i.e. the co-existence of hundreds or even thousands of these DSLs. For the time being we have only two ways of coping with this: the existence of a well founded M3-level metalanguage (i.e. the MOF) and the possible forthcoming QVT standard for model transformation language, in the case that this effort finally produces a satisfactory and realistic proposal in 2005 (still to be proved). However, even with a very precise metametamodel and a very well designed model transformation language, we we still have a long way to go before demonstrating the practicality of the approach.


Every metamodel is a treaty

This is a copy of a text previously posted Friday, December 10, 2004 on my previous Blog.


There are very narrow relations between DSLs, Metamodels and Ontologies. Many lessons from ontology engineering are of relevance to model-driven engineering. This is why it may be interesting to read a recent paper by Tom Gruber, one of the most influential researcher in ontology engineering. As a matter of fact, Tom Gruber may be considered as one of the founders of modern ontology. He gave the first definition of an ontology that has been quoted since then times and times: "An ontology is a shared formal specification of an abstraction". As we know, this could as well be taken as a concise defintion for a metamodel.
So, after a long time working in the field, Tom Gruber recently delivered again a new strong message: "Every ontology is a treaty".

In the sometimes hot debates on the the future (or no future) of UML, and particularly UML 2.0, I found this to be an interesting reading.



This is my new Blog.

I am professor of computer science at the University of Nantes, France and a member of the INRIA ATLAS team. I am interested in the research area of model engineering. I am planning to use this Blog to discuss ideas on this research area and may be more.

You may contact me on my secondary google adress bezivin{atNoSpam} Although this is not may main e.mail address, I consult it quite frequently. My primary adress could be found on my professional Web site at University of Nantes (Jean Bezivin). Our research team (ATLAS) is a joint research group from INRIA and Univesity of Nantes.

The previous Blog was just a try and did not really work. I will transfer here the initial posts I had on this Blog before emptying it and putting a link on this one.

To start the transfer of data, here is the initial list of Blogs I enjoy reading:
Later I will add other Blogs to this initial list.

This page is powered by Blogger. Isn't yours?