Automating Simulation Execution in MBSE with MDA |
Keywords: Simulation, DEVS, MBSE, MDA, MOF, UML, SysML, QVT, XMI, XSLT
|
During the system development process, several models of the system are constructed and utilized in different software tools, used by different people for different system development activities. The transition from a model version to another usually involves significant human effort, moderating the efficiency, effectiveness and robustness of the overall process.
With Model-Based Systems Engineering (MBSE), a central system model is proposed to address the need for a common point of reference for different engineering activities that is missing in document-based systems engineering approaches. Systems Modelling Language (OMG SysML) is the prevailing standard language for the definition of central, integrated system models. However, actual utilization of the central system model in different engineering activities remains a challenge, due to the diversity of considerations, approaches, special purpose languages and supporting tools.
We address this challenge, in regard with system model evaluation activity via simulation, utilizing Model-Driven Architecture (MDA) concepts and tools.
We propose a methodology that delivers automated simulation model generation and simulation execution from the system model, as illustrated in the following figure. The integrated system model is transformed to high-level simulation models (Platform Independent Models - PIM) that are further transformed to executable simulation code (Platform Specific Models - PSM).
With Model-Based Systems Engineering (MBSE), a central system model is proposed to address the need for a common point of reference for different engineering activities that is missing in document-based systems engineering approaches. Systems Modelling Language (OMG SysML) is the prevailing standard language for the definition of central, integrated system models. However, actual utilization of the central system model in different engineering activities remains a challenge, due to the diversity of considerations, approaches, special purpose languages and supporting tools.
We address this challenge, in regard with system model evaluation activity via simulation, utilizing Model-Driven Architecture (MDA) concepts and tools.
We propose a methodology that delivers automated simulation model generation and simulation execution from the system model, as illustrated in the following figure. The integrated system model is transformed to high-level simulation models (Platform Independent Models - PIM) that are further transformed to executable simulation code (Platform Specific Models - PSM).
Simulation Execution from Enriched System models
The proposed goal may be achieved by properly layering and organizing the modelling infrastructure, as shown in the following figure. SysML is a UML profile, which is defined in terms of the Meta-Object Facility (MOF). Simulation properties may be complemented in the system model, by further extending SysML. This allows the definition of Enriched System Descriptions with simulation properties. Regarding simulation models, a respective MOF meta-model must be defined to enable the generation of simulation models from enriched system models. As MOF is the common infrastructure for system and simulation models, standard model transformation languages and tools may be used for this purpose. Since such high-level, declarative simulation models may not be directly executable, further transformations/adaptations may be required to generate executable simulation code for specific simulators.
The approach requires the definition of a framework, comprising of:
- A simulation-specific profile that extends SysML
- A high-level ,simulation-specific MOF meta-model
- A standard QVT transformation for generating simulation models from enriched system models
- A simple transformation/adaptation of high-level simulation models to simulation executable models
Simulation execution from Simulation-Agnostic, Domain-Specific System models
The framework described above enables the enrichment and simulation of system models, regardless of their domain. However, in some cases system model enrichment may be time consuming and simulation library components, describing behavioural aspects for the different kinds of system model elements, may be available. In these cases, utilization of existing system models and available simulation components seems more efficient. In order to address this aspect, we have proposed an alternative approach, where domain-specific system models are transformed to executable simulation code. A domain-specific extension of the framework described above is required to be developed for the application of the approach in each domain.
In this case, a new transformation of domain-specific system models to simulation models that utilise the existing simulation library components are required to be defined. However, once defined, they are available for any system model of the domain, enabling its direct simulation. This approach focuses on capturing domain expertise (transformation) and simulation expertise (library components) in the framework, that is usable thereafter.
This framework has been successfully developed and applied in the domains of Enterprise Information Systems (EIS) and Public Transportation Systems design.
In this case, a new transformation of domain-specific system models to simulation models that utilise the existing simulation library components are required to be defined. However, once defined, they are available for any system model of the domain, enabling its direct simulation. This approach focuses on capturing domain expertise (transformation) and simulation expertise (library components) in the framework, that is usable thereafter.
This framework has been successfully developed and applied in the domains of Enterprise Information Systems (EIS) and Public Transportation Systems design.
Framework Artefacts
Domain Independent Artefacts:
- DEVS4SysML profile for MagicDraw modelling tool (devs_sysml.mdzip)
- DEVS MOF-Ecore meta-model (devs_mm.ecore)
- Simulation results meta-model (simulationresults.ecore)
- QVT-R transformation of SysML4DEVS models to DEVS models (devssysml2devsmm.qvt)
- XSLT transformation of DEVS models to XLSC DEVS executable code (devs_xmi_2_xlsc.xslt)
- XSLT transformation of DEVS models to DEVSJava executable code (devsmm2devsjava.xsl)
- Enterprise Information Systems (EIS):
- SysML profile for EIS
- QVT-R transformation of SysML4EIS models to DEVS models (eis2devsmm.qvt)
- Public Transportation Systems:
- SysML profile for Transportation Systems
- QVT transformation of SysML4Transportation models to DEVS models
Other supporting Files/Media
- Video of sample system model definition, using the SysML4DEVS profile (devs_sysml.avi)
- Video of sample QVT-R transformation of SysML4DEVS model to DEVS model (qvt_transformation.avi)
- Video of sample transformation of DEVS model to XLSC and simulation execution (transformation_to_xlsc_execution.avi)