How Mature is of Model-driven Engineering as an Engineering Discipline? – Panel with Manfred Broy, Paola Inverardi and Lionel Briand

Within ModelsWard 2016, just after the opening speech I gave on February 19 in Rome, the opening panel has been about the current maturity of model-driven engineering. I also hosted a poll on twitter on this matter (results are available in this other post).  

I’m happy the panelists raised several issues I pointed out myself in the introduction to the conference: as software modelling scientists, we are facing big challenges nowadays, as the focus of modelling is shifting, due to the fact that now software is more and more pervasive, in fields like IoT, social network and social media, personal and wearable devices, and so on.

Panel included the keynote speakers of the conference: Manfred Broy, Paola Inverardi and Lionel Briand, three well known names in the Software Engineering and Modeling community.

Manfred Broy highlighted:

  • there is a different between scientific maturity and practical maturity. Sometimes, the latter in companies is far beyond the former.
  • a truck company in Germany has been practicing modelling for years, and now has this take on the world: whatever is not in the models, doesn’t exist
  • The current challenges are about how to model cyber-physical systems
  • The flow of model must be clarified: traceability, refinement, model integration are crucial. You must grant syntactic and semantic coherence
  • You also need a coherent infrastructure of tools and artefacts, that grants logic integration. You cannot obtain coherence of models without coherence of tools.
  • You need a lot of automation, otherwise you won’t get practical maturity. This doesn’t mean to have end-to-end, or round-trip complete model transformations, but you need to push automaton as much as possible

Lionel Briand clarified that:

  • by definition, engineering underpins deep mathematical background as a foundation and implies application of the scientific method to solving problems
  • maturity can be evaluated in terms of: how much math underpinning is foundational, how many standards and tools exist and are used, whether the scientific approach is used
  •  Tools, methods, engineers, and scale of MDE are increasing (aka. MDE is increasingly more difficult to avoid)
Paola Inverardi recalled a position by Jean Bezivin:
  • we need to split Domain Engineering (where the problem is) and Support Engineering (where the solution will be)
  • MDE is the application of modelling principles and tools to any engineering field
  • So: is actually SOFTWARE the main field of interest of model-driven engineering?
  • In the modern interpretation of life, covering from smart cities to embedded, wearable, and cyber-physical systems, is the border between the environment and the system still relevant?
  • In the future we will need to rely less and less on the “creativity” of engineers when building models, and more and more on the scientific/ quantitative/ empirical methods for building models

The debate obviously stirred around this aspects, starting from Bran Selic who asked a very simple question:

Isn’t it the case that the real problem is about the word “modeling”? In any other fields (architecture, mechanics, physics) modelling is implicit and obvious. Why not in our community? At the end, what we want to achieve is to raise abstraction and increase automation, nothing else.

Other issues have been raised too:

  • why is there so much difference in attitude towards modelling between Europe and US?
  • what’s the role of notations and standards in the success / failure of MDE?

What’s your take on this issue?
Feel free to share your thoughts here or on Twitter, mentioning me  (@MarcoBrambi).
AND:
Respond to my poll on twitter!

To keep updated on my activities you can subscribe to the RSS feed of my blog or follow my twitter account (@MarcoBrambi).

Bran Selic, Mark Van Den Brand and Marco Brambilla: Panel on State of Modeling.

Within the Modelsward conference held at ESEO in Angers, France, the warm up session has been delegated to a panel on the state of modelling, where panelists Bran Selic, Mark Van Den Brand and myself discussed about their vision on modelling.

Plenty of good points came up both from the panelists and the audience.

The main message from Bran Selic was:

  • Non-functional modelling is wrong, both in terminology and semantic senses
  • the so called “ities” are more than 50, and still each of them needs to be covered with different techniques and tools
  • The term implies a second-order importance, and a negative definition which are bad by themselves
  • Furthermore, you cannot cover them separately wrt functional requirements, because it’s not true you can cover them through aspect-oriented or separation of concern. For instance, you cannot put in “reliability” to a system after you have covered the functional aspects only
  • So, best to call them “qualities” of the system. Even in ancient Greece, quality was undistinguishable from the thing itself

On the other side, Mark Van Den Brand was pointing to:

  •  the risk for software engineers to become obsolete, because every domain expert is going to build his own tools and languages by himself
  • the software engineers then should become more interdisciplinary, while not delve into becoming domain experts of some sort.
My provocative message at the panel was that:
  • Modeling is dead! In the sense we cannot expect
  • We should move to Un-Modeling Practices, that is: remove modelling as a tool for everybody, using modelling tools as experts, and let people enjoy only the little bit they deserve, without forcing MDD frameworks, which are usually not easily accepted
  • Modeling should be used under the hood and each actor should be shown the proper tool (including programmers, who are not easily buying the model-driven approaches at all)
  • This will not be possible until language and tool designers will be software engineers only (just think at the terrible modelling tools we are able to build).
  • Here is the slides I used for my pitch:
I think all this poses extremely complex challenges to the modelling and software engineering community. It’s up to us to keep up with these challenges, or become obsolete (aka. remain a very small niche in the software development world).

To keep updated on my activities you can subscribe to the RSS feed of my blog or follow my twitter account (@MarcoBrambi).

Panel on Web Engineering and Web 2.0 at ICWE 2007

I have been invited as a panelist at the Panel on Web Engineering and Web 2.0, held at IBM TJ Watson research center, NY, USA, in July 2008, within the ICWE conference.
You can find my contribution here.