This document defines a technical framework for connecting simulators aiming to facilitate interoperability between multiple stand-alone simulators, in order to jointly create and maintain a common simulation space. It specifies infrastructure and accompanied protocol parameters, common simulation message formats, and a set of services or tools facilitating the common simulation space functionalities. This document is intended to be used by system integrators and developers of individual simulators who jointly want to use an interoperability framework to share (parts of) their own simulation domain with simulators from another domain.
The aim for this CEN Workshop Agreement (CWA) is to provide a solid foundation of architectural guidelines to be used for jointly configuring a common simulation space. This CWA does not have the aim to closely integrate connected applications together. The general vision is that simulators are created for one or more specific domain knowledge areas with their own granularity, boundaries and purposes. To closely integrate these simulators would mean to integrate these domains as well, most likely causing irredeemable conflicts in the individual granularities, boundaries and purposes. In order to maintain individuality of the simulators, a common simulation space is providing a framework for communication, based on a minimum commonality of the data accepted and produced by the individual simulators and an event-driven design philosophy.
The document provides a repository of protocols and associated message formats to facilitate elementary interaction processes for simulators to function inside a common simulation space. To provide a better understanding of the proposed guidelines, this CWA also provides a repository of example interactions between simulators connected to a common simulation space. These examples are not described to limit the use of this document but are carefully chosen to reflect the most common types of interaction simulators would be expected to encounter when using a common simulation space. Each use case consists of a brief description of its intention, accompanied with a scenario description to provide an example for this use case. Based on this scenario, the desired information exchange flow and the required guidelines, messages, infrastructure and services to implement this flow are defined. Please note that the scenarios used inside each use case can be easily translated to other topics or configurations that serve the same purpose of the use case.
It is not the aim of this CWA to impose one global and general common simulation space where all interested simulators have to connect to. Based on for example the needs from an exercise, experiment or operational setup, a specific common simulation space should be configured. This allows more flexibility for the simulators to find common ground for sharing domain specific knowledge on a case-by-case basis. In order to ensure flexibility to fit the specific interoperability needs between simulators, the architectural guidelines posed in this document are categorized per interaction allowing developers to jointly decide to implement the attached protocols and message formats if required. If an interaction (e.g. change of ownership, updates of areas) isn’t necessary for the configured common simulation space or isn’t relevant for a specific simulator, its implementation is not mandatory.
Although numerous parties were involved in defining the architectural guidelines, it is inevitable to find a specific (future) domain and/or interaction that does not fit in the described architectural guidelines. Therefore, these guidelines focus on the elementary interaction processes, while supporting customization and expansion to fit specific interoperability needs. Because this CWA stresses the importance of a joint process of design and configuration , whenever the current architectural guidelines do not, it is encouraged to add new protocols and/or message formats that fit the need of a specific common simulation space.