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).

ECMFA: 12th European Conference on Modelling Foundations and Applications

This year I’m involved in the program committee of the Foundations track of ECMFA.
ECMFA 2016 is the 12th European Conference on Modelling Foundations and Applications and is co-located with STAF 2016, on 4-8 July, 2016, in Vienna, Austria. Here are some core excerpts from the call for papers, which could be of interest for software modelling practitioners.

The ECMFA conference series is dedicated to advancing the state of knowledge and fostering the industrial application of Model-Based Engineering (MBE, an approach to the design, analysis and development of software and systems based on high-level models and computer-based automation). Its focus is on engaging the key figures of research and industry in a dialog which will result in stronger and more effective practical application of MBE, hence producing more reliable software based on state-of-the-art research results.

The official conference web site is available at: http://ecmfa2016.itu.dk/

ECMFA 2016 will be co-located with ICMT, TAP, SEFM, ICGT and TTC as part of
the STAF federation of conferences, leading conferences on software
technologies (http://stafconferences.info). The joint organization of
these prominent conferences provides a unique opportunity to gather
practitioners and researchers interested in all aspects of software
technology, and allow them to interact with each other.

ECMFA has two distinct Paper Tracks: one for research papers (Track F)
dealing with the foundations for MBE, and one for industrial/applications
papers (Track A) dealing with the applications of MBE, including experience
reports on MBE tools.

Research Papers (Track F)
In this track, we are soliciting papers presenting original research on all
aspects of MBE. Typical topics of interest include, among others:

  • Foundations of (Meta)modelling
  • Domain Specific Modelling Languages and Language Workbenches
  • Model Reasoning, Testing and Validation
  • Model Transformation, Code Generation and Reverse Engineering
  • Model Execution and Simulation
  • Model Management aspects such as (Co-)Evolution, Consistency, Synchronization
  • Model-Based Engineering Environments and Tool Chains
  • Foundations of Requirements Modelling, Architecture Modelling, Platform Modelling
  • Foundations of Quality Aspects and Modelling non-functional System Properties
  • Scalability of MBE techniques
  • Collaborative Modeling

Industrial Papers (Track A)
In this track, we are soliciting papers representing views, innovations and
experiences of industrial players in applying or supporting MBE. In
particular, we are looking for papers that set requirements on the
foundations, methods, and tools for MBE. We are also seeking experience
reports or case studies on the application, successes or current
shortcomings of MBE. Quantitative results reflecting industrial experience
are particularly appreciated. All application areas of MBE are welcomed
including but not limited to any of the following:

  • MBE for Large and Complex Industrial Systems
  • MBE for Safety-Critical Systems
  • MBE for Cyber-Physical Systems
  • MBE for Software and Business Process Modelling
  • MBE Applications in Transportation, Health Care, Cloud & Mobile computing, etc. …
  • Model-Based Integration and Simulation
  • Model-Based System Analysis
  • Application of Modeling Standards
  • Comparative Studies of MBE Methods and Tools
  • Metrics for MBE Development
  • MBE Training

Research papers should be up to 16 pages long; Industrial
papers should be 12 pages long (full papers), or 2 pages long (short
papers). Short papers will be given shorter presentation slots.
The authors of selected best papers from the foundations track will be
invited to submit extended version to a special issue of the SoSyM journal
(with another review process).

Important dates for authors:

Abstract submission deadline: February 15, 2016 AoE
Papers submission deadline: March 1, 2016 AoE
Notification to authors: April 7, 2016
Camera ready versions due: April 28, 2016

The complete call for papers is available here in text and here as pdf.

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

Automatic Code Generation for Cross-platform, Multi-Device Mobile Apps. An Industrial Experience

With Aldo Bongio (WebRatio), Jordi Cabot (ICREA and UOC), Hamza Ed-douibi (EMN) and Eric Umuhoza (Politenico di Milano), we worked on a research on Automatic Code Generation for Cross-platform, Multi-Device Mobile Apps.

We presented our study at the MobileDeLi workshop, where we reported on a comparative study conducted to identify the best trade-offs between different automatic code generation strategies.
Here are the slides presented there:

We covered the following strategies by implementing them using different technologies and target platforms:

  1. PIM-to-Native Code (NC)
  2. PIM-to-PSM-to-NC
  3. PSM-to-NC.
  4. PIM-to-Cross Platform Code (CPC)
  5. PIM-to-Framework Specific Model (FSM)-to-CPC

Some additional details are available in this post by Eric on Jordi’s blog.

Our study showed that there is no approach better than others in absolute terms but provided useful guidelines (e.g. cross platform approaches are generally advisable for companies with limited resoures) that helped us to identify the best strategy for the WebRatio company in particular.

Obviously, further investigations are ongoing…

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

Webinar on WebRatio BPM Platform 8.4

I’m glad to share the video of the most recent webinar on WebRatio BPM Platform, the BPMN-based tool designed to support you in building high-end BPM Web and mobile Apps with a tailored User Experience. If you never experienced WebRatio BPM Platform, here is a summary of what you can do with it:

  •  DEVELOP WEB AND MOBILE APPS through prototypes, then change them as many times as you need. No more time wasted building mockups on paper.
  • NO VENDOR LOCK IN thanks to highly optimized generated code that is open, human readable and based on the most recent Java and JS frameworks.
  • DEFINE A CUSTOM WEB OR MOBILE FRONT END for your BPM App and create a customized user interface, giving every channel a different user experience.
  • SUPPORT YOUR USERS’ MOBILITY thanks to the mobile BPM capabilities that let you work on your BPM App on any device, desktop or mobile, and deliver a seamless user experience.
Discover more on the WebRatio site or watch the video of the webinar on YouTube:

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

Keynote speech on User Interaction Modeling at Modelsward 2015 in Angers

On February 10, 2015 I gave a keynote at Modelsward in Angers, France.

The speech focuses on the modeling of software UIs through graphical domain-specific languages and in particular shows the new standard adopted by OMG called IFML (Interaction Flow Modeling Language) at work. My presentation illustrates the basic concepts of IFML, presents the design best practices and integration with other modelling languages, and discusses some large-scale industrial experiences (also featuring quantitative measures of productivity) achieved through IFML and associated full code generation techniques.

The full video of my presentation (1 hour long, if you can endure it!) is available on Vimeo thanks to the Insticc service. See it here too:

The IFML book – OMG’s Interaction Flow Modeling Language explained

After almost one year of work, the result of our efforts finally came to light in late December 2014. Since it was almost Christmas time, we decided to wait 2014 for the launch. But now, here we are.
OMG Press and Morgan Kauffman published our book:

Interaction Flow Modeling Language:
Model-Driven UI Engineering of Web and Mobile Apps with IFML
Additionally, I can announce officially we will have a launch event at the next OMG meeting in Reston, VA, USA, in March 2015.
The book introduces the reader to the novel OMG standard Interaction Flow Modeling Language (IFML). Authors Marco Brambilla and Piero Fraternali are also authors of the IFML standard and wrote this book to explain the main concepts of the language. They effectively illustrate how IFML can be applied in practice to the specification and implementation of complex web and mobile applications, featuring rich interfaces, both browser based and native, client side components and widgets, and connections to data sources, business logic and services.
The book provides you with unique insight into the benefits of engineering web and mobile applications with an agile model driven approach. Concepts are explained through intuitive examples, drawn from real-world applications. The authors accompany you in the voyage from visual specifications of requirements to design and code production. The book distills more than twenty years of practice and provides a mix of methodological principles and concrete and immediately applicable techniques. Dr. Richard M. Soley, chairman of the OMG, wrote the foreword of the book.

You can buy the book in paperback (on Amazon or any other bookstore) or electronic format (Kindle on Amazon; PDF e-book on Elsevier store).

If you are looking for some basic introduction to model-driven engineering, you can check out this book: Model-Driven Software Engineering in Practice (by Brambilla, Cabot and Wimmer).

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

IFML – Interaction Flow Modeling Language 1.0 – My tutorial on UI and UX modeling & design at ICWE 2014

This year, ICWE – International Conference on Web Engineering, took place in Toulouse, France.

Given the upcoming adoption by the OMG – Object Management Group of IFML, I decided to give a tutorial on it there. IFML, the Interaction Flow Modeling Language (IFML) is designed for expressing content, user interaction and control behaviour of the front-end of software applications, as well as the binding to the persistence and business logic layers. IFML is the missing piece for modeling the front end of software applications and perfectly complements other modeling dimensions in broad system modeling projects. Therefore, IFML works best when integrated with other modeling languages in the MDA suite, such as UML and BPMN. This tutorial illustrates the basic concepts of IFML, presents the design best practices and integration with other modelling languages, and discusses some industrial experiences (also featuring quantitative measures of productivity) achieved by the companion tool WebRatio. At the end of the tutorial, attendees will get a general knowledge about IFML (they will be able to design simple models and to derive models from existing interfaces), will be able to associate front-end design with system modelling at large, will see the associated MDE tool WebRatio at work, and will get a glimpse of real-life industrial applications developed for large enterprises. This will let them appreciate the advantages of a model-driven development approach at work within large-scale industrial project.

Here are the slides of my tutorial:

And here are some pictures taken by some attendees:

 

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

IFML 1.0: Interaction Flow Modeling Language approved by the OMG

After three years of work, IFML 1.0 is finally approved by the OMG!
The Interaction Flow Modeling Language was actually adopted one year ago, in March 2013, as Beta specification by the Object Management Group (OMG). Since then, the IFML Finalization Task Force worked hard to bring the specification to perfection.

The Object Management Group (OMG) Architecture Board approves the new IFML 1.0 standard on March 2014 in Reston, VA
The OMG Architecture Board gathered for approval of IFML. Among others, you can see Andrew Watson (OMG), Juergen Boldt (OMG), and representatives of IBM, 88Solutions, Adaptive, Fujitsu,  PrismTech and others.

Along the path, we got valuable feedback from implementors of the standard, spanning DSL tool vendors implementing the notation, UML tool vendors implementing the UML profile, and our own developers at WebRatio implementing the commercial industry-strenght modeling tool and code generators, as well as a bunch of opensource IFML editors. We also got feedback from WebRatio customers, which contributed to improve the language notation too.

All this summed up to 77 issues formally submitted to the OMG and subsequently addressed by the task force. The specification document, as well as the machine readable files (XMIs) have been cleaned up and prepared for final publication.
As a last step, the finalized version of the standard has been presented at the ADTF and at the Architecture Board of the OMG during the March technical meeting in Reston, VA, USA.
Version 1.0 is now officially adopted by the OMG. It’s just a matter of a few weeks before the final, copyedited version of the specification will be officially available on the OMG servers.
For documentation purposes, here is a snapshot of the program
Meanwhile, you can have a look at the sneak preview of the final version of IFML. Further details are available on the official www.ifml.org site.

As Stefano Butti, CEO of WebRatio said, IFML is one of the three biggest leaps in WebRatio history (together with the move to the US and the selection of WebRatio as Gartner Cool Vendor). Other vendors have already declared interest and/or started developing some modeling solution based on IFML. We look forward to wide adoption of this new standard, thanks also to the integration with other modeling aspects such as business modeling (with BPMN) and system modeling (with UML, SoaML, SysML, …)!

At the Reston event we also gave away the first copies ever of the very nice IFML Cheat Sheet (or Quick Reference Guide) prepared by WebRatio based on the official specification document.
The cheat sheet is available for free on the learning portal of WebRatio.

IFML CheatSheet - Quick Reference Guide and examples
The IFML cheat sheet: Quick Reference Guide and Examples (on the back side, not shown here).

Here is a small photo gallery of the event location, the WebRatio booth and the program of the AB plenary where IFML was adopted.

Reston
WebRatio boothOMG AB agenda for March 2014

 

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

My new book on Model-Driven Software Engineering

Model-Driven Software Engineering in Practice. Book cover
Model-Driven Software Engineering in Practice.
See more on www.mdse-book.com.

I’m really proud to announce that a huge joint effort with Jordi Cabot and Manuel Wimmer has finnally reached his end. Our new book on model-driven software engineering, on which we have been working for almost one year, is finally published!

First of all, I wish to extend my thanks to my coauthors for the wonderful teamwork and to Richard Soley, OMG Chairman, who accepted to write the foreword of the book. I actually found it one of the most inspiring outlooks on the field I’ve read.

The book discusses how model-based approaches can improve the daily practice of software professionals. Model-Driven Software Engineering (MDSE) or, simply, Model-Driven Engineering (MDE) practices have proved to increase efficiency and effectiveness in software development, as demonstrated by various quantitative and qualitative studies. MDSE adoption in the software industry is foreseen to grow exponentially in the near future, e.g., due to the convergence of software development and business analysis.

The aim of this book is to provide you with an agile and flexible tool to introduce you to the MDSE world.

This allows you to quickly understand its basic principles and techniques and to choose the right set of MDSE instruments for your needs so that you can start to benefit from MDSE right away.
As such, the book is not addressing only the hard-core software modelers, but also BPM practitioners, enterprise system consultants and analysts, and so on. Indeed, the book is targeted to a diverse set of readers, spanning: professionals, CTOs, CIOs, and IT team managers that need to have a bird’s eye vision on the matter, so as to take the appropriate decisions when it comes to choosing the best development techniques for their company or team; software and business analysts, developers, or designers that expect to use MDSE for improving everyday work productivity, either by applying the basic modeling techniques and notations or by defining new domain-specific modeling languages and applying end-to-end MDSE practices in the software factory; and academic teachers and students to address undergrad and postgrad courses on MDSE.

The book is organized into two main parts.

The first part discusses the foundations of MDSE in terms of basic concepts (i.e., models and transformations), driving principles, application scenarios and current standards, like the well-known MDA initiative proposed by OMG (Object Management Group) as well as the practices on how to integrate MDSE in existing development processes.

The second part deals with the technical aspects of MDSE, spanning from the basics on when and how to build a domain-specific modeling language, to the description of Model-to-Text and Model-to-Model transformations, and the tools that support the management of MDSE projects.

In addition to the contents of the book, more resources are provided on the book’s website we are currently setting up. There you can find the detailed TOC, the sources of the examples presented in the book, and the teaching materials we will build to support training activities based on the book.

If you want to buy the Model-Driven Software Engineering in Practice book, you can find it on Amazon or on the Morgan&Claypool website (printed and electronic versions available).

If you read and like the book, we will be glad if you post a review on Amazon!

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