Perform joint simulation


This solution method allows the designer to evaluate the behaviour of a system of systems by running a simulation of a model of the Constituent Systems and of the SoS developed in UPDM or other FMU capable tools, and exported towards the Tool-Net.

Initial Situation

Before performing joint simulation, the Constituent Systems must have been modelled using a behavioural description that can be exported as a Functional Mock-Up Unit (FMU). Potentially the Constituent Systems must be abstracted, in order to achieve sufficient simulation performance. The SoS as a whole should also be modelled as a block diagram. The user must also configure the simulation by creating the appropriate configuration and trace files. For instance, the designer might define the behaviour of the CSs using statecharts in UPDM, and define their connections also in UPDM. The models are imported in the simulator through the Tool-Net, and executed to obtain the simulation traces.

The solution methods “Model SoS” and “Abstract Constituent System model” must therefore precede joint simulation. If joint simulation is used to evaluate architecture variants, the architecture alternatives must also have been generated.

Expected Result

The result of the simulation is a set of traces for the chosen elements of the SoS. The evolution of the traces can be graphically displayed by the simulation tool. The simulation traces provide information on the expected functionality of the SoS under the specified environment conditions. The simulation can also be used to extract performance metrics for the SoS, which can be used to evaluate architecture alternatives.

Required Tools

Joint simulation is performed using the DESYRE tool. The models must be available through the Tool-Net, and must be specified using a modelling tool that is capable of generating FMUs. For instance, the specification could be developed in IBM Rhapsody.

·         Tool-Net

·         Rhapsody with FMU export, or other modelling tools with FMU export (e.g., Dymola)

·         System architect

·         DESYRE

·         Architecture generation (for exploring system evolution)

Figure 50: Tool Flow: Perform Joint Simulation


Figure 51shows the sequence of activities and solution methods required to perform joint simulation. They are described briefly below.

Figure 51: Activity diagram, perform joint simulation

Model SoS

This is the solution method Model SoS described in section 5.1.  The model of the SoS must specify how the Constituent Systems are interconnected and what information they exchanged in order to properly interact. This activity can be carried out using UPDM in Rhapsody, by developing an Internal Block Diagram that connects the Constituent Systems through a set of ports.

Export SoS model as Functional Mock-Up Units (FMUs)

Push the SoS model to the DANSE Tool-Net. The models must be made available to the rest of the DANSE flow by using the Tool-Net mediation.

Abstract Constituent System Models

This is the solution method Abstract CS Models described in section 5.2.  The constituent systems can be modelled for instance in UPDM in Rhapsody, by taking advantage of the statecharts view, which provides an executable specification.

Export Constituent Systems as Functional Mock-Up Units (FMUs)

Export of the CS models is done using the export capabilities of the modelling tool. The FMU is a standard format for executable specifications that can be imported and simulated by the DESYRE simulation tool.  Where possible, the export can occur through the Tool-Net SMC.

Import models to DESYRE

Retrieve the CS and SoS FMU models in DESYRE from the Tool-Net.

Translate the SoS model to Slang using the import facility in DESYRE. The model of the SoS must be translated into a format that is compatible with the simulator. This occurs during the import process, by translating the SoS model into the Slang language.

Create simulation configuration

Create a simulation configuration file into the DESYRE workspace to specify the SoS model to be simulated, simulation time, number of independent simulation runs, fault injection, and so on. These parameters are essential for the correct execution of the simulation, and allow the designer to customise the simulation infrastructure according to the objective of the analysis.

Create trace configuration

Create a trace configuration file that specifies which elements of the SoS model shall be traced by the simulator (by default, all CS input/outputs are traced). The designer must specify the signals of interest in the SoS, whose evolution must be recorded and then displayed by the simulator.

Run simulation

Run the simulation in the DESYRE environment.  Evaluate the simulation results. At the end of the simulation, traces are provided to the DESYRE results visualization that will plot a diagram for each element the user has decided to trace. On the basis of the signal evolution, the designer can evaluate whether the system satisfies the required constraints.


The accuracy of the simulation depends critically on the quality of the models. The performance of the simulation, and therefore the number of simulations that can be run, depends on the complexity of the models. The amount of data to be traced may also affect the performance of the simulation.

Follow-up Solution Methods

Joint simulation is a pre-condition for statistical model checking as it provides the required simulation traces. Joint simulation is also the central element for all methods that deal with the evaluation of emergent behaviours. Joint simulation may also be used in the context of the evaluation of dynamicity and for the evaluation of alternative architectural solutions.
Home About Technical Approach Perform joint simulation