Dependability and Security Assurance in Software Engineering
Dependability and Security Assurance in Software Engineering
www.deis-project.eu
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Table of Contents
Publishable Executive Summary .................................................................................................................... 6
1 Introduction .......................................................................................................................................... 7
2 Engineering Framework for the Generation and Integration of DDI ..................................................... 8
2.1 DDI concept evolution ................................................................................................................... 8
2.1.1 Recap of the DDI concept ...................................................................................................... 8
2.1.2 Modifications and Extensions since the initial DDI concept ................................................ 11
2.2 Semi-automated Engineering of DDIs ......................................................................................... 13
2.2.1 The challenge ...................................................................................................................... 13
2.2.2 Engineering tasks to be supported by DDIs ......................................................................... 14
2.2.3 How DDIs enable (semi-)automated engineering based on the ODEv2 .............................. 18
2.2.4 Interfaces of SACM to define artefact and process semantics ............................................ 23
2.2.5 Initial ideas for an action language to enable automated reasoning based on DDIs ........... 26
2.2.6 Advances regarding runtime dependability assurance ........................................................ 28
3 The Open Dependability Exchange Meta-model (ODE) v2 .................................................................. 29
3.1 The complete ODE meta-model .................................................................................................. 29
3.2 Structured Assurance Case Meta-Model (SACM) 2.0 .................................................................. 31
3.2.1 SACM Assurance Case Component ..................................................................................... 31
3.2.2 SACM Machine-Readable Design ........................................................................................ 32
3.2.3 SACM Argumentation Component ...................................................................................... 32
3.2.4 SACM Artifact Component .................................................................................................. 34
3.2.5 SACM Terminology Component .......................................................................................... 34
3.2.6 Summary ............................................................................................................................. 36
3.3 Product meta-models .................................................................................................................. 36
3.3.1 Architectural modelling package ......................................................................................... 36
3.3.2 Hazard and risk analysis (HARA) modelling package ........................................................... 37
3.3.3 Failure logic modelling package........................................................................................... 39
3.3.4 Threat and risk analysis (TARA) modelling package ............................................................. 42
3.4 Certification meta-models ........................................................................................................... 43
3.5 Crosscutting Aspects ................................................................................................................... 43
Page 1 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Page 2 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
List of Figures
FIGURE 1 - SACM-BASED SAFETY ARGUMENTATION AS THE BACKBONE OF A DDI ................................................................................ 9
FIGURE 2 - INTEGRATION SCENARIO WHERE THE ASSURANCE CASE MODELS ARE THE BACKBONE OF THE DDI.......................................... 10
FIGURE 3 - ODEV1 HIGH-LEVEL DDI STRUCTURE .......................................................................................................................... 11
FIGURE 4 - ODEV2 HIGH-LEVEL DDI STRUCTURE .......................................................................................................................... 12
FIGURE 5 - GOAL OF SEMI-AUTOMATED DDI ENGINEERING ............................................................................................................ 13
FIGURE 6 - ANTICIPATED DESIGN TIME ENGINEERING PROCESS ........................................................................................................ 14
FIGURE 7 - USER INTERFACE FOR EXPORTING A COMPONENT DDI ................................................................................................... 16
FIGURE 8 - (SEMI-)AUTOMATED ASSURANCE CASE INSTANTIATION WITH DDIS .................................................................................. 17
FIGURE 9 - AN EXAMPLE DDI: ENRICHING THE ASSURANCE CASE WITH PROCESS AND PRODUCT SEMANTICS........................................... 18
FIGURE 10 - AUTOMATED CLAIM VALIDITY ASSESSMENT ACTIVITY .................................................................................................... 20
FIGURE 11 - THE OPEN DEPENDABILITY EXCHANGE META-MODEL (ODE) V2 .................................................................................. 22
FIGURE 12 – SACM FUNDAMENTAL PACKAGES ............................................................................................................................ 23
FIGURE 13 - SACM TERMINOLOGY PACKAGE EXAMPLE.................................................................................................................. 24
FIGURE 14 - SACM ARGUMENT PACKAGE SEGMENT ..................................................................................................................... 25
FIGURE 15 - SACM CITATION MECHANISM SEGMENT.................................................................................................................... 25
FIGURE 16 - DDI INSTANTIATION AS A DAG ................................................................................................................................ 27
FIGURE 17 - TRANSITIONING FROM DESIGN TIME TO RUNTIME DDI EXECUTION................................................................................. 28
FIGURE 18 - THE COMPLETE ODE META-MODEL V2 ..................................................................................................................... 30
FIGURE 19 - SACM::ASSURANCECASE COMPONENT .................................................................................................................... 31
FIGURE 20 - SACM::BASE COMPONENT..................................................................................................................................... 32
FIGURE 21 - SACM::ARGUMENTATION COMPONENT ................................................................................................................... 33
FIGURE 22 - SACM::ARTIFACT COMPONENT............................................................................................................................... 34
FIGURE 23 - SACM::TERMINOLOGY COMPONENT ....................................................................................................................... 35
FIGURE 24 - ODE::DESIGN PACKAGE ......................................................................................................................................... 36
FIGURE 25 - ODE::DEPENDABILITY PACKAGE............................................................................................................................... 37
FIGURE 26 - ODE::DEPENDABILITY::DOMAIN PACKAGE ................................................................................................................ 38
FIGURE 27 - ODE::DEPENDABILITY::HARA PACKAGE ................................................................................................................... 38
FIGURE 28 - ODE::DEPENDABILITY::REQUIREMENTS PACKAGE ...................................................................................................... 39
FIGURE 29 - ODE::FAILURELOGIC PACKAGE ................................................................................................................................ 40
FIGURE 30 - ODE: FAILURELOGIC::FMEA PACKAGE .................................................................................................................... 40
FIGURE 31 - ODE::FAILURELOGIC::FTA PACKAGE........................................................................................................................ 41
FIGURE 32 - ODE::FAILURELOGIC::MARKOV PACKAGE ................................................................................................................. 41
FIGURE 33 - ODE::TARA PACKAGE ........................................................................................................................................... 42
FIGURE 34 - SAFEML USAGE CONCEPT ........................................................................................................................................ 45
FIGURE 35 - ERTMS/ETCS REFERENCE ARCHITECTURE................................................................................................................ 50
FIGURE 36 - SAFETY GOAL OF THE ETCS TRACKSIDE PART AS DEFINED IN UNISIG SUBSET-091........................................................... 52
FIGURE 37 - EXAMPLE GSN DIAGRAM OF THE SAFETY ARGUMENTATION FRAGMENT OF THE ETCS TRACKSIDE SUB-SYSTEM ..................... 52
FIGURE 38 - PROCESS / PRODUCT MODEL AND MAPPING MODEL .................................................................................................... 53
FIGURE 39 - PROCESS OF THE SEMI-AUTOMATED ASSURANCE CASE INSTANTIATION BASED IN THE ODE ................................................ 54
FIGURE 40 - DDI IN FORM SACM ASSURANCECASEPACKAGE FOR THE ETCS TRACKSIDE PART ............................................................ 54
FIGURE 41 - SELECTION OF THE SUPPLIERS BASED ON DDI ............................................................................................................. 55
FIGURE 42- DPMS DECISION-MAKING ACTION PATHS ................................................................................................................... 58
FIGURE 43 - DPMS GENERAL SECURITY MODEL ............................................................................................................................ 59
Page 3 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
List of Tables
TABLE 1 - SAFEML TO ODE MAPPING ........................................................................................................................................ 45
TABLE 2 - EAST-ADL2 TO HIP-HOPS MAPPING ......................................................................................................................... 48
TABLE 3 - SYSML (FOR COMPASS ARTISAN STUDIO) TO HIP-HOPS MAPPING............................................................................... 48
TABLE 4 - AADL TO HIP-HOPS MAPPING .................................................................................................................................. 49
TABLE 5 - HIP-HOPS TO ODE MAPPING .................................................................................................................................... 49
TABLE 6 - GDPR REQUIREMENTS (REFINED PROJECT REQUIREMENTS FOR SEMI-AUTOMATION) .......................................................... 67
Page 4 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Abbreviations
Abbreviation Long Version
GDPR General Data Protection Requirements
TARA Threat Assessment and Remediation Analysis
CPS Cyber Physical System
DPMS Dependable Physiological Monitor Sytem
Authors
Dr. Gilbert Regan, Lero/DKIT [email protected]
Dr. Fergal Mc Caffery, Lero/DKIT [email protected]
Simone Longo, GM [email protected]
Jan Reich, Fraunhofer IESE [email protected]
Daniel Schneider, Fraunhofer IESE [email protected]
Ioannis Sorokos, University of Hull [email protected]
Joe Guo, Siemens AG [email protected]
Marc Zeller, Siemens AG [email protected]
Ran Wei, University of York [email protected]
Tim Kelly, University of York [email protected]
Page 5 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Page 6 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
1 Introduction
Cyber-Physical Systems (CPS) provide enormous potential for new types of applications, services and
business models in any embedded systems domain, such as automotive, rail, healthcare or home
automation. Overall, we anticipate a future of heavily interconnected, distributed, heterogeneous and
intelligent systems, which are bound to have a significant economical and societal impact in the years to
come.
However, several challenges need to be tackled before the full potential of CPS can be unlocked. One core
challenge is to ensure the trustworthiness and dependability of single and composite systems, as
established approaches and standards were designed with closed standalone systems in mind, thus
building on a complete understanding and analysability of a system and its relevant environment. As this is
no longer a given, we urgently require new types of approaches that do not (solely) rely on this basic
assumption (now rendered void).
A general solution concept involves shifting parts of the assurance activities into runtime, where unknowns
and uncertainties can be resolved dynamically. To this end, it is necessary to equip the constituent systems
with dedicated and adequate modularised and formalised dependability information. The key innovation
that is the aim of DEIS is the corresponding concept of a Digital Dependability Identity (DDI). A DDI contains
all the information that uniquely describes the dependability characteristics of a CPS or CPS component.
DDIs are synthesised at development time and are the basis for the (semi-)automated integration of
components into systems during development, as well as for the fully automated dynamic integration of
systems into systems of systems in the field.
This deliverable builds on the initial version of the ODE meta-model and specifies the algorithms needed to
provide adequate engineering support for the generation and integration of DDIs. In order to generate a
DDI, means of completing the following tasks need to be developed:
1. For the generation of DDI from existing safety engineering artefacts, tool-transformations shall be
specified to translate the information stored in existing tools like ComposR, HiP-HOPS, ACME and safeTbox
into an ODE-compliant model.
2. Generation of a DDI in a (semi-)automated way from ODE-compliant models. A DDI is designed to mask
as much information as possible and to only provide what is absolutely required for a sound integration.
The information contained in the full-fledged ODE-compliant model (i.e. the white box dependability case
specification) is to be abstracted, simplified and formalized for the DDI. In order to enable a degree of
automation in the construction of a DDI, a system for the synthesis of DDI’s is required.
3. With regards to the integration of DDIs, the information contained in DDIs must be transformed back
into an appropriate (ODE-compliant) format that can be included in the tool chain used by the integrator.
When a component is integrated into a system, or when a system is integrated into another system,
corresponding DDIs shall enable (semi-)automated integration into the dependability case of the overall
system and thus significantly increase efficiency. A similar case is the exchange or the modification of a
component and the respective DDI, when the impact of the change is to be analysed on the level of the
overall integrated system.
Page 7 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Section 3 provides a recap of version 1 of the DDI concept, along with the modifications that have been
made for the Open Dependability Exchange (ODE) Meta-model version 2. This section is the core of this
document as it describes on the one hand, which types engineering tasks are to be (semi-)automatically
supported by DDIs and on the other hand the conceptual basis, how we envision semi-automated
generation and integration of DDIs to happen technologically.
Section 4.1 provides the meta-model for ODE version 2 which now includes a threat and risk analysis
package. Section 4.2 describes the Structured Assurance Case Meta-Model (SACM) and its extension
mechanisms, which constitute the backbone of the ODE. Section 4.3 describes the auxiliary modular ODE
packages, which provide coverage for architectural modelling, hazard and risk analysis, threat and risk
analysis, failure logic modelling and dependability requirements. Section 4.4 provides a certification meta-
model which has been developed by the AMASS project. This meta-model has been developed for process
and certification modelling and DEIS plans to use part of it in conjunction with ODE and SACM. Section 4.6
highlights the ODE’s flexibility by briefly mentioning the potential for interoperation with pre-existing,
established modelling languages such as SysML, EAST-ADL and AADL.
Section 5.1 describes the utilization of DDI in the European Train Control System use case, while Section
5.2 describes how the DDI can be used in applications involving General Data Protection Regulations
(GDPR).
Page 8 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
relevant artefacts – functional design, hazard and risk analyses or failure logic models – are directly linked
to elements of the argumentation.
The integration of different systems, each equipped with a DDI, is then also done by linking the modularised
assurance case fragments of the systems (cf. Figure 2). This means that in an integration scenario, there is
no direct linkage between any other safety engineering artefacts (e.g., failure logic models) beyond the
argumentation (at least not initially). Everything is interlinked and interrelated via the argumentation
structure of the assurance case, which thus constitutes the backbone of all DDIs (regardless of whether the
DDI is a constituent system DDI or an integrated system-of-systems DDI). On this basis, it is also relatively
easy to integrate systems where different failure logic modelling techniques such as HiP-HOPS and CFTs
have been used.
In order to enable semi-automated (or even fully automated) integration of DDIs, it is necessary to formalise
the interfaces of the assurance case fragments sufficiently. Moreover, it is important to enable a certain
extent of flexibility because the assured properties given by a constituent system DDI might not fit exactly
with what is demanded by the superordinate assurance case of the integrating system. Here ConSerts
provide a good starting point, even though the flexibility enabled by ConSerts is still not as good as we
would expect for the development time “white-box” DDI integration scenario. Here we would like to
achieve deeper integration between the different safety engineering artefacts so that, for instance, a
change in the architecture at one point of a constituent system would propagate through different channels
Page 9 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
(e.g., failure logic models) and the integrator would see the impact for the overall integrated system on the
level of its safety guarantees. Alternatively, in the grey-box case, the DDI of a constituent system may
provide a bundle of variants that can be switched by the integrator. Even though the details are masked
due to IP protection, the different variants exhibit different properties at the assurance case interface.
Based thereon, optimisation could be performed to find an overall system configuration for the integrating
system (i.e., resolving the variants in the supplier systems) that is optimal with respect to dependability,
cost and performance.
Figure 2 - Integration scenario where the assurance case models are the backbone of the DDI
The examples and elaborations above reveal that an assurance case argumentation is well-suited as a
central artefact of a DDI, but that other aspects obviously need to be covered as well. Thus, the ODE cannot
just be a slightly adapted version of the SACM, but rather needs to be a set of interlinked meta-models
covering all relevant dependability concerns. Still, we chose to use the SACM as the DDI interface language
for the reasons mentioned above (standard, acceptance, adoption due to potential widespread tool
support). In addition, there is a mechanism within the SACM that could be utilised to this end: The so-called
terminology package allows arbitrary information to be referenced in an assurance case (in the form of
SACM Expressions/Terms/Categories). In this sense, the SACM is able to link to models (which may contain
system information, FME(D)A, FTA, dependability requirement models etc.). One may choose to use either
a weak link or a strong link. For weak links, the SACM can simply point to the referred model with text. For
strong links, with the help of the facilities provided by the SACM, such information can be retrieved
automatically from the referenced models (by using a model querying language such as the Object
Constraint Language or the Epsilon Object Language). Thus, the SACM can link (either via weak links using
text or via strong links using queries) models which conform to heterogeneous meta-models in order to
extract relevant information.
Page 10 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Page 11 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
contents with existing standards (such as OMG SysML) or reference meta-models such as EAST-ADL or
SafeML. Details on this aspect can be found in Section 3.5.2.
Having these formally integrated product models as a structured source for dependability data, the
question arises how to make use of this data to (semi-)automatically generate/modify/integrate the
assurance case that is the backbone of the DDI (see Figure 5). Depending on the assurance task to be
accomplished, different parts of different dependability aspects might be used to synthesize new
information (e.g. evidence) or to automatically instantiate new assurance case structures based on existing
dependability models.
The remainder of this section is structured as follows: In Section 2.2.2 we will illustrate different engineering
challenges that are enabled by the DDI concept. Afterwards, Section 2.2.3 presents the essential conceptual
ideas of the new version of the ODE meta-model that help solve the outlined challenge by enabling the
(semi-)automated support for the engineering tasks. Sections 2.2.4 and 2.2.5 provide more detail regarding
Page 13 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
the technical solution, i.e. what the interface between product models and the assurance case as well as
an action language can look like that enables fully automated reasoning based on DDIs. Finally, Section
2.2.6 discusses the differences between DDI usage at design time versus DDI usage at runtime and
highlights the specific extension points that will have to be tackled when concepts for runtime
dependability certification should be enabled.
Figure 6 shows an abstract development setting that is representative for domains such as railway or
automotive. There is an integrator company (referred to as original equipment manufacturer or OEM in
the automotive domain) that is building a new system by integrating a set of components that are supplied
by supplier companies. This process involves four steps, in which the DDI concept, together with the (semi-
)automated engineering support, leads to improvement.
Step 1 – DDI Synthesis @ Integrator
Step 1 involves the synthesis of component specifications that the supplier company must adhere to. One
particular challenge of synthesizing this specification is to collect all relevant information that is needed by
the supplier in order to develop the component in isolation. This is not only necessary for information about
required functionality, but also for dependability requirements. In this scenario, DDIs can be seen as a
Page 14 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
container, where all this information can be captured in an integrated and structured way. Thus,
engineering tool support for this step should focus on helping the engineer to collect the relevant
information required by the DDI for the specific tasks the supplier should carry out. Such specific tasks could
be for instance to demonstrate the adequate satisfaction of interface dependability requirements, or to
check compatibility of the supplier component interface with the interface definition provided by the
integrator.
Step 2 – DDI Integration @ Supplier
Step 2 represents the integration of the specification DDI into the development process of the supplier
company. This could mean for example that model stubs are automatically generated based on the
development interface extracted from the imported DDI. Such a development interface typically consists
of functional or technical data-flow interfaces or dependability requirements allocated to those data-flow
interfaces. In advanced scenarios, this could also be placeholders for assurance evidence artefacts that are
to be instantiated by the supplier.
Step 3 – DDI Synthesis @ Supplier
After the DDI has been integrated in a (semi-)automated way, the supplier performs the actual
development work until it is time to deliver the component back to the integrator. In this instance delivery
means not only the physical component, but also the dependability documentation that is required to build
a sound assurance case for the integrated system (typically according to one of the commonly known
standards such as ISO 26262 in the automotive domain or CENELEC EN 50129 in the railway domain). Step
3 is concerned with synthesizing a DDI containing all relevant information that is needed so that the
integrator can properly perform the integration task. From a supplier company perspective, all relevant
information means explicitly not all information and, therefore, engineering support for the supplier should
focus on identifying and collecting the minimal set of information to be delivered whilst respecting minimal
intellectual property disclosure.
In order to generate a DDI from a model created in a specific tool (e.g. safeTbox by Fraunhofer IESE), the
tool-specific aspect models have to be transformed into a DDI. In the current DDI export implementation,
the engineer has to manually select the different aspects such as architecture models, failure logic models
and safety argument models to be put into the DDI (see Figure 7). In the future, the engineer should only
be required to select the component’s root element (e.g. Trackside component) and the aspects to be
exported (Functional Interface, Abstract failure propagation between interfaces, argument fragments).
Afterwards, intelligent automation support collects relevant information and finally produces the DDI with
the desired properties.
Automated Evidence Generation
Another supplier engineering task that shall be supported by DDIs is the partially automated generation of
evidence for a certain assurance goal. These goals typically come in the shape of interface dependability
requirements, such as the one illustrated in Figure 10, where the failure rate of a set of supplied functions
(Trackside Functions) should be demonstrated to be lower than a target value (≤ 0,67 𝑒 −09 /ℎ). This would
Page 15 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
be a target value required by the integrator to adequately address system safety goals. The objective of
this engineering task would be to employ DDIs for automatic generation of evidence based on a sufficient
formal description of 1) What kind of evidence is required and 2) How the evidence is constructed based
on aspect models such as failure logic or architecture models.
Page 16 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
instantiated for all supplied components which could potentially contribute to those hazards. The
integrated dependability data models (ODE-conformant product models in Figure 8) serve as a basis to
extract the relevant data for the assurance case instantiation, while the instantiation activity is encoded in
the pattern along with a defined logic on how the instantiation should be carried out sequentially.
The goal of this engineering task is the technical integration of an assurance case fragment into a pre-
defined placeholder in the integrated assurance case. A fundamental property of this integrated assurance
case is the formal relation between assurance claims on the one hand and the product models on the other
hand (e.g. architecture, failure logic, hazard models), which served as a source for generating the evidence
for building confidence in assurance claims. In this way, traceability is maintained from the assurance case,
as a source for required dependability activities, towards those models showing the confidence in a proper
activity execution or the quality of its output artefact.
Page 17 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Figure 9 - An example DDI: Enriching the assurance case with process and product semantics
Page 18 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Page 19 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Note that the dependability aspects covered by ODEv2 do not cover all possible aspects required to
instantiate and evaluate a complete assurance case of a cyber-physical system. Therefore, the DDI
mechanisms have been designed specifically to be open for extension, i.e. for adding new aspects as the
need for them emerges. It is expected that for dependability assurance of cyber-physical systems (of
systems), new types of claims will be required to be assured with confidence, in particular those related to
runtime assurance approaches. Since these are still subject of research, the idea is to react to such new
emerging claims with new ODE product packages to specifically support the (semi-)automated assurance
of those new claims. In this way, the DDI contents and capabilities will be able to evolve in line with future
assurance demands.
Ingredient 3 – The ODE certification meta-model packages for defining certification activity semantics
The SACM exchange format, together with the ODE product meta-models, build a solid formal data basis
for the definition of an assurance case with a formal traceability to evidence produced from dependability
aspect models. One missing ingredient for enabling (semi-)automated processing of the DDI is the
specification of what DDI shall be processed, and in what sequence, to achieve the desired result. The
desired result is to help the engineer with the generation of useful new information (e.g. the validity of
claims, instantiated assurance case fragments, …) during the execution of a specific engineering task.
The ODE certification meta-model aims to provide a suitable means for modelling engineering activities
that consume artefacts of different dependability aspects (ODE product models), or assurance case
elements (SACM), and transform them into new information by means of defined techniques and activity
step descriptions. Such new information can be for instance a Boolean result about the validity of a claim,
or a new model such as an integrated assurance case fragment.
Figure 10 exemplifies the interplay of assurance case, certification model and product model by depicting
an automated claim validity assessment activity for a failure rate demonstration claim.
Page 20 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
The activity model contains two representations of the desired engineering activity Demonstrate
FailureRate for Hazard: One describes the processed modelling elements (Hazard, TargetRate,
(Comparation)Operator “<=”) mapping to certain formalized concepts of the dependability domain, as well
as the different steps of the activity in natural language. The other representation of the activity is a formal
one that can be understood and processed by a machine automatically. The intention behind providing
both representations is twofold: One the one hand, those engineers modelling and reviewing the activities
must be confident that the formal representation is indeed matching the intention of the activity. Process
engineers are seldom experts for formal languages and as such, a human understandable format is
beneficial. On the other hand, dependability engineers who should be supported by the automation, have
to effectively understand how the results of the automation are produced in order to judge the adequacy
of using it in a particular context.
In fact, the parameters of an engineering activity are referring to either model elements of the product
models (e.g. Hazard, Function, System in Figure 10), or to steps that are performed on these model
elements (e.g. navigation, filtering, reading properties, comparing properties with values). While the latter
ones are expressed in the activity itself (Get all …, where …), the former ones have to be mapped to the
ODE product package elements explicitly.
One may ask why this mapping is necessary as the activity parameters are equal to the product model
elements depicted on the right side. This is due to the fact that certain dependability aspects (such as the
concept of a hazard or a function) are quite stable across a domain, but its realization within a specific
product meta-model might differ from company to company, or depend on the modelling language used
(e.g. SysML vs. UML). To illustrate this, let us look at an example of the most basic difference between
different meta-model representations of the same domain concept: The name of the meta-model element
for describing a link between two architectural ports of a system. Still being the same concept, there may
exist a variety of meta-model element names for it such as Connector, Link, Connection, Propagation, etc.
Although the example explains the mechanism for a non-dependability concept, it is particularly useful for
dependability domain concepts, as no commonly accepted meta-modelling languages similar to SysML for
system design modelling exist for dependability aspects to date.
To account for this diversity in modelling similar concepts differently across languages and companies, the
ODE contains a mapping mechanism aiming at decoupling concrete product meta-models from the
activities operating on them, which should be specified in terms of domain concept placeholders. If new
modelling languages will emerge known dependability domain concepts differently, already specified
activities can be easily reused by providing a mapping model relating domain concept placeholders to
product meta-model elements. Sometimes this process is also referred to as aspect weaving in literature.
Illustratively spoken, this means the mapping model allows for the weaving of new product model elements
into the already existing domain-specific activity models without having to remodel the activity.
As of ODEv2, no concrete language meta-model has been produced or selected that allows modelling of
activities in the depicted way. However, the required properties of such a language have been outlined and
the DEIS consortium sees a good fit with the concepts of the Common Assurance and Certification Meta-
Page 21 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
model developed within the European AMASS project1. More details on this aspect can be found in Section
3.4.
Ingredient 4 – Means to (semi-)automatically execute engineering activities on DDIs
Having described the three core parts of the ODE which represent the anatomy of a DDI (see Figure 11),
there is still one missing piece left to enable the DDI to do useful things for the engineer: A higher-level
mechanism that is capable of orchestrating the execution of certification activities on a set of DDIs. This
mechanism might seem similar to the certification activity itself, but the ODE certification packages provide
means for the definition of activities, while the mechanism described in this section is rather a concrete
execution environment.
This DDI execution component allows for the (semi-)automatically execution of dependability certification
activities (defined as activity models conforming to packages in ODE::Certification), which operate on
dependability aspect models (conforming to packages of ODE::Product) in order to synthesise, integrate or
assess a dependability assurance case (conforming to OMG SACM).
Technically, the DDI execution component is envisioned to have an underlying computational model that
can execute DDI certification activities with different degrees of formalism: This means that, at design time
a lower level of formalism is required as the human dependability engineer can still serve as backup for
getting information or decisions that are too difficult to evaluate in a fully automated manner. At runtime
Page 22 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
however, full formalism will be required as all decisions have to be computed by machines. Some of the
consortiums initial ideas on what a DDI execution component can look like are elaborated in Section 2.2.5.
Argumentation packages store information about the argumentation part of an assurance case, where
safety/security claims are broken down into sub claims until they are directly backed by evidence.
Evidence used in the argument packages can be modelled and organised in artefact packages. For example,
a hazard analysis model can be recorded in an artefact package, where the user may also specify when the
analysis is performed, who participated in the analysis process and what techniques are used in the process.
Page 23 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
SACM also provides the mechanisms to create controlled natural languages so that the users can establish
a finer grade of reference to system models. The Terminology package of SACM provides the mechanism
to create Expressions, Categories and Terms. An example of controlled language is shown in Figure 13. The
upper part of the figure is a claim: Hazard H1 is sufficiently mitigated. In this claim, the user can refer to
expression elements in their terminology packages. For example, Hazard may refer to a Category in the
terminology package, which in turn points to a hazard log metamodel through its externalReference
property. In this way, hazard log metamodel provides a definition of what a Hazard is. Then, hazard H1 can
refer to a Term in the terminology package, which in turn refers to an instance hazard log model (that
conforms to the hazard log metamodel). The hazard log model may then contain information on how H1 is
identified, its cases and consequences, etc. The Expression sufficiently mitigated is recorded in the
terminology package so that it can be reused. The user is also free to add any explanatory information to
the Expression so that it better explains what sufficiently mitigated means.
Finally, an overall Expression which references the three previous elements is created. This expression can
be referenced in the argumentation package (e.g. as a description of a Claim).
Page 24 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
SACM promotes modularity, in the sense that elements are organised in different packages. To refine
modularity, SACM provides three different types of packages. Figure 14 shows a segment of the meta-
model for the argument package of SACM, illustrating the three types of packages in the argumentation
package of SACM. ArgumentPackage is the main package in which structured argumentation is stored. The
users can disclose part of the argumentation externally with the use of ArgumentPackageInterfaces. To do
this, in ArgumentPackageInterfaces, citation elements need to be created which cite to original elements
in ArgumentPackages. Figure 15 shows a segment of SACM for the citation mechanism. All SACMElements
have the capability of citing other SACMElements via the +citedElement reference. If an element cites
another, it automatically becomes abstract and citation via its +isAbstract and +isCitation features.
ArgumentPackageInterface only contains citation elements, it should be enforced by constraints on the
metamodel.
Whilst SACM provides traceability features between argumentation and evidence, it does not impose a
strong traceability link from SACM to other models. This is due to the fact that SACM is a generic assurance
case metamodel and is not bound to any specific domains. This can be seen from the mechanisms designed
for the Terminology package where externalReferences for Expressions are only described as Strings. In this
sense, SACM provides a weak link to external models. However, the link is robust since it does not rely on
any other metamodels and does not need to evolve with other models if the models referenced in SACM
change.
Page 25 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
2.2.5 Initial ideas for an action language to enable automated reasoning based on DDIs
To this point, the DDI engineering process has focused on design and development of the necessary
infrastructure for creating, managing and exchanging DDIs. The work towards the release of ODE v1 and v2
and the initial engineering tools are indicative of this focus.
To extend the DDI functionality further and introduce increasingly larger degrees of automation as per the
initial vision, a computational model which evaluates the DDI is needed (refer to section 2.2.3 for a more
detailed motivation). In this section, we present a preliminary description of such a model, which follows
directly from the work presented in DEIS so far. Furthermore, the computational model provides a starting
point for the advancement of the DDI engineering tool concept.
Under this view, the evaluation of the DDI can be modelled as a Directed Acyclic Graph (DAG); Each node
of the graph can represent a section of the DDI being parsed by the evaluation process. An example of such
a model is given in Figure 16. In the figure, the DAG represents the instantiation of an abstract assurance
claim at the top. In this case the arrows indicate the direction of the support of the claim provided by
following nodes. Alternative directions and interpretations are also possible, depending on the context of
the computation.
Abstract assurance claims can be modelled in SACM. Such claims abstract from the details of the
argumentation (e.g. what is the subject for which the claim is made), its constituent properties and
elements etc. Instantiating the claim means replacing the abstract references within the claim with
concrete ones, requisitioned from the appropriate ODE elements within the rest of the DDI.
Thus, in the case of Figure 16, the ‘Instantiation Script’ elements attached to each node of the DAG control
how the abstract references in the descriptions, denoted using the ‘{‘ ‘}’ brackets, are replaced. Specifically,
in the top node, {X} is replaced with ‘System A’, being the name of the ODE element being referenced. In
the supporting node, properties of constituent elements of X form an assertion supporting the previous
claim. The constituent elements can be referenced using a universal quantifier that ranges over the domain
of constituent elements of X. In practical terms, this can be realized using a programmatic ‘loop’ to iterate
over the constituent elements of X.
Page 26 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Using this understanding of the DDI evaluation, its support for introducing further automation can be
explained. We can immediately consider two scenarios based on the use cases found in DEIS so far.
One scenario is applicable during the development of the Cyber-Physical System (CPS), where an integrator
requires constituent subsystems to be integrated into a superordinate system. In this case, the suppliers of
the constituent systems also provide their automatically generated DDIs to the integrator. The integrator
has designed a DDI for the superordinate system with abstract assurance claims within it, comparable to
those in Figure 16. To certify the integrated system, all that is required is to merge the DDIs received with
the superordinate DDI and instantiate the combined abstract assurance claim. If the claim is fully
instantiated with no errors or missing references, then the integrated system has now been successfully
argued to be adequately dependable.
An alternative scenario can be considered where design-time DDIs have been manually created and
integrated for a given CPS up to completion of development. Now let us assume this CPS is required to
cooperate with other CPSs in the field, with similarly available DDIs. To certify that their combined operation
is accepted as adequately dependable (or safe/reliable/secure depending on the context), they need to
exchange, merge and evaluate their (appropriate parts of their) combined DDIs. This means that the DAG
presented above would build up increasingly larger DAGs, extending the assurance claim appropriately.
The two scenarios essentially differ only in the timing of the evaluation, the former having the evaluation
happen during development and the latter during operation. In both cases, there is a need for a
computational language which describes the order, the terms and the individual expressions that form each
step of the DDI evaluation. Fortunately, the SACM metamodel provides within its Terminology package
Page 27 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
appropriate structures to model all of the above elements. We are currently researching options for an
appropriate programming language for executing the computational model.
The kind of models to be used at runtime will not be just fully formalized representations of the design time
models such as hazard, failure or architecture models. Instead, runtime scenarios demand different models
to enable a dependable operation of cyber-physical systems. In particular, runtime models will allow:
1. to monitor the operational context of the system;
2. to perform a situation-specific risk assessment;
Page 28 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
3. to allow context-specific reasoning on dependability properties with the goal to always maintain
dependable operation on the one hand and to reach an optimal functional performance on the
other hand;
4. to execute adaptation scenarios based on the reasoning performed in 3.
These steps have been already conceptualized in an approach called Dynamic Safety Management (DSM)
(Trapp, Weiss, & Schneider, 2018), which aims at shifting parts of the safety engineering activities into
runtime in order to continuously react to changing context in a dependable way. A first step in this direction
were Conditional Safety Certificates (ConSerts) (Schneider & Trapp, 2013) that modularize safety interfaces
for configurations including variants of safety guarantees with different levels of required confidence.
These ConSert models are evaluated at runtime to check, whether a set of configurations of multiple
systems exists that allows a dependable operation.
In this way, ConSerts as a first constituent for a dependability runtime model, and Dynamic Safety
Management as a more sophisticated approach for executing context-dependent dependability reasoning
in general, will be an excellent basis for conceptualizing runtime DDIs.
Page 29 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Page 30 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Considering the possibility of exchanging assurance cases (or simply exchanging system information), the
SACM provides the notion of Interface. The creator of an assurance case can decide to reveal part of its
information by using the AssuranceCasePackageInterface. In this sense, systems with SACM-based
assurance case models can be exchanged at runtime for higher-level engineering requirements.
Page 31 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
The design of the SACM also takes into consideration scenarios where systems form a system of systems;
in such cases, systems with SACM-based assurance case models can determine whether they are
compatible (by using the AssuranceCasePackageInterface, as previously discussed). When the systems are
compatible, a binding/contract (which contains the argumentation, if necessary, regarding why the systems
are compatible and why they satisfy their safety/security requirements) can be created to bind/link
assurance cases together to form a compound assurance case. For this purpose, the SACM provides the
notion of binding, which is used to bind two or more interfaces at any given level (a binding also provides
possible structured argumentations showing the logic underlying the integration).
Page 32 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
justification. The user can also make use of the Artifact component to refer to corresponding evidence
(internal/external to the SACM model) to support the claims. There are various types of
AssertionRelationships to link claims to sub-claims, contexts, assumptions, justifications etc.
As previously discussed, SACM provides the possibility for two systems to exchange information with regard
to their structured argumentations about system assurance, via the ArgumentPackageInterface. In this
sense, the creator of the structured argumentation can decide what information can be accessed externally
(e.g., a safety requirement that is asserted to have been fulfilled), so that external users can make use of
such information. Obviously, the notion of interface leads to the question of trust; the SACM also provides
facilities for structurally arguing the level of trust embedded in the information provided in the interfaces
(in the same manner as structured argumentation, via metaClaims).
With the interface present, systems can integrate and form a compound structured argumentation, by
using ArgumentPackageBinding. The ArgumentPackageBinding used to integrate systems contains the
underlying logic (in the form of structured argumentation) of the binding. This provides the possibility for
systems to integrate at the level of argumentation.
Page 33 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
With respect to assurance case integration, there is also a need to exchange information at the level of
evidence. The SACM provides the ArtifactPackageInterface to enable the exchange of Artifacts among
assurance cases. The user can choose what evidence (inside an ArtifactPackage) can be accessed externally
in an ArtifactPackageInterface associated with the ArtifactPackage. With the ArtifactPackageInterface, it is
possible to bind ArtifactPackages by using ArtifactPackageBinding, so that system integration can be
performed at the level of ArtifactPackage.
information, the user can define Terms, Expressions and Categories, which are the terminologies in the
system for which the assurance case provides assurance. At this point SACM also provides the necessary
abstraction so that external system information (such as system models, failure logic models, FMEA models,
FTA models etc.) can be referenced. Note that the SACM does not demand the use of models to provide
openness regarding its adoption in open systems (i.e., Cyber-Physical Systems).
The creator of a TerminologyPackage can also decide to expose system information by using the
TerminologyPackageInterface for system integration so that system information (e.g., system properties)
can be accessed externally.
With TerminologyPackageInterface present, system integration is performed by using
TerminologyPackageBinding, so systems are integrated at the Terminology level.
With standardised TerminologyPackages, a typical task to perform is to extend a standardised
TerminologyPackage to create new standard/non-standard TerminologyPackages. We can, once again,
make use of the +abstractform of the SACMElement on both the level of the TerminologyPackage and the
level of the elements contained inside TerminologyPackages. In this sense, a TerminologyPackage can be
extended. Standardised TerminologyPackages can be stored in publicly accessible repositories for
reference, which is in line with the DEIS vision of the application of DDIs.
Page 35 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
3.2.6 Summary
SACM is a complex metamodel defined by the specifiers of existing system assurance case approaches (i.e.
GSN and CAE), based on the collective knowledge and experiences of safety and/or security practitioners
over the period of 20 years. SACM contains more features than GSN and CAE, and is therefore more
powerful in terms of expressiveness. The full specification of SACM can be found at
https://www.omg.org/spec/SACM.
A paper explaining the usage of SACM via examples has also been submitted to the Journal of Systems and
Software, entitled “Model Based System Assurance Using the Structured Assurance Case Metamodel”.
The ODE::Architecture package has undergone some simplification. Its updated state can be seen in Figure
24. To begin with, it has been renamed to ‘Design’ and its internal containment element ‘DesignPackage’.
The System and Function elements’ role has been enhanced, as all other elements within the package
compose onto or inherit from them. This change shifts the focus onto the structure of the system
architecture as opposed to its properties.
Page 36 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Page 37 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Page 38 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Page 39 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
The ODE::FMEA package has undergone some simplification too, see Figure 30. Propagation is now
represented with the association of each FMEAEntry with a ‘mode’ and ‘effect’ Failure. This change
contrasts the previous version’s propagation modeling with explicit elements such as FMEAPropagation
and DiagnosableFailurePropagation, which were deemed redundant. The specialization of the Failure type
for FMEAs was also removed due to redundancy.
The ODE::FTA package in Figure 31 has been simplified by reducing the various types of events represented
in a fault tree down to a generic Cause element. Boolean logic event connectors are represented by the
Gate element, which, as a subtype of Cause, can be used to chain hierarchies of Causes together into a fault
tree.
Note that since generic Causes can reference both Failure and Security Violations as their inherited type, it
is now possible to represent fault trees from classical dependability analysis as well as security attack trees.
Furthermore, if a FaultTree is composed of Causes referencing both Failures and Security Violations, hybrid
safety-security analysis can also be modeled.
Page 41 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
The TARA package models the results of a Threat And Risk Analysis for security, seen in Figure 33.
ThreatAgents are either Human or NonHuman (typically electronic) sources of Attacks. While individual
Attacks may serve many purposes, ThreatAgents will also feature some higher-level AttackerGoal,
representing the overall goal of the attacker. The AttackerGoal revolves around negatively impacting the
Assets being considered for security, often being the system’s operation and its data for example. Attacks
exploit Vulnerabilities of the system.
Cumulatively, the above elements contribute towards the SecurityRisk posed by the various threats
identified during the TARA. To combat these threats and reduce risk, SecurityCapabilities and
SecurityControls are established. Respectively, these are high-level and low-level security
safeguards/counter-measures. After applying these measures, risk is reduced accordingly.
Finally, more detailed analysis of the propagation of effects of Attacks on the system are modeled by linking
individual Attacks with ODE::FailureLogic::SecurityViolations. This link further enables hybrid security-
safety analysis, as complex ODE::FTA::Causes can be associated with Failures from classical dependability
analysis.
Page 42 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
• Assurance project definition. It is used to define the assets produced during the development,
assessment and justification of a safety-critical system;
• Process Definition. It is used to model general reference processes (e.g., Waterfall Process, Agile
Process, V-model process), or company-specific processes (e.g., the Thales process to develop
safety-critical systems).
• Standard Definition. It is used to model standards (IEC 61508, ISO 2626, DO-178C, EN 50126, etc.)
and any regulations (either as additional Requirements or model elements in a given model
representing a standard or a new reference standard). For the implementation another
metamodel is added, the Baseline Metamodel, to capture what is planned to be done or to be
compiled with a defined standard, in a concrete assurance project.
• Vocabulary Definition. It is used to provide a Thesaurus-type vocabulary, which defines and records
key concepts relevant to safety assurance within the target domains and the relationships
between them.
• Mapping Definition. It is used to capture the nature of the vertical and horizontal mappings
between the different levels of model in the AMASS Framework and between the concepts and
vocabulary used in these models. There are two types of mapping: equivalence mapping that maps
process models with models of standards; and process mapping, which maps process models to
project specific models.
The compliance management metamodels are helpful for DEIS for their ability to model processes and
standards (and their relationships using the mapping definition). However, vocabulary definition and
assurance project definition metamodels are overlapped with SACM. The plan next is to isolate the useful
metamodels (hopefully they are independently implemented) from CACM and use them in conjunction
with ODE and SACM.
SACM features a collection of -PackageInterface elements. These elements enable IP hiding by allowing the
user to only publish parts of the assurance case (including contained artifact models). Most elements in
SACM inherit SACMElement’s ‘isCitation’ attribute, which is a flag denoting whether the subject element
cites another one. If the flag is ‘true’ then SACMElement’s ‘citeElement’ attribute provides a reference to
the cited element. SACM -PackageInterfaces contain citation elements to elements from other packages of
the same type (except in the case of AssuranceCasePackageInterfaces, they contain other -
PackageInterfaces). For example, a TerminologyPackageInterface contains citations to elements from a
TerminologyPackage. By sharing the TerminologyPackageInterface rather than the actual package, only the
elements cited are visible to the receiver, assuming there is no other means of accessing the cited package.
The ODE::FailureLogic package contains sub-packages which expose in more detail how a system’s
dependability can be compromised from failures and security violations. These are the FMEA, FTA and
Markov sub-packages. These sub-packages include information that can directly or indirectly describe the
failure behavior of the system and/or reveal key elements of its design. To avoid revealing the inner
workings of the system while still sharing as much information to external parties for evaluation, the
detailed analyses found in the sub-packages of ODE::FailureLogic, such as ODE::FailureLogic::FTA, are
separated. Instead, the provider can opt to share only the system’s Minimal Cut Sets, which provide
describe the minimal combinations of necessary and sufficient causes of system failure.
3.5.2.1 SafeML
SafeML targets several issues that typically appear during design process. For example, information needs
to be communicated among different stakeholders with different backgrounds. This typically leads to
duplication and often to ambiguous and inconsistent artifacts. Moreover, this information tends to be
Page 44 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
documented in different formats, which makes maintenance difficult and costly whenever changes are
required.
SafeML targets the mentioned issues with a model-based solution, in which the safety information is added
to existing design models. The authors of the initiative offer on their website (Geoffrey Biggs/AIST, 2017)
profiles for the commercial modeling tools Enterprise Architect and Magic Draw, as well as links to other
resources like documentation and the Object Management Group (OMG) language specification.
SafeML is designed to be used in conjunction with SysML (Friedenthal, Moore, & Steiner, 2008). SysML
provides the diagrams and element types necessary for design modelling, while SafeML provides the
element types used to add safety information to the model, see Figure 34.
The modeling approach is organized in two parts. The first deals with hazards, harms and the context
necessary for harms to occur. The second deals with safety measures, which in SafeML are targeted at
preventing the hazardous event necessary for a hazard to lead to harm, or mitigating harm should a
hazardous event occur. According to the specification, this is the list of modeling elements:
Table 1 - SafeML to ODE Mapping
Page 45 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
ActiveDefence, Measure Very similar concept with the difference that in SafeML it is
PassiveDefence distinguished whether a measure (i.e. defence) need to be
activated explicitly or not to protect against a HarmContext. In
ODE this will be reflected partially in the design when the
measure has been made part of it.
Context Detector NONE It represents the capability to monitor for a hazardous
situation/event.
There is no exact matching for this concept, but it could be
represented in different ways through the ODE depending of
the interpretation. E.g. by a measure, or a function.
One of the most remarkable aspects of the SafeML approach is that it is a concrete modeling language. It
defines modeling elements and relationships and, more over it relies on SysML, which is by itself also a
modeling language. Contrary to SafeML and SysML, ODE does not define how the information is created,
nor concretely define processes or languages. It primarily defines containers and structure to allocate
information. The ODE has been conceived in this way having in mind data exchange. It does not place
constraints or guidelines on how the information is obtained.
The purpose of SafeML is to extend SysML models with safety information, by focusing on the definition of
hazards and measures. This covers however just a portion of the actual information needs for dependability
systems. One could even consider the language as incomplete, since there are no means to perform a
complete hazard and risk analysis. For instance, there are no means for identifying malfunctions. Therefore,
this process should basically occur somewhere else and only the resulting hazards will be documented.
Contrary, ODE has been structured to cover the entire lifecycle and it is therefore far more complete and
structured. Consider for instance the following aspects: Fault analysis, security concerns, argumentation,
etc.
In summary, SafeML does not offer much more to what is already existing in SysML. Nevertheless, models
created with SafeML will be, as shown before, translatable into ODE models.
can be found in (Biehl, Chen, & Torngren, 2010) for EAST-ADL2, in (Mian, Bottaci, Papadopoulos, & Biehl,
2012) for AADL and (Andrews, Payne, Romanovsky, Dider, & Mota, 2014) for SysML.
Page 47 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
EAST-ADL2 HH
ErrorModelType System
ErrorModelType.errorConnector System.Lines
ErrorModelType.parts System.Component
ErrorModelPrototype.type.errorPort System.Component.Ports
ErrorModelPrototype System.Component.Implementation
ErrorModelPrototype.type. System.Component.Implementation.
errorBehaviorDescription.internalErrorEvent FailureData.basicEvent
ErrorModelPrototype.type. System.Component.Implementation.
errorBehaviorDescription.failureLogic FailureData.outputDeviation
System.Component.
ErrorModelPrototype.type
Implementation.System (recursion)
Page 48 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
AADL HH
SystemInstance System
ComponentInstance System.Component.Implementation
ComponentErrorModelProperty System.Component.Implementation.FailureData
ComponentInstance.FeatureInstance System.Component.Ports
ConnectionInstance System.Lines
In Table 5, the symmetric mapping between HiP-HOPS and the ODE is summarized. Unlike the other
mappings, the semantics in the latter are defined to enable bi-directional conversion. This means that
conversion from both HiP-HOPS to ODE models and vice versa is possible.
Table 5 - HiP-HOPS to ODE Mapping
HH ODE
Model Integration::ODEPackage
Perspective Architecture::ArchitecturePackage
System Architecture::ArchitecturePackage/System
Component Architecture::System/Logical/PhysicalComponent
Implementation Architecture::System/Logical/PhysicalComponent
FailureData FailureLogic::FailureLogicPackage/FTAPackage
BasicEvent FTA::BasicEvent
PotentialCCF FailureLogic::CCF
OutputDeviation FTA::OutputEvent/FailureLogic::OutputFailure
Port Architecture::Port
Line Architecture::Signal
FMEA FMEA::FMEAPackage
FMEA-Component-BasicEvent FMEA::FMEAFailure
FMEA-Component-BasicEvent-Effect FMEA::FMEAFailure
FMEA-Component-BasicEvent & Effect FMEA::FMEAPropagation
FaultTree FTA::FTAPackage
TopNode FTA::OutputEvent
Gate (And, Or, …) FTA::Gate
AllCutSets FailureLogic::MinimalCutSets
Page 49 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
4.1 Utilization of DDIs in an OEM-TIER integration scenario in the context of the ETCS
Page 50 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
ETCS itself is a system of systems, consisting of an on-board and a trackside sub-system (see Figure 35). In
the railway domain, the realisation of such a system typically involves different stakeholders in the value
chain (railway undertaking, OEMs, suppliers etc.). Often a railway company orders an ETCS system from
one vendor while another one provides the trackside equipment. Moreover, the on-board sub-system must
interact with the train, which is either built by another department in the same company or by another
OEM.
In order to satisfy the laws and regulations in each European country, it must be proven that the overall
ETCS system is sufficiently safe. Therefore, both sub-systems must fulfil the safety requirements as defined
in Subset-091 (Safety Requirements for the Technical Interoperability of ETCS in Levels 1 & 2) of the
ERTMS/ETCS specification (ETCS/ERTMS, 2016). This standard defines specific hazards, and tolerable
hazard rates are apportioned to each sub-system. Moreover, interoperability between the trackside and
the on-board systems must be ensured.
Page 51 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Figure 36 - Safety goal of the ETCS trackside part as defined in UNISIG Subset-091
In current industrial practice all the questions shown in Figure 36 are answered by safety experts in a
manual process of creating the safety case. Moreover, other design artefacts (such as process descriptions,
safety analyses, hazard lists, specifications) are referenced to provide evidence that the goal is fulfilled. The
resulting safety argumentation is written in the safety case document using natural language or GSN
diagram (e.g. as depicted in Figure 37).
Figure 37 - Example GSN diagram of the safety argumentation fragment of the ETCS trackside sub-system
The ODE extends SACM by adding product- and process-related model semantics to enable (semi-)
automated assurance case integration/evaluation support. Thereby, SACM provides the foundation of
formalizing context and structure of the safety argumentation as well as mechanisms to:
1. link an artifact element to an external resource (e.g. model);
Page 52 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Based on these different parts of the ODE semi-automated assurance case instantiation can be realized as
depicted in Figure 39. As an input for the semi-automated instantiation the ODE provides:
1. Product models (e.g. hazards, failure logic propagation, functional model, etc);
2. Set of GSN/SACM patterns;
3. Process model describing the activities of safety standards;
4. Mapping model specifying how to automatically perform activities from the ODE process model
on ODE-conformant product models.
Taking these models as input, a SACM AssuranceCasePackage can be generated semi-automatically, in
which the GSN/SACM patterns are instantiated to generate the SACM ArgumentPackage. Moreover, a
SACM TerminologyPackage and a SACM ArtifactPackage can be generated based on the ODE product
model. Thus, interlinking safety argumentation and product model based on the information provided in
the ODE process model and the mapping model. An example, for a safety argumentation for the ETCS
trackside sub-system created by this semi-automated assurance case instantiation approach is depicted in
Figure 40.
Page 53 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Figure 39 - Process of the semi-automated assurance case instantiation based in the ODE
Figure 40 - DDI in form SACM AssuranceCasePackage for the ETCS trackside part
Page 54 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
As depicted in Figure 41, attributes of a DDI (such as cost, minimum operation life time, logistic
requirements etc.) will be utilized, for example, to select suppliers of system components. The criterion is
that the target values (activity) of all attributes shall be fulfilled. DDI could be seen in this scenario as a
formalized component datasheet filled with values of aforementioned attributes from suppliers. This
datasheet will be used by OEM (integrator) to optimize the component selection. The process begins with
providing suppliers’ DDIs to the OEM. Afterwards, the OEM compares the attributes values of the different
suppliers’ datasheets (DDIs) and the target requirements stored in the OEM database. For instance, in the
ETCS use case, the selection of a Balise sensor could be done by this comparison based on checking the
attribute values of DDI.
Additionally, the individual assumptions of the supplier’s failure rate shall be compared with the
assumption of the target failure rate. In UNISIG Subset-091 (ETCS/ERTMS, 2016) the operational
Page 55 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
assumptions are related to the drivers’ reactions for certain events. Such requirements shall be considered
during the decision making. Other operational parameters such as time spent for certain driving mode,
frequency of radio signal between track and train etc. shall also be taken into account during the attribute
comparison.
Figure 41 demonstrates also the decomposition of the overall failure rate into
subsystem/subfunction/subcomponent failure rates. In this figure, there are 3 subcomponents that are
working in parallel. This means, there 3 subcomponents are connected by a “or” connector (not visualized
in the picture). The decomposition will be performed by the integrator (the OEM). After the decomposition,
the failures rates of the subfunction/subsystem/subcomponent are assigned or calculated based on system
information such as architecture.
In addition to the operational assumptions, environment conditions (operational environment in UNISIG
Subset-091) shall be checked. Such environment conditions are temperature, vibration, electromagnetic
interference etc (ETCS/ERTMS, 2016). For instance, if we assume the target failure rate is 2 fit at a
temperature condition of 40 °C, a supplier’s component failure rate of 3 fit at 30 °C will obviously not be
selected.
In , the requirement of availability in the sense of MTTF of “OnBoardTransmissionEquipmnt” shall be
greater than 1000 h for certain environment conditions. The related environment conditions are essential
to perform the comparison, otherwise this comparison could lead to total wrong decision
4.2 Utilization of DDIs in security and safety co-engineering in the context of the
Physiological Health Monitoring Use Case
Page 57 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
safe area, or in case of high danger, drive the vehicle to the Hospital / First Aid Services (depending on
autonomous level capabilities).
The physiological data (including the streaming video) is sensitive with regards to GDPR, therefore the
requirements from the recent GDPR regulation need to be implemented.
Context
Make the «first aid rescue AUTONOMOUS
Try to collect info
team» service aware of -LEVEL 2- VEHICLE
from the driver
the situation -> ALARM - decision making -
establishing a direct
contact
Action On:
Brakes
Direction Light
Steering wheel
Page 58 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
As per the GM legacy process, the DPMS project has to be verified and validated across different technical
review boards that have expertise in different competencies, such as Security and Safety.
On the security side, DMPS requirements have been analysed by a Cybersecurity technical board. After the
requirements review, the experts identified the criticalities by employing the Threat Assessment and
Remediation Analysis (TARA) methodology and related Attack Trees models. This approach identified and
assessed cyber vulnerabilities and selected countermeasures which were effective at mitigating those
vulnerabilities.
Figure 43 portrays the interaction of project requirement, threat analysis and identified countermeasure
in a graphical perspective.
Likelihood Threat
Threat Risk
Model Assessment
Severity
Cause analysis
Security Requirement / Goal
Attack Tree
Countermeasure Countermeasure
1 2
IMPLEMENTS IMPLEMENTS
SYSTEM
The TARA methodology enables detailed modelling of the potential security threats to the system’s critical
elements and identifies appropriate requirements and counter-measures to mitigate the cumulative risk.
Further refinement of the causes that can lead to an attack being successful, and highlight vulnerabilities,
is performed using an appropriate qualitative analysis technique, such as security attack trees.
Page 59 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Attack trees have been used as conceptual diagrams to highlight assets/targets that might be attacked and
the related safety effect (see engineering stories in the next section). Security attack trees share a similar
structure with fault trees, differing mainly in the semantics of the base and intermediate causes and their
effects.
From this point on, a Safety-Security Hybrid Analysis can qualitatively link to Security Violations and to
system Failures and safety Hazards.
AS shown in Figure 44, dangerous vehicle behavior can be caused by either a System malfunction, typical
RAMS issue (Failure), or a Security Threat (Attack). This can lead to gaining control of vehicle stability
controller.
This may also affect the DPMS, where being hijacked, it may produce misleading results and trigger an
“unexpected action” that causes the vehicle to unexpectedly takes over the control of the vehicle.
Hybrid analysis enables better communication of issues spanning different dependability domains.
The new version of the ODE v2 seen on section 3 exploits the similarity seen within attack trees, enhancing
the definition of fault trees containing both security and safety-related events. This enables security threats
identified by TARA to be analysed via security attack trees and linked to fault trees, all under the singular
DDI structure.
Page 60 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Being two (or more) different company entities with different processes, the integration between these
competencies (e.g. security and safety), typically results in additional work for the team, who have to
synchronize the (different) implementation guidelines provided by both boards, and double check the
potential impact (Figure 45).
This is a very time consuming activity and may result in increased time-to-market.
The adoption of the DDI methodology at development time shall help the team during the design phase,
on the following aspects:
• adopting the security-safety co-engineering by design;
• helping identifying criticalities and marginalities of the project without the needs to involve
technical board in early phase;
• implementing state-of-the-art cybersecurity solution already available on the market.
The process shall result in faster development time, cutting out intermediate approval loops, allowing the
team to start work early, and submitting a first “security proof “ design to review board. The boards are still
responsible for approval at the end of this first design round, because they are still the centre of expertise
and responsible for the validation.
The engineering story analyses a condition where the malware threat is intended to corrupt the vehicle
safety & stability onboard system, activating the automatic breaking features, typically used to prevent
potential accident. The attack hijacks the algorithm that processes the vehicle stability data coming from
the sensors, and the effect is the unauthorized activation of the emergency brake mechanism, which in this
case may cause collision or loss of control of the vehicle (Figure 46).
From a more generic perspective, an attack against an embedded OS like the one that is running on vehicle
HMI, is intended to gain control of a privileged (ID=root) process and to act as admin. The hijack allows the
attacker to perform unauthorised action, for example, stealing private date coming from the vehicle (drive
profile, scoring system, vehicle position), or tampering with the vehicles’ sensor information which is
exchanged through the vehicle network (Figure 47).
Page 62 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
The Linux embedded operating system, may also be affected by injection of malicious software (Figure 48)
and result in a system’s unpredictable behavior, vehicle hijacking, and broken integrity and confidentiality.
Page 63 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Page 64 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Page 65 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
4.3.1 Introduction
The GDPR lays down rules relating to the protection of natural persons with regard to the processing of
personal data and rules relating to the free movement of personal data. GDPR lays out responsibilities for
organisations to ensure the privacy and protection of personal data, provides data subjects with certain
rights, and assigns powers to regulators to ask for demonstrations of accountability or even impose fines
in cases where an organisation is not complying with GDPR requirements.
The organisations that need to be EU GDPR compliant are:
Companies (controllers and processors) established in the EU, regardless of whether or not the processing
takes place within the EU;
Companies (controllers and processors) not established in the EU offering goods or services within the EU
or to EU individuals.
A ‘Processor’ means a natural or legal person, public authority, agency or other body which processes
personal data on behalf of the controller. A ‘Controller’ means the natural or legal person, public authority,
agency or other body which, alone or jointly with others, determines the purposes and means of the
processing of personal data. ‘Processing’ means any operation or set of operations which is performed on
personal data or on sets of personal data, whether or not by automated means, such as collection,
recording, organisation, structuring, storage, adaptation or alteration, retrieval, consultation, use,
Page 66 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Page 67 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
the additional risks associated with effectiveness and system/data security. If the processes are integrated,
there could be an inclination to drop the evaluation of those risks that do not lead to harm (in the safety
sense), which can lead to incomplete or inconsistent security controls. Additionally, security risk assessment
models typically use assessment factors that are different from safety risk assessment (while safety risk
involves evaluating the probability and severity of a hazard leading to harm, security risk is based on an
assessment of the likelihood that a threat will successfully exploit a device vulnerability, an event that could
lead to an adverse impact due to a compromise of system confidentiality, integrity, and/or availability).
Furthermore, integrating safety and security risk assessment into a single general risk management process
may result in major modifications to a well-functioning safety risk management process. The relationship
between security and safety risks is depicted in Figure 54.
Security risk
(includes breach Security risk Safety
of data and with safety related risk
systems security impact
and reduction of
effectiveness)
Security risks that impact safety, should also be captured in the organization’s safety risk management
process. A specific risk assessed as “must mitigate” in one model might be assessed as “does not need
further mitigation” in the other. Risk control measure(s) should be applied to bring the risk into the
acceptable range in both assessment models. There will be risks managed in the security risk assessment
that are not propagated to the safety risk management process. An example would be a risk of compromise
of the confidentiality of protected health information that is not considered harm (in the safety sense), but
clearly requires mitigation by the security risk management process. There are also business and reputation
risks associated with a security compromise that are not considered harm in the safety sense.
A security compromise that leads to harm (in the safety sense) should be managed within the security risk
management process and propagated for assessment using the organisation’s safety risk management
process. An example of a security risk that is also a safety risk is a malicious attacker gaining access to a
medical device’s code, altering that code, and causing the device to malfunction. This malfunction may
have the potential to cause harm to the patient.
As the purpose of GDPR is to ensure the privacy and protection of personal data, and provide data subjects
with certain rights, it is proposed that GDPR requirements are handled by the DDI’s security package
Page 68 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
(TARA). Any compromise of GDPR requirements that could lead to harm in the safety sense should be
propagated for assessment in the DDI’s HARA.
As exemplar, consider the following Portable Medical engineering story:
Context: Compromise ONCOassist User data
Description: ONCOassist user data is captured on initial signup to the platform. All details are stored on
server located in Republic of Ireland. PMT is both a ‘processor’ and ‘controller’ of personal data, and under
GDPR rules PMT must ensure the privacy and protection of personal data.
Challenge: Protect against an attack intended to steal client data such as name, address etc.
DDI implementation: GDPR requires a risk based approach to data security. Article 35 requires companies
to perform data protection impact assessments (the controller shall, prior to processing, carry out an
assessment of the impact of the envisaged processing operations on the protection of personal data) to
assess and identify risks to individuals’ data. In this engineering story the potential for theft of personal
data is considered a security risk and will be dealt with using the TARA which assesses the likelihood of a
successful attack, in addition to its impact. If the result of this assessment warrants threat mitigation then
controls that ONCOassist consider include data minimisation, pseudonymisation etc.
A guide to assessing an organisations compliance with GDPR is included in Appendix A.
Page 69 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Page 70 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
References
Andrews, Z., Payne, R., Romanovsky, A., Dider, A., & Mota, A. (2014). Static Fault Analysis Support -
Technical Manual. COMPASS Project EU. Retrieved July 2018, from http://www.compass-
research.eu/Project/Deliverables/D33_3b%20final.pdf
Biehl, M., Chen, D., & Torngren, M. (2010). Integrating Safety Analysis into the Model-based Development
Toolchain of Automotive Embedded Systems. LCTES '10 Proceedings of the ACM SIGPLAN/SIGBED
2010 conference on Languages, compilers, and tools for embedded systems (pp. 125-131).
Stockholm, Sweden: ACM.
Biggs, G., Sakamoto, T., & Kotoku, T. (2014). A profile and tool for modeling safety information with design
information in SysML. Software & Systems Modeling, 15(1), 147-178.
doi:https://doi.org/10.1007/s10270-014-0400-x
CENELEC. (2003). EN 50129 Railway Applications: Safety related electronic systems for signalling.
DEIS Consortium. (2017). D2.1: Project Requirement.
DEIS Consortium. (2018). D3.1 Specification of the ODE metamodel and documentation of the fundamental
concept of DDI.
ETCS/ERTMS. (2016, 05 12). Safety Requirements for the Technical Interoperability of ETCS in Levels
(Subset-091, Issue: 3.6.0).
Friedenthal, S., Moore, A., & Steiner, R. (2008). A Practical Guide to SysML The Systems Modeling Language
(1st ed.). Palo Alto, CA, USA: Elsevier. doi:https://doi.org/10.1016/b978-0-12-374379-4.x0001-x
Geoffrey Biggs/AIST. (2017). SafeML 1.1.1 Documentation. Retrieved September 15, 2018, from SafeML
Introduction: https://staff.aist.go.jp/geoffrey.biggs/safeml/
Mian, Z., Bottaci, L., Papadopoulos, Y., & Biehl, M. (2012). System Dependability Modelling and Analysis
Using AADL and HiP-HOPS. 14th IFAC Symposium on Information Control Problems in
Manufacturing. 45 (6), pp. 1647-1652. Bucharest, Romania: Elsevier.
doi:https://doi.org/10.3182/20120523-3-RO-2023.00334
Schneider, D., & Trapp, M. (2013). Conditional Safety Certification of Open Adaptive Systems. ACM Trans.
Auton. Adapt. Syst. (ACM Transactions on Autonomous and Adaptive Systems), 8(2), pp. 1-20.
doi:10.1145/2491465.2491467
Trapp, M., Weiss, G., & Schneider, D. (2018). Towards safety-awareness and dynamic safety management.
Proceedings of IEEE 14th Eurpean Dependable Computing Conference (EDCC).
Zoe, A., Payne, R., Romanovsky, A., Dider, A., & Mota, A. (2014). Static Fault Analysis Support - Technical
Manual. COMPASS Project EU. Retrieved July 2018, from http://www.compass-
research.eu/Project/Deliverables/D33_3b%20final.pdf
Page 71 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
Appendix A
The following questions provide a guide to assessing an organisations compliance with GDPR
1. Are both the legal basis and the purpose for each processing activity documented?
2. Will the personal data be processed for a purpose other than what was intended at the time of
collection?
3. Do consent-collecting mechanisms require some action (e.g., ticking a box) or affirmative
statement by the data subject?
4. If the legal basis for collecting data is consent, is explicit consent obtained?
5. Has a representative within the European Union been designated (for organisations outside the
EU)?
6. Do contracts with third parties specify that the third party must have data protection and security
protection clauses/annexes in place?
7. Are records kept of all processing activities your company engages in?
8. Are all data transfers documented, including cross-border transfers?
9. Is a Privacy Notice provided to data subjects at every point of data collection?
10. If data is to be processed for a secondary purpose, are data subjects notified of the new purpose
prior to processing?
11. Does the Privacy Notice clearly specify how data subjects can exercise their rights under the GDPR?
12. Are internal policies in place defining what is considered to be a data breach and when and if
notification to data subjects or Supervisory Authorities is required?
13. Do agreements/contracts with third parties specify that the third party has to notify you (the
controller) without undue delay after becoming aware of a data breach or potential data breach
involving personal data?
14. Is a log kept of all data breaches that occur, along with the effects and remedial actions taken?
15. Are assessments of processing activities conducted by the relevant personnel to determine the
data protection measures that should be in place, proportionate to the risks involved with the
processing activity?
16. Is privacy assessed at the beginning stages of development of any processing activity?
17. Are measures such as data minimisation and pseudonymisation implemented across all applicable
organisational units?
18. Are Data Protection Impact Assessments (DPIAs) completed for processing activities involving
special categories of information, automated decision making, or profiling?
19. Are DPIAs completed prior to implementing new technologies, processes, or projects?
20. Are there processes in place for
a. responding to a data subject’s request for access to information?
b. rectifying/deleting information about a data subject?
c. communicating updates of personal data to third parties who have received the data?
d. allowing a data subject to revoke consent for a particular processing activity at any time?
Page 72 of 73
Engineering Framework for the Generation and Integration of Digital Dependability Identities
e. ensuring processing is stopped, including any processing by third parties when consent is
revoked?
f. complying with requests to restrict the processing of data if requested by a data subject?
g. complying with requests from a data subject to have their personal data transferred
directly to another controller?
h. stopping processing for direct marketing purposes when an objection is received?
i. allowing a data subject to request a manual review of the decision or profiling activity (in
the case of automated decision making)?
j. transferring personal data to a third country or international organisation?
k. ensuring the appropriate Supervisory Authority is notified within 72 hours of a confirmed
data breach?
Page 73 of 73