The orchestrator is responsible for runtime coordination between different components in the cosimulation deployment.
One important task will be the alignment of the minimal delays of the simulators connected: This information in the worst case is only available after the models have been instantiated.
Additionally this component would also be the controller of the starting / stopping and pausing behavior.
This task details the implementation work
based on a plan should do something
Tasks
[x] Implement the stand alone orchestrator application, that can be started in a subprocess
[x] Functionality for service components registry and discovery
[x] Subprocessing queue to receive steering commands
[x] manage queues for communicating with simulation applications
[x] receive minimal delays, decide on minimum and distribute to all applications
[x] state machine to control simulation progress and (local and global) states
[x] Broadcast init start stop commands
[x] Monitor local and global states and system health and statuses
[x] Signal handling
[x] Router closely connected to the state machine to send communication endpoints to correct simulator
nice to have:
[x] Send / receive communication endpoint information and route to the correct simulator
Summary
The orchestrator is responsible for runtime coordination between different components in the cosimulation deployment. One important task will be the alignment of the minimal delays of the simulators connected: This information in the worst case is only available after the models have been instantiated. Additionally this component would also be the controller of the starting / stopping and pausing behavior.
This task details the implementation work
based on a plan should do something
Tasks
nice to have:
Requirements
Acceptance criteria