Skip to content

Commit c607d5a

Browse files
authored
Merge pull request #20 from qorix-group/vohae_safety_analysis
Process description safety analysis takeover from old process repository
2 parents b6d46db + 1d644b3 commit c607d5a

23 files changed

+4043
-107
lines changed

process/_assets/score_process_area_overview.drawio.svg

Lines changed: 873 additions & 4 deletions
Loading

process/process_areas/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ Process Areas
2828
problem_resolution/index.rst
2929
release_management/index.rst
3030
requirements_engineering/index.rst
31+
safety_analysis/index.rst
3132
safety_management/index.rst
3233
tool_management/index.rst
3334
verification/index.rst

process/process_areas/safety_analysis/_assets/safety_analysis_component.drawio.svg

Lines changed: 479 additions & 0 deletions
Loading

process/process_areas/safety_analysis/_assets/safety_analysis_feature.drawio.svg

Lines changed: 502 additions & 0 deletions
Loading

process/process_areas/safety_analysis/_assets/safety_analysis_workflow.drawio.svg

Lines changed: 829 additions & 0 deletions
Loading
Lines changed: 236 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,236 @@
1+
..
2+
# *******************************************************************************
3+
# Copyright (c) 2025 Contributors to the Eclipse Foundation
4+
#
5+
# See the NOTICE file(s) distributed with this work for additional
6+
# information regarding copyright ownership.
7+
#
8+
# This program and the accompanying materials are made available under the
9+
# terms of the Apache License Version 2.0 which is available at
10+
# https://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# SPDX-License-Identifier: Apache-2.0
13+
# *******************************************************************************
14+
15+
.. _dfa failure initiators:
16+
17+
DFA failure initiators
18+
======================
19+
20+
.. gd_guidl:: DFA failure initiators
21+
:id: gd_guidl__dfa_failure_initiators
22+
:status: valid
23+
:complies: std_wp__iso26262__software_751, std_wp__iso26262__software_753
24+
25+
26+
:note: Use the failure initiators to ensure a structured analysis. If a failure doesn't apply, please fill in a short desciption in the violation cause of the analysis so it could be recognized that the analysis is done. If there are additional failure initiators needed, please enlage the list of fault models.
27+
28+
**Purpose**
29+
30+
In order to identify all cascading and common cause failures, which may initiated from your feature or components to the platform, other features, components, etc.,
31+
use the following framework of dependent failure initiators to check your completeness of the analysis.
32+
33+
DFA failure initiators
34+
======================
35+
36+
2.1 Shared resources
37+
38+
.. list-table:: DFA shared resources
39+
:header-rows: 1
40+
:widths: 10,30,30,30
41+
42+
* - ID
43+
- Violation cause shared resources
44+
- Simplification
45+
- Importance (can be used for priorisation)
46+
* - SR_01_01
47+
- Reused software modules
48+
-
49+
- Medium
50+
* - SR_01_02
51+
- Libraries
52+
- SR_01_01
53+
- Medium
54+
* - SR_01_04
55+
- Basic software
56+
-
57+
- Medium
58+
* - SR_01_05
59+
- Operating system including scheduler
60+
-
61+
- Medium
62+
* - SR_01_06
63+
- Any service stack, e.g. communication stack
64+
-
65+
- Medium
66+
* - SR_01_07
67+
- Configuration data
68+
-
69+
- Medium
70+
* - SR_01_09
71+
- Execution time
72+
-
73+
- Medium
74+
* - SR_01_10
75+
- Allocated memory
76+
-
77+
- Medium
78+
79+
80+
| 2.2 Communication between the two elements:
81+
| Receiving function is affected by information that is false, lost, sent multiple times, or in the wrong order etc. from the sender.
82+
83+
.. list-table:: DFA communication between elements
84+
:header-rows: 1
85+
:widths: 10,30,30,30
86+
87+
* - ID
88+
- Violation cause communication between elements
89+
- Simplification
90+
- Importance (can be used for priorisation)
91+
* - CO_01_01
92+
- Information passed via argument through a function call, or via writing/reading a variable being global to the two software functions (data flow)
93+
-
94+
- Medium
95+
* - CO_01_02
96+
- Data or message corruption / repetition / loss / delay / masquerading or incorrect addressing of information
97+
-
98+
- Medium
99+
* - CO_01_03
100+
- Insertion / sequence of information
101+
-
102+
- Medium
103+
* - CO_01_04
104+
- Corruption of information, inconsistent data
105+
-
106+
- Medium
107+
* - CO_01_05
108+
- Asymmetric information sent from a sender to multiple receivers, so that not all defined receivers have the same informations
109+
-
110+
- Medium
111+
* - CO_01_06
112+
- Information from a sender received by only a subset of the receivers
113+
-
114+
- Medium
115+
* - CO_01_07
116+
- Blocking access to a communication channel
117+
-
118+
- Medium
119+
120+
| 2.3 Shared information inputs
121+
| Same information input used by multiple functions.
122+
123+
.. list-table:: DFA shared information inputs
124+
:header-rows: 1
125+
:widths: 10,30,30,30
126+
127+
* - ID
128+
- Violation cause shared information inputs
129+
- Simplification
130+
- Importance (can be used for priorisation)
131+
* - SI_01_02
132+
- Configuration data
133+
-
134+
- Medium
135+
* - SI_01_03
136+
- Constants, or variables, being global to the two software functions
137+
-
138+
- Medium
139+
* - SI_01_04
140+
- Basic software passes data (read from hardware register and converted into logical information) to two applications software functions
141+
-
142+
- Medium
143+
* - SI_01_05
144+
- Data / function parameter arguments / messages delivered by software function to more than one other function
145+
-
146+
- Medium
147+
148+
| 2.4 Unintended impact
149+
| Unintended impacts to function due to various failures.
150+
151+
.. list-table:: DFA unintended impact
152+
:header-rows: 1
153+
:widths: 10,30,30,30
154+
155+
* - ID
156+
- Violation cause unintended impact
157+
- Simplification
158+
- Importance (can be used for priorisation)
159+
* - UI_01_01
160+
- Memory miss-allocation and leaks
161+
-
162+
- Medium
163+
* - UI_01_02
164+
- Read/Write access to memory allocated to another software element
165+
-
166+
- Medium
167+
* - UI_01_03
168+
- Stack/Buffer under-/overflow
169+
-
170+
- Medium
171+
* - UI_01_04
172+
- Deadlocks
173+
-
174+
- Medium
175+
* - UI_01_05
176+
- Livelocks
177+
-
178+
- Medium
179+
* - UI_01_06
180+
- Blocking of execution
181+
-
182+
- Medium
183+
* - UI_01_07
184+
- Incorrect allocation of execution time
185+
-
186+
- Medium
187+
* - UI_01_08
188+
- Incorrect execution flow
189+
-
190+
- Medium
191+
* - UI_01_09
192+
- Incorrect synchronization between software elements
193+
-
194+
- Medium
195+
* - UI_01_10
196+
- CPU time depletion
197+
-
198+
- Medium
199+
* - UI_01_11
200+
- Memory depletion
201+
-
202+
- Medium
203+
* - UI_01_12
204+
- Other HW unavailability
205+
-
206+
- Medium
207+
208+
| Development failure initiators
209+
| Secition is **only aplicable if a divers SW development is needed** due to decomposition.
210+
211+
:note: Section shall be applied only once to analyse all dependencies of the features. Results shall be checked during of the analysis of new features if this is applicable to the feature.
212+
213+
.. list-table:: DFA development failure initiators
214+
:header-rows: 1
215+
:widths: 10,30,30,30
216+
217+
* - ID
218+
- Violation cause development failure initiators
219+
- Simplification
220+
- Importance (can be used for priorisation)
221+
* - SC_01_02
222+
- Same development approaches (e.g. IDE, programming and/or modelling language)
223+
-
224+
- Medium
225+
* - SC_01_03
226+
- Same personal
227+
-
228+
- Medium
229+
* - SC_01_04
230+
- Same social-cultural context (even if different personnel). Only applicable if diverse development is needed.
231+
-
232+
- Medium
233+
* - SC_01_05
234+
- Development fault (e.g. human error, insufficient qualification, insufficient methods). Only applicable if diverse development is needed.
235+
-
236+
- Medium
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
..
2+
# *******************************************************************************
3+
# Copyright (c) 2025 Contributors to the Eclipse Foundation
4+
#
5+
# See the NOTICE file(s) distributed with this work for additional
6+
# information regarding copyright ownership.
7+
#
8+
# This program and the accompanying materials are made available under the
9+
# terms of the Apache License Version 2.0 which is available at
10+
# https://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# SPDX-License-Identifier: Apache-2.0
13+
# *******************************************************************************
14+
15+
.. _dfa_templates:
16+
17+
DFA Templates
18+
=============
19+
20+
.. gd_temp:: Feature DFA Templates
21+
:id: gd_temp__feat_saf_dfa
22+
:status: valid
23+
:complies: std_wp__iso26262__analysis_751, std_wp__iso26262__software_753, std_wp__isopas8926__4524, std_req__iso26262__software_7411, std_req__iso26262__analysis_741, std_req__iso26262__analysis_742, std_req__iso26262__analysis_743, std_req__iso26262__analysis_745, std_req__iso26262__analysis_746, std_req__iso26262__analysis_747, std_req__iso26262__analysis_748, std_req__iso26262__analysis_749, std_req__isopas8926__44432
24+
25+
| .. feat_saf_dfa:: <Element descriptor>
26+
| :verifies: <Feature architecture>
27+
| :id: feat_saf_DFA__<Feature>__<Element descriptor>
28+
| :violation_id: <ID from DFA failure initiators :need:`gd_guidl__dfa_failure_initiators`>
29+
| :violation_cause: "description of failure effect of the failure initiator on the element"
30+
| :mitigation: < NONE|ID from Feature Requirement>
31+
| :mitigation_issue: <ID from Issue Tracker| None if no issue needed>
32+
| :sufficient: <yes|no>
33+
| :argument: <text to argument why mitigation is sufficient>
34+
| :status: <valid|invalid>
35+
36+
37+
.. gd_temp:: Component DFA Templates
38+
:id: gd_temp__comp_saf_dfa
39+
:status: valid
40+
:complies: std_wp__iso26262__analysis_751, std_wp__iso26262__software_753, std_wp__isopas8926__4524, std_req__iso26262__software_7411, std_req__iso26262__analysis_741, std_req__iso26262__analysis_742, std_req__iso26262__analysis_743, std_req__iso26262__analysis_745, std_req__iso26262__analysis_746, std_req__iso26262__analysis_747, std_req__iso26262__analysis_748, std_req__iso26262__analysis_749, std_req__isopas8926__44432
41+
42+
| .. comp_saf_dfa:: <Element descriptor>
43+
| :verifies: <Component architecture>
44+
| :id: comp_saf_DFA__<Component>__<Element descriptor>
45+
| :violation_id: <ID from DFA failure initiators :need:`gd_guidl__dfa_failure_initiators`>
46+
| :violation_cause: "description of failure effect of the failure initiator on the element"
47+
| :mitigation: < NONE|ID from Component Requirement>
48+
| :mitigation_issue: <ID from Issue Tracker| None if no issue needed>
49+
| :sufficient: <yes|no>
50+
| :argument: <text to argument why mitigation is sufficient>
51+
| :status: <valid|invalid>

0 commit comments

Comments
 (0)