From Ancient Egypt to Software Language Engineering

Formely "From Ancient Egypt to Model Driven Engineering"

 
Modeling, Metamodeling, Megamodeling
In preparation
According to Robin Milner establishing modeling as the basis of informatics is one of the grand challenges for the future. In the domain of software engineering, Model Driven Engineering approaches have received considerable attention both from industry and research. Unfortunately, the complexity of current technologies, standards and tools makes it very difficult to enter this field. We are still lacking a uniform theory for modeling and metamodeling. In the absence of such framework reasoning about meta-levels leads to the so-called meta-muddle. This paper tries to answer to questions such as “what is a model?” and “what is a metamodel?”. By contrast to previous attempts, we do so by using providing a (mega) model of these concepts introducing incrementally the notions of system, model, language, and metamodel. Megamodeling is about modeling modeling and modeling-in-the-large. This paper describes how modeling, metamodeling and megamodeling relate to each other.

2007
Languages Everyware!
Engineering the Tower of Babel through Cartography and Sofware Linguistics

Guest talk at TOWERS 2007, 1st International workshop on Towers of Models
In preparation

Languages are ubiquitous in our world. This truism, largely neglected so far, is going to be key in the future of informatics. This paper advocates that the Tower of Babel is a fact, while the Universal Language is a myth.

Ubiquitous computing, ultra-large scale systems and globalization lead to unprecedented demands on communication and connectivity between actors, either human actors or machines. Whatever the kind of actors considered, all kinds of communication are based on languages, whether formal or not. It is time to recognize that languages are indeed at the very centre of informatics and that a more scientific approach is both necessary and possible.

Based on various elements from the history of mankind and from the history of computing, we forecast the emergence of two new fields in informatics: Software Linguistics, that is the scientific study of Software Languages, and Software Language Engineering, the corresponding engineering discipline. This vision, if realized, could have a significant impact in the next decades, but this will be only the case if concrete actions are taken now.

This paper advocates that it is time

  • 1) to consider the study of all kind of software languages from a scientific point of view,
  • 2) to recognize that language descriptions, in all their diversity, should be treated as first class object, just like integers or strings,
  • 3) to consider their production as an explicit engineering discipline, not just a craft
  • 4) to establish a worldwide cartography of existing software languages describing not only bridges between them, but also all kind of relations on which the Tower of Babel is based.

Finally a brief research agenda is sketched and proposals to the international community are made along with the presentation of concrete means to establish cartography of our software world. The Tower of Babel is not a myth. The future of Informatics relies on it, so let’s engineer it, and realize the Power of Babel.

2007
Foundations of Metamodel (Driven) (Reverse) Engineering 
Episode III, Stories of the Plateau of Ghiza and of the Rosetta Stone
In preparation
Megamodelling and Etymology
A Story of Words: From MED to MDE via MODEL in five millenium

Dagsthul, Germany, February 29-March 5, 2004
Appeared in DROPS 05161, ISSN 1862-4405, Published by IBFI, 22 pages

Is a model of a model, a metamodel? Is the relational model a metamodel? Is it a model? What is a component metamodel? Is it a model of a component model?

The word MODEL is subject to a lot of debates in Model Driven Engineering. Add the notion of metamodel on top of it and you will just enter what some people call the Meta-muddle.

Recently megamodels have been proposed to avoid the meta-muddle. This approach is very promising but it does not solve however the primary problem. That is, even a simple use of the word Model could lead to misunderstanding and confusion.

This paper tackles this problem from its very source: the polysemic nature of the word MODEL. The evolution and semantic variations of the word MODEL are modelled from many different perspectives. This papers tells how the prefix MED in indo-european has lead, five millenniums after, to the acronym MDE, and this via the word MODEL.

Based on an extensive study of encyclopedias, dictionaries, thesauri, and etymological sources, it is shown that the many senses of the word MODEL can be clustered into four groups, namely model-as-representation, model-as-example, model-as-type, and model-as-mold. All these groups are fundamental to understand the real nature of Model Driven Engineering. Megamodels and Etymology are indeed keys to avoid the Meta-muddle.

2005
Foundations of the Meta-pyramids: Languages and Metamodels 
Story of Thotus the Baboon

Dagsthul, Germany, February 29-March 5, 2004
Appeared in DROPS 04141, ISSN 1862-4405, Published by IBFI, 28 pages

Despite the recent interest for Model Driven Engineering approaches, the so-called four-layers metamodelling architecture is subject to a lot of debate. The relationship that exists between a model and a metamodel is often called instanceOf, but this terminology, which comes directly from the object oriented technology, is not appropriate for the modelling of similar meta-pyramids in other domains.

The goal of this paper is to study which are the foundations of the meta-pyramids independently from a particular technology. This paper is actually the second episode of the series "From Ancient Egypt to Model Driven Engineering". In the pilot episode, the notion of megamodel was introduced to model essential Model Driven Engineering concepts. The notion of models was thoroughly discussed and only one association, namely RepresentationOf was introduced.

In this paper the megamodel is extended with one fundamental relation in order to model the notion of languages and of metamodels. It is shown how Thotus the Baboon helped Nivizeb the priest in designing strong foundations for meta-pyramids. The secrets of some ancient pyramids are revealed.

2004

 

 Foundations of Model (Driven) (Reverse) Engineering: Models  
Stories of the Fidus Papyrus and of the Solarus

Dagsthul, Germany, February 29-March 5, 2004
Appeared in DROPS 04141, ISSN 1862-4405, Published by IBFI, 31 pages

Model Driven Engineering (MDE) received a lot of attention in the last years, both from academia and industry. However, there is still a debate on which basic concepts form the foundation of MDE. The Model Driven Architecture (MDA) from the OMG does not provided clear answers to this question. This standard instead provides a complex set of interdependent technologies.

This paper is the first of a series aiming at defining the foundations of MDE independently from a particular technology. A megamodel is introduced in this paper and incrementally refined in further papers from the series.

This paper is devoted to a single concept, the concept of model, and to a single relation, the RepresentationOf relation. The lack of strong foundations for the MDA’ 4-layers meta-pyramid leads to a common mockery: "So, MDA is just about Egyptology?!".

This paper is the pilot of the series called "From Ancient Egypt to Model Driven Engineering". The various episodes of this series show that Egyptology is actually a good model to study MDE....

2004

 

Metamodel (Driven) (Reverse) Engineering 
Stories of the Dagktis Stone and of the Rosetta Stone

Dagsthul, Germany, February 29-March 5, 2004

This talk was given at the Dagsthul Seminar on Language Engineering

2004

 

From Ancient Egypt to Software Language Engineering