Blended modeling is an emerging trend in Model-Driven Engineering for complex systems. It enables the modeling of diverse system-related aspects through multiple editing notations seamlessly, interchangeably, and collaboratively. Blended modeling is expected to significantly improve productivity and user-experience for multiple stakeholders. Case-specific solutions providing blended modeling, to a certain extent, for domain specific languages have been provided in the last few years. Nevertheless, a generic and language-agnostic full-fledged blended modeling framework has not been proposed yet.
In this paper, we propose a comprehensive and generic blended modeling framework prototype that provides automated mechanism to generate graphical and textual notations from a given domain-specific modeling language. Moreover, it offers a flexible editor to get expert’s feedback on the mapping between graphical and textual notations. The proposed prototype is validated through a proof-of-concept on the Portable test and Stimulus Standard use-case. Our initial results indicate that the proposed framework is capable of being applied in different application scenarios and dealing with multiple domain-specific modeling standards.
Blended modeling aims to improve the user experience of modeling activities by prioritizing the seamless interaction with models through multiple notations over the consistency of the models. Inconsistency tolerance, thus, becomes an important aspect in such settings. To understand the potential of current commercial and open-source modeling tools to support blended modeling, we have designed and carried out a systematic study. We identify challenges and opportunities in the tooling aspect of blended modeling. Specifically, we investigate the user-facing and implementation-related characteristics of existing modeling tools that already support multiple types of notations and map their support for other blended aspects, such as inconsistency tolerance, and elevated user experience. For the sake of completeness, we have conducted a multivocal study, encompassing an academic review, and grey literature review. We have reviewed nearly 5000 academic papers and nearly 1500 entries of grey literature. We have identified 133 candidate tools, and eventually selected 26 of them to represent the current spectrum of modeling tools.
Blended modeling aims to enhance the development of complex software-intensive systems by seamless integration of textual and graphical modeling. Manual provision of the synchronization transformations between notations is considered to be a tedious and error-prone task. Moreover, as synchronized languages and/or notations evolve, transformations become redundant as the implicit mappings they represent are no longer accurate. This research proposes a language-and notation-Agnostic solution for the automatic generation of synchronization transformations between arbitrary domain-specific modeling languages. We contribute with i) a mapping modeling language defined appositely for the definition of explicit mapping rules in a mapping model and ii) higher-order transformations for the automatic generation of synchronization transformations driven by mapping models. The approach is successfully validated against two use cases. © 2022 Owner/Author.
Blended modelling is an emerging trend in Model-Driven Engineering for complex software architectures. It enables the modelling of diverse architectural aspects through multiple editing notations seamlessly, interchangeably, and collaboratively. Blended modelling is expected to significantly improve productivity and user experience for multiple stakeholders. To manually architect and build a blended modelling environment is not trivial. To support architects in this task, in the scope of the ITEA3 BUMBLE project, we have designed and developed a blended modelling framework that aids architects in designing and semi-automatically generating blended modelling environments for architecting software.
The ever increasing complexity of modern software systems requires engineers to constantly raise the level of abstraction at which they operate to suppress the excessive complex details of real systems and develop efficient architectures. Model Driven Engineering has emerged as a paradigm that enables not only abstraction but also automation. UML, an industry de-facto standard for modelling software systems, has established itself as a diagram-based modelling language. However, focusing on only one specific notation limits human communication and the pool of available engineering tools. The results of our prior experiments support this claim and promote the seamless use of multiple notations to develop and manipulate models. In this paper we detail our efforts on the provision of a fully blended (i.e., graphical and textual) modelling environment for UML-RT state-machines in an industrial context. We report on the definition of a textual syntax and advanced textual editing for UML-RT state-machines as well as the provision of synchronization mechanisms between graphical and textual editors. © 2022, The Author(s), under exclusive license to Springer Nature Switzerland AG.
Interacting with a monolithic architecture model to describe the architecture of large-scale software-intensive systems can be a complex and daunting task. The plethora of various concerns being addressed in a single model can impede the ability of individual stakeholders to discern their aspects of relevance. Architectural views allow to spread the various concerns into multiple (smaller) models, each of which addresses a specific concern, thereby aiding architects to break down the complexity of the overall architecture. To enable that, the architectural language should be able to provide explicit separation of concerns, addressed by multiple and somehow separated language portions. For secure collaborative architecting, these portions should be equipped with access control mechanisms that ensure the integrity and confidentiality of the models.In this paper, we present our vision for the automated generation of portions of architectural (and more generically modeling) languages enhanced with access control mechanisms and co-evolution of the architectural portions in response to changes made to the base language.
Collaborative model-driven software engineering fosters efficient cooperation among stakeholders who collaborate on shared models. Yet, the involvement of multiple parties brings forth valid concerns about the confidentiality and integrity of shared information. Unrestricted access to such information, especially when not pertinent to individual responsibilities, poses significant risks, including unauthorized information exposure and potential harm to information integrity. This work proposes a dual-layered solution implemented as an open-source Eclipse plugin that leverages the role-based access control policy to ensure the confidentiality and integrity of model information in collaborative modeling environments. The first layer limits stakeholders' access to the shared model based on their specific roles, while the second layer refines this access by restricting manipulations to individual model elements. By ensuring that stakeholders access only the information pertinent to their roles and are authorized to manipulate such information in accordance with their expertise and responsibilities, this approach ensures the confidentiality and integrity of shared model information. Furthermore, it alleviates information overload for stakeholders by enabling them to focus only on the model information relevant to their specific roles, thereby enhancing the collaborative efforts.
Introduction: Blended modeling aims at boosting the development of complex multi-domain systems by enabling seamless multi-notation modeling. The synchronization mechanisms between notations are embodied in model transformations. Manually defining model transformations requires specific knowledge of transformation languages, and it is a time-consuming and error-prone task. Moreover, whenever any of the synchronized languages or notations evolves, those transformations become obsolete. Methods: In this paper, we propose an automated solution for generating synchronization transformations in an industrial setting.
Results: The approach entails i) the specification of mapping rules between two arbitrary domain-specific modeling languages leveraging a mapping modeling language, appositely defined for this purpose, and ii) the automatic generation of synchronization model transformations driven by the mapping rules.
Discussion: We validated the proposed approach in two use cases. Although our main goal was to provide a solution for synchronization between graphical and textual notations of UML-RT state machines, the proposed approach is language- and notation-agnostic.
The Unified Modeling Language for Real Time (UML-RT) is a UML-based domain-specific language for modelling real-time embedded systems. HCL RTist, a model-based development environment for creating complex, event-driven and real-time software with advanced automation features provided by HCL Technologies, provides advanced support for UML-RT. Historically, as for the majority of UML profiles, editing support for UML-RT has also mainly exploited graphical notations (e.g., composite component and state-machine diagrams). Nevertheless, our previous experiments with blended graphical and textual modelling showed that the seamless use of different notations (i.e., graphical and textual) can significantly boost the work of architects and modellers. The results of those experiments together with the exposed wish of RTist customers of being able to design software architectures and applications via multiple notations led us to initiate this work towards an automated support for blended modelling of UML-RT. In this paper we describe the first step of the work -- the effort of designing, implementing and integrating a textual notation for UML-RT state-machines in RTist.
The rapid development of Industry 4.0 and Industrial Cyber-Physical Systems is leading to the exponential growth of unprocessed volumes of data. Industrial cloud computing has great potential for providing the resources for processing this data. To be widely adopted, the cloud must ensure satisfactory levels of Qualityof Service (QoS). However, the lack of a standardized model of quality attributes hinders the assessmentof QoS levels. This paper provides a comprehensive systematically defined map of current research trends,results, and gaps in quality attributes and QoS in industrial cloud computing. An extract of the main insights is as follows: (i) the adoption of cloud technologies is closely related to performance indicators, however other quality attributes, such as security, are not considered as much as they should; (ii) solutions are most often not tailored to specific industrial application domains; (iii) research largely focuses on providing solutions with outsolid validation, unsuitable for effective and fruitful technology transfer.
Modelling tools traditionally focus on one specific editing notation (such as text, diagrams, tables or forms), providing additional visualisation-only notations. For software-intensive systems with heterogeneous components and entailing different domain-specific aspects and different stakeholders, one editing notation is too little and voids many modelling benefits. Seamless blended modelling, which allows stakeholders to freely choose and switch between graphical and textual notations, can greatly contribute to increase productivity as well as decrease costs and time to market. In this paper we describe our work in bridging two powerful (meta) modelling platforms: Eclipse Modeling Framework, for the definition of tree-based and graphical DSMLs and models conforming to them, and JetBrains MPS, for the description of textual DSMLs and the projectional manipulation of textual models via multiple views. The possibility to visualise and edit the same information in these two platforms, otherwise disjoint, can greatly boost communication between stakeholders, who can freely select their preferred notation or switch from one to the other at any time.