Space engineering - Simulation modelling platform

The document defines the requirements for the interfaces of simulation models between simulation
environments.

Raumfahrttechnik - Software-Modellierungs-Platform

Ingénierie Spatiale - Plateforme informatique de modèles de simulation

Vesoljska tehnika - Ploščadi za simulacijsko modeliranje

General Information

Status
Published
Public Enquiry End Date
31-Jul-2019
Publication Date
21-Jun-2020
Technical Committee
Current Stage
6060 - National Implementation/Publication (Adopted Project)
Start Date
18-Jun-2020
Due Date
23-Aug-2020
Completion Date
22-Jun-2020

Buy Standard

Standard
EN 16603-40-07:2020 - BARVE
English language
143 pages
sale 10% off
Preview
sale 10% off
Preview
e-Library read for
1 day
Draft
prEN 16603-40-07:2019 - BARVE
English language
134 pages
sale 10% off
Preview
sale 10% off
Preview
e-Library read for
1 day

Standards Content (Sample)

SLOVENSKI STANDARD
SIST EN 16603-40-07:2020
01-september-2020
Vesoljska tehnika - Ploščadi za simulacijsko modeliranje
Space engineering - Simulation modelling platform
Raumfahrttechnik - Software-Modellierungs-Platform
Ingénierie Spatiale - Plateforme informatique de modèles de simulation
Ta slovenski standard je istoveten z: EN 16603-40-07:2020
ICS:
49.140 Vesoljski sistemi in operacije Space systems and
operations
SIST EN 16603-40-07:2020 en,fr,de
2003-01.Slovenski inštitut za standardizacijo. Razmnoževanje celote ali delov tega standarda ni dovoljeno.

---------------------- Page: 1 ----------------------
SIST EN 16603-40-07:2020

---------------------- Page: 2 ----------------------
SIST EN 16603-40-07:2020


EUROPEAN STANDARD
EN 16603-40-07

NORME EUROPÉENNE

EUROPÄISCHE NORM
June 2020
ICS 49.140

English version

Space engineering - Simulation modelling platform
Ingénierie spatiale - Plateforme de modélisation pour Raumfahrttechnik - Teil 40-07: Modelliersoftware-
simulation Platform
This European Standard was approved by CEN on 17 May 2020.

CEN and CENELEC members are bound to comply with the CEN/CENELEC Internal Regulations which stipulate the conditions for
giving this European Standard the status of a national standard without any alteration. Up-to-date lists and bibliographical
references concerning such national standards may be obtained on application to the CEN-CENELEC Management Centre or to
any CEN and CENELEC member.

This European Standard exists in three official versions (English, French, German). A version in any other language made by
translation under the responsibility of a CEN and CENELEC member into its own language and notified to the CEN-CENELEC
Management Centre has the same status as the official versions.

CEN and CENELEC members are the national standards bodies and national electrotechnical committees of Austria, Belgium,
Bulgaria, Croatia, Cyprus, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Iceland, Ireland, Italy,
Latvia, Lithuania, Luxembourg, Malta, Netherlands, Norway, Poland, Portugal, Republic of North Macedonia, Romania, Serbia,
Slovakia, Slovenia, Spain, Sweden, Switzerland, Turkey and United Kingdom.
























CEN-CENELEC Management Centre:
Rue de la Science 23, B-1040 Brussels
© 2020 CEN/CENELEC All rights of exploitation in any form and by any means Ref. No. EN 16603-40-07:2020 E
reserved worldwide for CEN national Members and for
CENELEC Members.

---------------------- Page: 3 ----------------------
SIST EN 16603-40-07:2020
EN 16603-40-07:2020 (E)
Table of contents
European foreword . 7
Introduction . 8
1 Scope . 9
2 Normative references . 10
3 Terms, definitions and abbreviated terms . 11
3.1 Terms from other standards . 11
3.2 Terms specific to the present standard . 11
3.3 Abbreviated terms. 16
3.4 Nomenclature . 16
4 Principles . 17
4.1 Objectives . 17
4.2 Common Concepts and common types . 17
4.3 Architecture . 18
4.4 Time handling principle . 19
4.5 Simulation lifecycle . 20
4.6 Simulation method . 21
4.6.1 Discrete-event simulation (DES) . 21
4.6.2 Parallelization and distribution . 22
4.6.3 Inter component communication . 22
4.7 Models, Services and Components . 23
4.7.1 Objects . 23
4.7.2 Components. 25
4.7.3 Factories . 27
4.7.4 Models and Services . 27
4.8 Publication and Persistence . 28
4.9 Dynamic invocation . 29
4.10 Components meta data . 31
4.10.1 Catalogue . 31
4.10.2 Package . 31
2

---------------------- Page: 4 ----------------------
SIST EN 16603-40-07:2020
EN 16603-40-07:2020 (E)
4.10.3 Configuration . 32
4.11 Model exchanges considerations . 32
4.11.1 Overview . 32
4.11.2 SMP Bundle . 32
5 Interface requirements . 33
5.1 Common . 33
5.1.1 Primitive Types specification . 33
5.1.2 Time Kinds . 35
5.1.3 Path string . 36
5.1.4 Universally Unique Identifiers (UUID) . 37
5.1.5 Exception specification . 37
5.2 Components and Objects interfaces . 37
5.2.1 Object Specification (IObject) . 37
5.2.2 Collection Specification (ICollection) . 38
5.2.3 Component Specification . 39
5.2.4 Aggregation. 42
5.2.5 Composition . 45
5.2.6 Events . 47
5.2.7 Entry points . 50
5.2.8 Dynamic Invocation . 50
5.2.9 Persistence (IPersist) . 54
5.2.10 Failures . 55
5.2.11 Field interfaces . 56
5.2.12 Requirements on utilization of Simulation Environments interfaces by
components . 62
5.3 Simulation Environment interfaces . 63
5.3.1 Logger (ILogger interface) . 63
5.3.2 Time Keeper (ITimeKeeper) . 65
5.3.3 Scheduler (IScheduler) . 67
5.3.4 Event Manager (IEventManager) . 75
5.3.5 Resolver (IResolver) . 79
5.3.6 Link Registry (ILinkRegistry) . 80
5.3.7 Simulator (ISimulator) . 82
5.3.8 Persistence . 94
5.3.9 Publication . 95
5.3.10 Type Registry . 102
5.3.11 Component Factory (IFactory) . 107
3

---------------------- Page: 5 ----------------------
SIST EN 16603-40-07:2020
EN 16603-40-07:2020 (E)
5.4 Meta data . 108
5.4.1 Catalogue . 108
5.4.2 Package . 112
5.4.3 Configuration data . 112
6 Implementation mapping . 113
6.1 Catalogue to C++ . 113
6.1.1 Mapping templates . 113
6.1.2 Namespaces and files . 116
6.1.3 Element and Type Visibility Kind . 116
6.1.4 Mapping of elements . 117
6.1.5 Basic Value Types . 126
6.1.6 Compound Value Types . 128
6.1.7 Reference Types . 130
6.2 Package to library . 133
6.2.1 Mapping templates . 133
6.2.2 Common to Unix and Windows . 133
6.2.3 Unix (Shared object) . 134
6.2.4 Addendum for Windows Dynamic Link Library (DLL) . 135
6.2.5 SMP Bundle . 136
Annex A (normative) Catalogue file - DRD . 137
A.1 Catalogue DRD . 137
A.1.1 Requirement identification and source document . 137
A.1.2 Purpose and objective . 137
A.2 Expected response . 137
A.2.1 Scope and content . 137
A.2.2 Special remarks . 137
Annex B (normative) Package file - DRD . 138
B.1 Package DRD . 138
B.1.1 Requirement identification and source document . 138
B.1.2 Purpose and objective . 138
B.2 Expected response . 138
B.2.1 Scope and content . 138
B.2.2 Special remarks . 138
Annex C (normative) Configuration file - DRD . 139
C.1 Configuration DRD . 139
C.1.1 Requirement identification and source document . 139
4

---------------------- Page: 6 ----------------------
SIST EN 16603-40-07:2020
EN 16603-40-07:2020 (E)
C.1.2 Purpose and objective . 139
C.2 Expected response . 139
C.2.1 Scope and content . 139
C.2.2 Special remarks . 139
Annex D (normative) Manifest file - DRD . 140
D.1 Configuration DRD . 140
D.1.1 Requirement identification and source document . 140
D.1.2 Purpose and objective . 140
D.2 Expected response . 140
D.2.1 Scope and content . 140
D.2.2 Special remarks . 142
Bibliography . 143

Figures
Figure 4-1: Common Concepts and Type System . 18
Figure 4-2: SMP Architecture . 18
Figure 4-3: SMP State machine . 20
Figure 4-4: Object mechanisms . 24
Figure 4-5: Overview of components hierarchy . 25
Figure 4-6: Component Mechanisms . 26
Figure 4-7: Component State machine . 26
Figure 4-8: Sequence of calls for dynamic invocation . 30

Tables
Table 4-1: Overview of simulation states . 21
Table 4-2: ViewKind values . 28
Table 5-1: Primitive Types . 33
Table 5-2: Component states . 39
Table 5-3: Semantically equivalent types for connections . 61
Table 5-4: Default Log Message Kinds . 64
Table 5-5: Condition for emitting predefined global events . 78
Table 6-1: C++ declaration templates . 114
Table 6-2: C++ definition templates . 116
Table 6-3: C++ mapping for the Visibility kind attribute . 116
Table 6-4: C++ mapping of Association depending on ByPointer attribute. 119
Table 6-5: C++ mapping for the Direction kind attribute . 120
5

---------------------- Page: 7 ----------------------
SIST EN 16603-40-07:2020
EN 16603-40-07:2020 (E)
Table 6-6: C++ mapping for Property depending on ByPointer attribute . 121
Table 6-7: C++ mapping for the Operator attribute kinds . 124
Table 6-8: C++ declaration templates for packages . 133
Table D-1 : SMP Manifest Key . 141

6

---------------------- Page: 8 ----------------------
SIST EN 16603-40-07:2020
EN 16603-40-07:2020 (E)
European foreword
This document (EN 16603-40-07:2020) has been prepared by Technical
Committee CEN-CENELEC/TC 5 “Space”, the secretariat of which is held by
DIN.
This standard (EN 16603-40-07:2020) originates from ECSS-E-ST-40-07C.
This European Standard shall be given the status of a national standard, either
by publication of an identical text or by endorsement, at the latest by December
2020, and conflicting national standards shall be withdrawn at the latest by
December 2020.
Attention is drawn to the possibility that some of the elements of this document
may be the subject of patent rights. CEN [and/or CENELEC] shall not be held
responsible for identifying any or all such patent rights.
This document has been prepared under a standardization request given to
CEN by the European Commission and the European Free Trade Association.
This document has been developed to cover specifically space systems and has
therefore precedence over any EN covering the same scope but with a wider
domain of applicability (e.g. : aerospace).
According to the CEN-CENELEC Internal Regulations, the national standards
organizations of the following countries are bound to implement this European
Standard: Austria, Belgium, Bulgaria, Croatia, Cyprus, Czech Republic,
Denmark, Estonia, Finland, Former Yugoslav Republic of Macedonia, France,
Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia, Lithuania,
Luxembourg, Malta, Netherlands, Norway, Poland, Portugal, Romania, Serbia,
Slovakia, Slovenia, Spain, Sweden, Switzerland, Turkey and the United
Kingdom.
7

---------------------- Page: 9 ----------------------
SIST EN 16603-40-07:2020
EN 16603-40-07:2020 (E)
Introduction
Space programmes have developed simulation software for a number of years,
which are used for a variety of applications including analysis, engineering
operations preparation and training. Typically, different departments perform
developments of these simulators, running on several different platforms and
using different computer languages. A variety of subcontractors are involved in
these projects and as a result a wide range of simulation software are often
developed. This standard addresses the issues related to portability and reuse
of simulation models. It is based on the work performed by ESA in the
development of the Simulator Model Portability Standards SMP1 and SMP2
starting from the mid-end of the nineties.
This standard integrates the ECSS-E-ST-40 with additional requirements which
are specific to the development of simulation software. The formulation of this
standard takes into account:
• The existing ISO 9000 family of documents, and
• The Simulation Model Portability specification version 1.2.
The intended readership of this standard is the simulator software customer
and supplier.
8

---------------------- Page: 10 ----------------------
SIST EN 16603-40-07:2020
EN 16603-40-07:2020 (E)
1
Scope
ECSS-E-ST-40-07 is a standard based on ECSS-E-ST-40 for the engineering of
simulation software.
ECSS-E-ST-40-07 complements ECSS-E-ST-40 in being more specific to
simulation software. Simulation software include both Simulation
environments and simulation models. The standard enables the effective reuse
of simulation models within and between space projects and their stakeholders.
In particular, the standard supports model reuse across different simulation
environments and exchange between different organizations and missions.
This standard can be used as an additional standard to ECSS-E-ST-40 providing
the additional requirements which are specific to simulation software.
This standard may be tailored for the specific characteristic and constrains of a
space project in conformance with ECSS-S-ST-00.

Applicability
This standard lays down requirements for simulation software including both
Simulation environments and simulation models. The requirements cover
simulation models’ interfaces and simulation environment interfaces for the
purpose of model re-use and exchange to allow simulation models to be run in
any conformant simulation environment.
A consequence of being compliant to this standard for a model is the possibility
of being reused in several simulation facilities or even in several projects.
However, adherence to this standard does not imply or guarantees model
reusability, it is only a precondition. Other characteristics of the model, to be
defined outside this standard, such as its functional interfaces and behaviour,
its configuration data as well as quality, suitability and performance, etc. are
also heavily affecting the potential for a model to be reused. In addition,
agreements need to be reached on simulation environments compatibility,
model validation status as well as legal issues and export control restrictions.
Therefore, this standard enables but does not mandate, impose nor guarantee
successful model re-use and exchange.
Model reuse in this standard is meant both at source-code and binary level,
with the latter restricted to a fixed platform.
9

---------------------- Page: 11 ----------------------
SIST EN 16603-40-07:2020
EN 16603-40-07:2020 (E)
2
Normative references
The following normative documents contain provisions which, through
reference in this text, constitute provisions of this ECSS Standard. For dated
references, subsequent amendments to, or revision of any of these publications
do not apply. However, parties to agreements based on this ECSS Standard are
encouraged to investigate the possibility of applying the more recent editions of
the normative documents indicated below. For undated references, the latest
edition of the publication referred to applies.

EN reference Reference in text Title
EN 16601-00-01 ECSS-S-ST-00-01 ECSS system - Glossary of terms
EN 16603-40 ECSS-E-ST-40 Space engineering - Software general requirements
[SMP_FILES] ECSS_SMP_Issue1(2March2020).zip – SMP C++
Header files, SMP XML schemas and SMP Catalogue.
(Available from ECSS website)
https://www.w3.org/T XML schema specification
R/xmlschema11-2/
http://www.opengrou The UUID specification from Open Group.
p.org
https://www.osgi.org/ OSGi Specifications
developer/specificatio
ns/

10

---------------------- Page: 12 ----------------------
SIST EN 16603-40-07:2020
EN 16603-40-07:2020 (E)
3
Terms, definitions and abbreviated terms
3.1 Terms from other standards
a. For the purpose of this Standard, the terms and definitions from ECSS-S-
ST-00-01 and ECSS-E-ST-40 apply.
b. For the purpose of this Standard, the terms and definitions from
ECSS-E-ST-70 apply, in particular the following term:
1. mission
3.2 Terms specific to the present standard
In the following list of terms, underlined words are further defined in the same
list.
3.2.1 aggregate
relationship between two components implemented by storing their references
NOTE Each component in such a relationship keeps its
own lifecycle and it does not dependent on that
of other components.
3.2.2 association
relationship between two instances of any data-type, where each instance has
its own lifecycle and there is no owner
3.2.3 breakpoint
unambiguous state of a simulation
3.2.4 component
building block of a simulation that can be instantiated and that has a well-
defined contract to its environment
3.2.5 composite
component implementing composition
3.2.6 composition
hierarchical relationship where child component is destroyed if the parent
component is destroyed
11

---------------------- Page: 13 ----------------------
SIST EN 16603-40-07:2020
EN 16603-40-07:2020 (E)
3.2.7 configuration
specification of values for fields of components
3.2.8 constructor
specific operation of a component, bearing the same name of the component,
whose purpose is to allocate and build an instance of said component
3.2.9 consumer
component that can receive data in one of its input fields from an output field
of another component
3.2.10 container
typed collection of child components
3.2.11 contract
set of interfaces, operations, fields, entry points, event sinks, event sources and
all the associated constraints, used to interact with a component
3.2.12 data transfer
copy of value from an output field to an input field
3.2.13 entry point
operation without parameters that does not return a value, which can be added
to the scheduler or event manager service
3.2.14 epoch time
absolute time of the simulation
3.2.15 event
see “simulation event”
3.2.16 event manager
component that implements the IEventManager interface
NOTE The IEventManager interface is specified in
clause 5.3.4.
3.2.17 event sink
receiver of specific notifications, owned by a component and subscribed via a
subscription mechanism
3.2.18 event source
emitter of specific notifications, owned by a component and offering a
subscription mechanism
3.2.19 exception
non-recoverable error that can occur when calling into an operation or property
12

---------------------- Page: 14 ----------------------
SIST EN 16603-40-07:2020
EN 16603-40-07:2020 (E)
3.2.20 field
feature characterised by a value type and holding a value
3.2.21 input field
field explicitly marked for receiving values as a result of a data transfer
3.2.22 interface
named set of properties and operations
3.2.23 logger
component that implements the ILogger interface
NOTE The ILogger interface is specified in clause
5.3.1.
3.2.24 mission time
relative time measuring elapsed time from a mission specific point in time
3.2.25 model
component that implements the IModel interface
NOTE The IModel interface is specified in clause
5.2.3.2.
3.2.26 model implementation
executable code implementing a model
3.2.27 model instance
occurrence of a model implementation
3.2.28 output field
field explicitly marked for being the source of a value in a data transfer
3.2.29 operation
declaration of a behavioural feature of a component or an interface with the
option to define parameters, return value and raised exceptions
3.2.30 package
collection of types, where each one is either a value type or a component
3.2.31 platform
set of subsystems/technologies that provide a coherent set of functionality
through APIs and specified usage patterns
3.2.32 primitive type
type that can no longer be de-composed and that is pre-defined by the standard
NOTE The available primitive types are listed in Table
5-1: Primitive Types.
13

---------------------- Page: 15 ----------------------
SIST EN 16603-40-07:2020
EN 16603-40-07:2020 (E)
3.2.33 property
typed feature of a class, an interface or a component that can be accessed by two
operations, the setter
...

SLOVENSKI STANDARD
oSIST prEN 16603-40-07:2019
01-julij-2019
Vesoljska tehnika - Ploščadi za simulacijsko modeliranje
Space engineering - Simulation modelling platform
Raumfahrttechnik - Software-Modellierungs-Platform
Ingénierie Spatiale - Plateforme informatique de modèles de simulation
Ta slovenski standard je istoveten z: prEN 16603-40-07
ICS:
49.140 Vesoljski sistemi in operacije Space systems and
operations
oSIST prEN 16603-40-07:2019 en,fr,de
2003-01.Slovenski inštitut za standardizacijo. Razmnoževanje celote ali delov tega standarda ni dovoljeno.

---------------------- Page: 1 ----------------------
oSIST prEN 16603-40-07:2019

---------------------- Page: 2 ----------------------
oSIST prEN 16603-40-07:2019


EUROPEAN STANDARD
DRAFT
prEN 16603-40-07
NORME EUROPÉENNE

EUROPÄISCHE NORM

May 2019
ICS 49.140

English version

Space engineering - Simulation modelling platform
Ingénierie Spatiale - Plateforme informatique de Raumfahrttechnik - Software-Modellierungs-Platform
modèles de simulation
This draft European Standard is submitted to CEN members for enquiry. It has been drawn up by the Technical Committee
CEN/CLC/JTC 5.

If this draft becomes a European Standard, CEN and CENELEC members are bound to comply with the CEN/CENELEC Internal
Regulations which stipulate the conditions for giving this European Standard the status of a national standard without any
alteration.

This draft European Standard was established by CEN and CENELEC in three official versions (English, French, German). A
version in any other language made by translation under the responsibility of a CEN and CENELEC member into its own
language and notified to the CEN-CENELEC Management Centre has the same status as the official versions.

CEN and CENELEC members are the national standards bodies and national electrotechnical committees of Austria, Belgium,
Bulgaria, Croatia, Cyprus, Czech Republic, Denmark, Estonia, Finland, Former Yugoslav Republic of Macedonia, France, Germany,
Greece, Hungary, Iceland, Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta, Netherlands, Norway, Poland, Portugal, Romania,
Serbia, Slovakia, Slovenia, Spain, Sweden, Switzerland, Turkey and United Kingdom.

Recipients of this draft are invited to submit, with their comments, notification of any relevant patent rights of which they are
aware and to provide supporting documentation.Recipients of this draft are invited to submit, with their comments, notification
of any relevant patent rights of which they are aware and to provide supporting documentation.

Warning : This document is not a European Standard. It is distributed for review and comments. It is subject to change without
notice and shall not be referred to as a European Standard.
















CEN-CENELEC Management Centre:
Rue de la Science 23, B-1040 Brussels
© 2019 CEN/CENELEC All rights of exploitation in any form and by any means Ref. No. prEN 16603-40-07:2019 E
reserved worldwide for CEN national Members and for
CENELEC Members.

---------------------- Page: 3 ----------------------
oSIST prEN 16603-40-07:2019
prEN 16603-40-07:2019 (E)
Table of contents
European Foreword . 6
Introduction . 7
1 Scope . 8
2 Normative references . 10
3 Terms, definitions and abbreviated terms . 11
3.1 Terms from other standards . 11
3.2 Terms specific to the present standard . 11
3.3 Abbreviated terms. 15
3.4 Nomenclature . 15
4 Principles . 16
4.1 Objectives . 16
4.2 Common Concepts and common types . 16
4.3 Architecture . 17
4.4 Time handling principle . 18
4.5 Simulation lifecycle . 19
4.6 Simulation method . 20
4.6.1 Discrete-event simulation (DES) . 20
4.6.2 Parallelization and distribution . 21
4.6.3 Inter component communication . 21
4.7 Models, Services and Components . 22
4.7.1 Objects . 22
4.7.2 Components. 23
4.7.3 Models and Services . 24
4.8 Publication and Persistence . 25
4.9 Dynamic invocation . 26
4.10 Components meta data . 28
4.10.1 Catalogue . 28
4.10.2 Package . 29
4.10.3 Configuration . 29
2

---------------------- Page: 4 ----------------------
oSIST prEN 16603-40-07:2019
prEN 16603-40-07:2019 (E)
4.11 Model exchanges considerations . 29
4.11.1 SMP Bundle . 29
5 Interface Requirements . 30
5.1 Common . 30
5.1.1 Primitive Types specification . 30
5.1.2 Time Kinds . 32
5.1.3 Path string . 33
5.1.4 Universally Unique Identifiers (UUID) . 34
5.1.5 Exception specification . 34
5.2 Components and Objects interfaces . 34
5.2.1 Object Specification (IObject) . 34
5.2.2 Component Specification . 35
5.2.3 Aggregation. 38
5.2.4 Composition . 41
5.2.5 Events . 43
5.2.6 Entry points . 45
5.2.7 Dynamic Invocation . 46
5.2.8 Persistence (IPersist) . 50
5.2.9 Failures . 50
5.2.10 Field interfaces . 51
5.2.11 Simulation Environments interface utilization . 57
5.3 Simulation Environment interfaces . 58
5.3.1 Service specification (IService) . 58
5.3.2 Logger (ILogger interface) . 58
5.3.3 Time Keeper (ITimeKeeper) . 60
5.3.4 Scheduler (IScheduler) . 62
5.3.5 Event Manager (IEventManager) . 70
5.3.6 Resolver (IResolver) . 73
5.3.7 Link Registry (ILinkRegistry) . 74
5.3.8 Simulator (ISimulator) . 76
5.3.9 Persistence . 87
5.3.10 Publication . 88
5.3.11 Type Registry . 94
5.3.12 Component Factory (IFactory) . 100
5.4 Meta data . 101
5.4.1 Catalogue . 101
5.4.2 Package . 104
3

---------------------- Page: 5 ----------------------
oSIST prEN 16603-40-07:2019
prEN 16603-40-07:2019 (E)
5.4.3 Configuration data . 105
6 Implementation mapping . 106
6.1 Catalogue to C++ . 106
6.1.1 Mapping templates . 106
6.1.2 Namespaces and files . 109
6.1.3 Element and Type Visibility Kind . 109
6.1.4 Mapping of elements . 109
6.1.5 Basic Value Types . 118
6.1.6 Compound Value Types . 119
6.1.7 Reference Types . 121
6.2 Package to library . 124
6.2.1 Mapping templates . 124
6.2.2 Common to Unix and Windows . 125
6.2.3 Unix (Shared object) . 125
6.2.4 Addendum for Windows Dynamic Link Library (DLL) . 127
6.2.5 SMP Bundle . 127
Annex A (normative) Catalogue DRD . 128
A.1 Catalogue DRD . 128
A.1.1 Requirement identification and source document . 128
A.1.2 Purpose and objective . 128
A.2 Expected response . 128
A.2.1 Scope and content . 128
A.2.2 Special remarks . 128
Annex B (normative) Package DRD . 129
B.1 Package DRD . 129
B.1.1 Requirement identification and source document . 129
B.1.2 Purpose and objective . 129
B.2 Expected response . 129
B.2.1 Scope and content . 129
B.2.2 Special remarks . 129
Annex C (normative) Configuration DRD . 130
C.1 Configuration DRD . 130
C.1.1 Requirement identification and source document . 130
C.1.2 Purpose and objective . 130
C.2 Expected response . 130
C.2.1 Scope and content . 130
4

---------------------- Page: 6 ----------------------
oSIST prEN 16603-40-07:2019
prEN 16603-40-07:2019 (E)
C.2.2 Special remarks . 130
Annex D (normative) Manifest DRD . 131
D.1 Configuration DRD . 131
D.1.1 Requirement identification and source document . 131
D.1.2 Purpose and objective . 131
D.2 Expected response . 131
D.2.1 Scope and content . 131
D.2.2 Special remarks . 133
Bibliography . 134

Figures
Figure 4-1: Common Concepts and Type System . 17
Figure 4-2: SMP Architecture . 17
Figure 4-3: SMP State machine . 19
Figure 4-4: Object mechanisms . 23
Figure 4-5: Overview of components hierarchy . 23
Figure 4-6: Component Mechanisms . 24
Figure 4-7: Sequence of calls for dynamic invocation . 27

Tables
Table 4-1: Overview of simulation states . 20
Table 4-2: ViewKind values . 25
Table 5-1: Primitive Types . 30
Table 5-2: Component states . 36
Table 5-3: Semantically equivalent types for connections . 56
Table 5-4: Default Log Message Kinds . 58
Table 5-5: Condition for emitting predefined global events . 72
Table 6-1: C++ declaration templates . 106
Table 6-2: C++ definition templates . 108
Table 6-3: C++ mapping for the Visibility kind attribute . 109
Table 6-4: C++ mapping without ByPointer attribute . 111
Table 6-5: C++ mapping for the Direction kind attribute . 112
Table 6-6: C++ mapping without ByPointer attribute . 113
Table 6-7: C++ mapping for the Operator attribute kinds . 116
Table 6-8: C++ declaration templates for packages . 124
Table 6-9: SMP Manifest Key . 131

5

---------------------- Page: 7 ----------------------
oSIST prEN 16603-40-07:2019
prEN 16603-40-07:2019 (E)
European Foreword
This document (prEN 16603-40-07:2019) has been prepared by Technical
Committee CEN/CLC/TC 5 “Space”, the secretariat of which is held by DIN
(Germany).
This document (prEN 16603-40-07:2019) originates from ECSS-E-ST-40-07C
DIR1.
This document is currently submitted to the CEN ENQUIRY.
This document has been developed to cover specifically space systems and will
the-refore have precedence over any EN covering the same scope but with a
wider do-main of applicability (e.g.: aerospace).
6

---------------------- Page: 8 ----------------------
oSIST prEN 16603-40-07:2019
prEN 16603-40-07:2019 (E)
Introduction
Space programmes have developed simulation software for a number of years,
which are used for a variety of applications including analysis, engineering
operations preparation and training. Typically different departments perform
developments of these simulators, running on several different platforms and
using different computer languages. A variety of subcontractors are involved in
these projects and as a result a wide range of simulation models are often
developed. This standard addresses the issues related to portability and reuse
of simulation models. It is based on the work performed by ESA in the
development of the Simulator Portability Standards SMP1 and SMP2 starting
from the mid-end of the nineties.
This standard integrates the ECSS-E-ST-40 with additional requirements which
are specific to the development of simulation software. The formulation of this
standard takes into account:
• The existing ISO 9000 family of documents, and
• The Simulation Model Portability specification version 1.2.
The intended readership of this standard is the simulator software customer
and supplier.
7

---------------------- Page: 9 ----------------------
oSIST prEN 16603-40-07:2019
prEN 16603-40-07:2019 (E)
1
Scope
ECSS-E-ST-40-07 is a standard based on ECSS-E-ST-40 for the engineering of
simulation software. It includes:
• The adaptation of the ECSS-E-ST-40 requirements for simulation
software, with additional specific provisions;
• The tailoring of some provisions of the ECSS-E-ST-40 requirements for
simulation software;
ECSS-E-ST-40-07 follows the structure of ECSS-E-ST-40.
ECSS-E-ST-40-07 complements ECSS-E-ST-40 in being more specific to
simulator software, it indicates new provisions, ways of tailoring, and common
practices in the domain, but it does not attempt to give detailed descriptions of
how to carry out the processes defined in ECSS-E-ST-40. It indicates, however,
particular practices that can be applicable for simulation software engineering.
This standard can be used:
• As an additional standard to ECSS-E-ST-40. This standard provides the
additional requirements which are specific to the development of
simulation software.
• To help customers in using and tailoring ECSS-E-ST-40. This standard
provides the additional requirements which a customer can make
applicable on the simulator software developed by the supplier.
• To assist suppliers in using ECSS-E-ST-40. This standard provides a
technical specification which a supplier can follow in-order to be
compliant with the requirements specific to the development of
simulation software.
• To assist customers and suppliers in adapting or writing organizational
procedures and standards that conform to the requirements of ECSS-E-
ST-40.
This standard may be tailored for the specific characteristic and constrains of a
space project in conformance with ECSS-S-ST-00.

Applicability
This standard lays down requirements for simulation models’ interfaces and
environment for the purpose of model re-use and exchange to allow simulation
models to be run in any conformant simulation infrastructure.
8

---------------------- Page: 10 ----------------------
oSIST prEN 16603-40-07:2019
prEN 16603-40-07:2019 (E)
A consequence of being compliant to this standard for a model is the possibility
of being reused in several simulation facilities or even in several projects.
However, adherence to this standard does not imply or guarantees model
reusability, it is only a precondition. Other characteristics of the model, to be
defined outside this standard, such as its functional interfaces and behaviour,
its configuration data as well as quality, suitability and performance, etc. are
also heavily affecting the potential for a model to be reused. In addition
agreements need to be reached on simulation infrastructure compatibility,
model validation status as well as legal issues and export control restrictions.
Therefore this standard enables but does not mandate, impose nor guarantee
successful model re-use and exchange.
Model reuse in this standard is meant both at source-code and binary level,
with the latter restricted to a fixed platform.
9

---------------------- Page: 11 ----------------------
oSIST prEN 16603-40-07:2019
prEN 16603-40-07:2019 (E)
2
Normative references
The following normative documents contain provisions which, through
reference in this text, constitute provisions of this ECSS Standard. For dated
references, subsequent amendments to, or revision of any of these publications
do not apply. However, parties to agreements based on this ECSS Standard are
encouraged to investigate the possibility of applying the more recent editions of
the normative documents indicated below. For undated references, the latest
edition of the publication referred to applies.

EN reference Reference in text Title
EN 16601-00-01 ECSS-S-ST-00-01 ECSS system - Glossary of terms
EN 16603-40 ECSS-E-ST-40 Space engineering - Software general requirements
https://www.w3.org/ XML schema specification
TR/xmlschema11-2/
http://www.opengro The UUID specification from Open Group.
up.org
https://www.osgi.org OSGi Specifications
/developer/specificati
ons/

10

---------------------- Page: 12 ----------------------
oSIST prEN 16603-40-07:2019
prEN 16603-40-07:2019 (E)
3
Terms, definitions and abbreviated terms
3.1 Terms from other standards
a. For the purpose of this Standard, the terms and definitions from ECSS-S-
ST-00-01 and ECSS-E-ST-40 apply.
b. For the purpose of this Standard, the terms and definitions from ECSS-E-
ST-70 apply, in particular the following term:
1. mission
3.2 Terms specific to the present standard
In the following list of terms, underlined words are further defined in the same
list.
3.2.1 aggregate
relationship between two components where one component can continue to
exist if the other component is destroyed
3.2.2 breakpoint
set of pairs variable-value that define the state of a simulation.
3.2.3 component
building block of a simulation that can be instantiated and that has a well-
defined contract to its environment
3.2.4 composite
component implementing composition
3.2.5 composition
hierarchical relationship where child component is destroyed if the parent
component is destroyed
3.2.6 configuration
specification of values for fields of components
11

---------------------- Page: 13 ----------------------
oSIST prEN 16603-40-07:2019
prEN 16603-40-07:2019 (E)
3.2.7 consumer
component that either calls an interface, or subscribes to an event source, or
receives data in one of its input fields from an output field of another
component
3.2.8 container
typed collection of child components
3.2.9 contract
set of interfaces, operations, fields, entry points, event sinks, event sources and
all the associated constraints, used to interact with a component
3.2.10 data transfer
copy of value from an input field to an output field
3.2.11 Entry Point
operation without parameters that does not return a value, which can be added
to the scheduler or event manager service
3.2.12 epoch time
absolute time of the simulation scenario
3.2.13 event manager
component that implements the IEventManager interface
NOTE The IEventManager interface is specified in
clause 5.3.5.
3.2.14 event sink
receiver of specific notifications, owned by a component and registered via a
subscription mechanism
3.2.15 event source
emitter of specific notifications, owned by a component and offering a
subscription mechanism
3.2.16 exception
non-recoverable error that can occur when calling into an operation or property
3.2.17 field
feature characterised by a value type and holding a value
3.2.18 input field
field explicitly marked for receiving values as a result of a data transfer
3.2.19 interface
named set of properties and operations
12

---------------------- Page: 14 ----------------------
oSIST prEN 16603-40-07:2019
prEN 16603-40-07:2019 (E)
3.2.20 logger
component that implements the ILogger interface
NOTE The ILogger interface is specified in clause
5.3.1b.
3.2.21 mission time
relative time measuring elapsed time from a mission specific point in time
3.2.22 model
defined collection of fields, associations, entry points, event sinks, event
sources, containers, constants, value types, properties and operations, realising
a set of interfaces
3.2.23 model implementation
executable code implementing a model
3.2.24 model instance
occurrence of a model implementation
3.2.25 output field
field explicitly marked for being the source of a value in a data transfer
3.2.26 operation
declaration of a behavioural feature of a component or an interface with
optional parameters, return value and raised exceptions
3.2.27 package
collection of type implementations
3.2.28 platform
set of subsystems/technologies that provide a coherent set of functionality
through APIs and specified usage patterns
3.2.29 property
typed feature of a class, an interface or a component that can be accessed by two
operations, the setter and the getter, not necessarily both present
3.2.30 reference
pointer to a component having autonomous lifecycle
3.2.31 resolver
component that implements the IResolver interface
NOTE The IResolver interface is specified in clause
5.3.6.
3.2.32 schedule
ordered execution of entry points
13

---------------------- Page: 15 ----------------------
oSIST prEN 16603-40-07:2019
prEN 16603-40-07:2019 (E)
3.2.33 scheduler
component that implements the IScheduler interface
NOTE The IScheduler interface is specified in clause
5.3.4.
3.2.34 service
collection of fields, associations, entry points, event sinks, event sources,
interfaces, constants, value types, properties and operations, resolvable by
name in the global scope of the simulation environment
3.2.35 simple field
field of a type that maps directly to a primitive type.
3.2.36 simulation environment
platform implementing the standard E-40-07 s
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.