18 research outputs found
Bridging Proprietary Modelling and Open-Source Model Management Tools : The Case of PTC Integrity Modeller and Epsilon
While the majority of research on Model-Based Software Engineering revolves around open-source modelling frameworks such as EMF, the use of commercial and closed-source modelling tools such as RSA, Rhapsody, MagicDraw and PTC Integrity Modeller appears to be the norm in industry at present. This technical gap can prohibit industrial users from reaping the benefits of state-of-the-art research-based tools in their practice. In this paper, we discuss an attempt to bridge a proprietary UML modelling tool (PTC Integrity Modeller), which is used for model-based development of safety-critical systems at Rolls-Royce, with an open-source family of languages for automated model management (Epsilon). We present the architecture of our solution, the challenges we encountered in developing it, and a performance comparison against the tool's built-in scripting interface
Synthesis of Execution Plans for the QVT Core Language
Model transformation languages (MTLs) are important for Model Driven Engineering as they allow the automation of the engineering design process of hardware and software products, in particular at the preliminary and detailed design phases. However, the theories from compiler optimization have not been reused substantively in the development of MTLs. This makes the challenges associated with the implementation of declarative MTLs harder to overcome, in particular with respect to the synthesis of the execution plan (a representation of the control component of the transformation
algorithm). The QVT Core MTL is a declarative language, part of a set of standards proposed by the Object Management Group® in order to support the adoption of Model Driven Engineering (MDE). This research presents how instruction scheduling theories can be used for the synthesis of execution plans, in particular for the QVT Core language. The main contributions are a novel approach for performing data dependence analysis on the QVT Core language and its use for the synthesis of execution plans, and the application of metaheuristics to solve the scheduling problem inherent to the synthesis of execution plans. The research demonstrated the feasibility of applying compiler optimization techniques in the design of MTLs and provides a methodology that can be used to construct effi cient execution plans that result in correct transformations. The performance gains and correctness will help the widespread use of the QVT Core language and encourage the adoption of compiler optimization techniques in the implementation of other MTLs
Towards hybrid model persistence
Change-based persistence has the potential to support faster and more accurate model comparison, merging, as well as a range of analytics activities. However, reconstructing the state of a model by replaying its editing history every time the model needs to be queried or modified can get increasingly expensive as the model grows in size. In this work, we integrate change-based and state-based persistence mechanisms in a hybrid model persistence approach that delivers the best of both worlds. In this paper, we present the design of our hybrid model persistence approach and report on its impact on time and memory footprint for model loading, saving, and storage space usage
Towards efficient comparison of change-based models
Comparison of large models can be time-consuming since every element has to be visited, matched, and compared with its respective element in other models. This can result in bottlenecks in collaborative modelling environments, where identifying differences between two versions of a model is desirable. Reducing the comparison process to only the elements that have been modified since a previous known state (e.g., previous version) could significantly reduce the time required for large model comparison. This paper presents how change-based persistence can be used to localise the comparison of models so that only elements affected by recent changes are compared and to substantially reduce comparison and differencing time (up to 90% in some experiments) compared to state-based model comparison
Addressing the shortcomings of commercial-of-the-shelf model-to-model transformations with open-source tools; from SysML to AUTOSAR
Model-Based Systems Engineering (MBSE) is a widely adopted approach to managing the complexity of modern cyber physical systems, including automotive systems.
In the domain of automotive engineering, it is common for engineers to use a variety of languages, at various levels of abstraction, to provide diverse and concrete perspectives on a system.
However, a significant incompatibility challenge arises due to weak or nonexistent integration among these languages.
In some cases, these challenges can be addressed by using commercial off the shelf (COTS) model-to-model (M2M) transformation tools.
However, in certain cases these tools have semantic and technical limitations that hinder the development process, produce sub-optimal results, and generate trace information in a proprietary format.
In this paper, we present how the same transformation can be implemented using an open-source tool.
First, we discuss the technical limitations and present how the open-source tool provides better development support.
Then, we present the results of running both implementations for a set of test models and show that the open-source implementation provides more detailed output models and produces more fine-grained traceability data.
By using the open-source implementation, we reduce the development effort, produce output that is better suited for purpose and generate trace information that can be easily consumed in other tools
Model-based development of engine control systems: experiences and lessons learnt
Rolls-Royce Control Systems supplies engine control and monitoring systems for aviation applications, and is required to design, certify, and deliver these to the highest level of safety
assurance. To allow Rolls-Royce to develop safe and robust systems, which continue to increase in complexity, model-based techniques are now a critical part of the software development process. In this paper, we discuss the experiences, challenges and lessons learnt when developing a bespoke domain-specific modelling workbench based on open-source modelling technologies including the Eclipse Modelling Framework (EMF), Xtext,
Sirius and Epsilon. This modelling workbench will be used to architect and integrate the software for all future Rolls-Royce engine control and monitoring systems
Runtime translation of OCL-like statements on Simulink models : Expanding domains and optimising queries
Open-source model management frameworks such as OCL and ATL tend to focus on manipulating models built atop the Eclipse Modelling Framework (EMF), a de facto standard for domain specific modelling. MATLAB Simulink is a widely used proprietary modelling framework for dynamic systems that is built atop an entirely different technical stack to EMF. To leverage the facilities of open-source model management frameworks with Simulink models, these can be transformed into an EMF-compatible representation. Downsides of this approach include the synchronisation of the native Simulink model and its EMF representation as they evolve; the completeness of the EMF representation, and the transformation cost which can be crippling for large Simulink models. We propose an alternative approach to bridge Simulink models with open-source model management frameworks that uses an “on-the-fly” translation of model management constructs into MATLAB statements. Our approach does not require an EMF representation and can mitigate the cost of the upfront transformation on large models. To evaluate both approaches we measure the performance of a model validation process with Epsilon (a model management framework) on a sample of large Simulink models available on GitHub. Our previous results suggest that, with our approach, the total validation time can be reduced by up to 80%. In this paper, we expand our approach to support the management of Simulink requirements and dictionaries, and we improve the approach to perform queries on collections of model elements more efficiently. We demonstrate the use of the Simulink requirements and dictionaries with a case study and we evaluate the optimisations on collection queries with an experiment that compares the performance of a set of queries on models with different sizes. Our results suggest an improvement by up to 99% on some queries
Model-Based Development of Engine Control Systems : Experiences and Lessons Learnt
Rolls-Royce Control Systems supplies engine control and monitoring systems for aviation applications, and is required to design, certify, and deliver these to the highest level of safety
assurance. To allow Rolls-Royce to develop safe and robust systems, which continue to increase in complexity, model-based techniques are now a critical part of the software development process. In this paper, we discuss the experiences, challenges and lessons learnt when developing a bespoke domain-specific modelling workbench based on open-source modelling technologies including the Eclipse Modelling Framework (EMF), Xtext,
Sirius and Epsilon. This modelling workbench will be used to architect and integrate the software for all future Rolls-Royce engine control and monitoring systems
