1 Introduction

The IEEE/ACM International Conference on Model Driven Engineering Languages and Systems (MODELS) serves as a venue for researchers and practitioners to share recent advances and practices in the area of model-based software and system engineering (MBE including MBSE). The 22nd edition of the conference, i.e., MODELS 2019, took place in Munich, Germany, with the overall aim to provide a platform for communicating advances in the foundations of MBE, and its innovative applications in engineering complex software systems, for sharing experiences of developing solutions particularly for handling properties such as uncertainty and robustness, by integrating machine learning and AI techniques when needed. A total of 114 papers were submitted, with 81 papers submitted to the Foundations Track (of which 18 were accepted) and 33 to the Practice and Innovation Track (of which 12 were accepted). Together, both tracks had an acceptance rate of 26%. Following the tradition of previous years, we selected and invited papers with the highest scores and reviews for this special section. These papers were extended according to the relevant SoSyM requirements and went through the SoSyM review process for the journal publication. Authors received anonymous feedback in two or three rounds of reviewing from three expert reviewers per paper. All in all, eleven submissions form the special section, as we discuss below.

2 Selected papers

We classify the eleven papers included in this special section into two categories: (1) metamodeling and model transformations, and (2) domain and application specific MBE. The four papers (to be described below) in the first category provide insights on classifying metamodels with machine learning, promoting model checking tools in system engineering, promoting search-based model engineering, and enabling Simulink model queries and management. The seven papers included in the category of domain and application specific MBE describe MBE solutions crossing various domains and applications: content management, automotive, avionics, civil engineering, critical software system, robotics. Altogether, they are representative examples of the diversity, depth, and maturity of the current research in MBE. A summary of each paper is described below.

2.1 Metamodeling and model transformations

The paper Evaluation of a machine learning classifier for metamodels by Phuong T. Nguyen, Juri Di Rocco, Ludovico Iovino, Davide Di Ruscio, and Alfonso Pierantonio presents an evaluation of AURORA, which is a machine learning classifier for categorizing metamodels. The work was motivated by the observation that good classifications of metamodels can boost their visibility and their misclassifications hinder their reachability and reusability. Experiments were conducted to compare AURORA with two other baseline algorithms and results show that AURORA outperformed them in terms of accuracy, precision, etc.

To facilitate the use of model checking tools in system engineering, the paper Unified verification and monitoring of executable UML specifications: a transformation-free approach by Valentin Besnard, Ciprian Teodorov, Frédéric Jouault, Matthias Brun, and Philippe Dhaussy describes a UML model interpreter to transform software requirements into UML state machines. With this interpreter, one can detect issues at the early phase of the system development and facilitate the detection of property violations with model checking or runtime monitoring. The approach was evaluated on the user interface model of a cruise control system and obtained results show that the proposed approach is effective and only introduced a small portion of monitoring cost.

The paper Automatic generation of atomic multiplicity preserving search operators for search-based model engineering by Alexandru Burdusel, Steffen Zschaler, and Stefan John presents an approach to automatically generate mutation operators, aiming to reduce manual effort required to specify an optimisation problem and reduce the complexity of implementing efficient meta-heuristic search mutation operators. Generated mutation operators are realised as model transformation rules, i.e., editing and repairing operations. The proposed approach was evaluated with a set of case studies. Results show that the proposed approach was able to generate search operators that are comparable with manually specified ones.

Considering that the Eclipse Modeling Framework (EMF) is commonly applied in open-source model management frameworks but MATLAB Simulink models are not compatible with EMF, the paper Runtime translation of OCL-like statements on Simulink models: Expanding domains and optimising queries by Beatriz A. Sanchez, Athanasios Zolotas, Horacio Hoyos Rodriguez, Dimitris Kolovos, Richard F. Paige, Justin C. Cooper, and Jason Hampson presents a on-the-fly translation of model management constructs into MATLAB statements. The advantage of the proposed approach is that it does not require an EMF representation of Simulink models and consequently reduces the cost of large model transformation. Their evaluation results show that for some model queries, the performance of their approach was improved up to 99%.

2.2 Domain and application specific MBE

The paper Applying MDD in the content management system domain: Scenarios, tooling, and a mixed-method empirical assessment by Dennis Priefer, Wolf Rost, Daniel Strüber, Gabriele Taentzer, and Peter Kneisel, presents a model-driven development approach, named as JooMDD, for developing content management systems, along with an empirical study assessing the cost-effectiveness of JooMDD, including a controlled experiment, a field experiment, and three case studies. Results of the empirical study show that JooMDD was able to increase both the productivity of the development and also the quality of resulting systems. Also, importantly, the authors demonstrated that JooMDD can seamlessly fit into existing tool environments and processes, which is very important to achieve a high practical usefulness.

Based on the observation that existing automotive software architectures often have strongly coupled software components communicating over the onboard communication network, the paper Model-based resource analysis and synthesis of service-oriented automotive software architectures by Stefan Kugele, Philipp Obergfell, and Eric Sax suggests the adoption of service-oriented architecture (SOA) to establish dynamic communication of software components at runtime. The paper presents a platform-independent metamodel for SOA, a methodology for deploying platform-independent models on a centralized electric/electronic (E/E) architecture, transitioning to a platform-specific process, which aligns to the AUTOSAR Adaptive standard. A prototype tool was implemented, the proposed approach was evaluated, and positive results were demonstrated.

The paper Testing cockpit display systems of aircraft using a model-based approach by Hassan Sartaj, Muhammad Zohaib Iqbal, and Uzair Khan describes an MBE approach for automatically testing cockpit display systems (CDS) in the avionics domain. The proposed approach focuses on two levels of testing: 1) checking if CDS work properly, and 2) validating that various components of CDS are properly integrated. The proposed approach is composed of a UML profile for annotating CDS domain concepts. Models developed with this UML profile were then used as the input to support the automated testing process. The approach was evaluated with two case studies and major faults were detected during the testing.

Considering that civil engineering and architecture informatics produce models with domain-specific characteristics, the paper Model-driven engineering city spaces via bidirectional model transformations, by Ennio Visconti, Christos Tsigkanos, Zhenjiang Hu, and Carlo Ghezzi proposes a model-based development approach, which is based on the CityGML standard (for specifying virtual 3D city models) and bidirectional model transformations (implemented as a tool, named TOPOCITY), for facilitating model analyses and change propagations. The approach was evaluated with a real-world city model.

The paper Guided architecture trade space exploration: fusing model-based engineering and design by shopping by Sam Procter and Lutz Wrage presents an approach, named GATSE, which bridges model-based system engineering (MBSE) with design space exploration (e.g., with search algorithms), for engineering critical software systems in the context of dealing with exploring design space. More specifically, GATSE connects OSATE (an open-source modeling environment for working with the Architecture Analysis and Design Language (AADL)) with the ARL Trade Space Space Visualizer (ATSV), an existing design space exploration tool. GATSE was demonstrated with a case from the avionics domain, with the aim to illustrate GATSE’s support on design space exploration.

The paper Bootstrapping MDE development from ROS manual code: Part 2 - Model generation and leveraging models at runtime by Nadia Hammoudeh Garcia, Harshavardhan Deshpande, André Santos, Björn Kahl, and Mirko Bordignon presents one method for automated generation of models from manually constructed artifacts through static code analysis, and another model generation approach via monitoring a running system, with the ultimate aim of promoting MBE in robotics software development. The proposed methods were evaluated with a large Robot Operating System (ROS) application and illustrated with a use case based on a commercially deployed service robot.

The paper Modeling data protection and privacy: application and experience with GDPR by Damiano Torre, Mauricio Alferez, Ghanem Soltana, Mehrdad Sabetzadeh, and Lionel Briand proposes a model-based approach for enabling automated General Data Protection Regulation (GDPR) compliance checking. The approach is composed of a generic model of GDPR specified in UML, 35 compliance rules specified with plain English and Object Constraint Language (OCL), and strategies for specializing the generic model for different contexts.