Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
124 changes: 124 additions & 0 deletions docs/features/persistency/safety_analysis/fmea.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
{
"current_version": "0.1",
"versions": {
"0.1": {
"needs": {
"feat_saf_fmea__persistency__message_nreived": {
"id": "feat_saf_fmea__persistency__message_nreived",
"type": "feat_saf_fmea",
"title": "feat_saf_fmea__persistency__message_nreived",
"content": "User is not able to use the feature. Middleware cant be used. User is not able to use the feature. Middleware cant be used. Loss of execution can only be caused by the application, not by the persistency feature itself.\nFailure handling is addressed to the application by the aou_req__persistency__error_handling.",
"status": "valid",
"tags": [],
"fault_id": "MF_01_01",
"failure_effect": "Message is not received so the feature persistency is not available.",
"sufficient": "yes",
"violates": [
"feat_arc_dyn__persistency__check_key_default",
"feat_arc_dyn__persistency__delete_key",
"feat_arc_dyn__persistency__flush",
"feat_arc_dyn__persistency__read_key",
"feat_arc_dyn__persistency__read_from_storage",
"feat_arc_dyn__persistency__write_key",
"feat_arc_dyn__persistency__snapshot_restore"
],
"mitigated_by": [
"aou_req__persistency__error_handling"
]
},
"feat_saf_fmea__persistency__late_message": {
"id": "feat_saf_fmea__persistency__late_message",
"type": "feat_saf_fmea",
"title": "feat_saf_fmea__persistency__late_message",
"content": "Subset of MF_01_01 if the delay is to long.",
"status": "valid",
"tags": [],
"fault_id": "MF_01_02",
"failure_effect": "message received too late.",
"sufficient": "yes",
"violates": [
"feat_arc_dyn__persistency__check_key_default",
"feat_arc_dyn__persistency__delete_key",
"feat_arc_dyn__persistency__flush",
"feat_arc_dyn__persistency__read_key",
"feat_arc_dyn__persistency__read_from_storage",
"feat_arc_dyn__persistency__write_key",
"feat_arc_dyn__persistency__snapshot_restore"
],
"mitigated_by": [
"aou_req__persistency__error_handling"
]
},
"feat_saf_fmea__persistency__corrupted_message": {
"id": "feat_saf_fmea__persistency__corrupted_message",
"type": "feat_saf_fmea",
"title": "feat_saf_fmea__persistency__corrupted_message",
"content": "Covered by MF_01_01",
"status": "valid",
"tags": [],
"fault_id": "MF_01_05",
"failure_effect": "message is corrupted so the feature persistency is not available.",
"sufficient": "yes",
"violates": [
"feat_arc_dyn__persistency__check_key_default",
"feat_arc_dyn__persistency__delete_key",
"feat_arc_dyn__persistency__flush",
"feat_arc_dyn__persistency__read_key",
"feat_arc_dyn__persistency__read_from_storage",
"feat_arc_dyn__persistency__write_key",
"feat_arc_dyn__persistency__snapshot_restore"
],
"mitigated_by": [
"aou_req__persistency__error_handling"
]
},
"feat_saf_fmea__persistency__not_sent": {
"id": "feat_saf_fmea__persistency__not_sent",
"type": "feat_saf_fmea",
"title": "feat_saf_fmea__persistency__not_sent",
"content": "Covered by MF_01_01 because the violation cause is the same.",
"status": "valid",
"tags": [],
"fault_id": "MF_01_06",
"failure_effect": "message is not sent so the feature persistency is not available.",
"sufficient": "yes",
"violates": [
"feat_arc_dyn__persistency__check_key_default",
"feat_arc_dyn__persistency__delete_key",
"feat_arc_dyn__persistency__flush",
"feat_arc_dyn__persistency__read_key",
"feat_arc_dyn__persistency__read_from_storage",
"feat_arc_dyn__persistency__write_key",
"feat_arc_dyn__persistency__snapshot_restore"
],
"mitigated_by": [
"aou_req__persistency__error_handling"
]
},
"feat_saf_fmea__persistency__err_handl": {
"id": "feat_saf_fmea__persistency__err_handl",
"type": "feat_saf_fmea",
"title": "feat_saf_fmea__persistency__err_handl",
"content": "User is not able to use the feature. Middleware cant be used. Loss of execution can only be caused by the application, not by the persistency feature itself.\nFailure handling is addressed to the application by the aou_req__persistency__error_handling.",
"status": "valid",
"tags": [],
"fault_id": "EX_01_04",
"failure_effect": "loss of execution will lead to an unavailability of the persistency feature.",
"sufficient": "yes",
"violates": [
"feat_arc_dyn__persistency__check_key_default",
"feat_arc_dyn__persistency__delete_key",
"feat_arc_dyn__persistency__flush",
"feat_arc_dyn__persistency__read_key",
"feat_arc_dyn__persistency__read_from_storage",
"feat_arc_dyn__persistency__write_key",
"feat_arc_dyn__persistency__snapshot_restore"
],
"mitigated_by": [
"aou_req__persistency__error_handling"
]
}
}
}
}
}
61 changes: 7 additions & 54 deletions docs/features/persistency/safety_analysis/fmea.rst
Original file line number Diff line number Diff line change
Expand Up @@ -40,59 +40,12 @@ Fault models
- EX_01_06: Processing is not complete (infinite loop): Failure initiator not applicable at persistency, so no mitigation is needed. The feature is developed fully deterministic, so no infinite loop is expected caused by persistency.


.. feat_saf_fmea:: Persistency
:violates: feat_arc_dyn__persistency__check_key_default, feat_arc_dyn__persistency__delete_key, feat_arc_dyn__persistency__flush, feat_arc_dyn__persistency__read_key, feat_arc_dyn__persistency__read_from_storage, feat_arc_dyn__persistency__write_key, feat_arc_dyn__persistency__snapshot_restore
:id: feat_saf_fmea__persistency__message_nreived
:fault_id: MF_01_01
:failure_effect: Message is not received so the feature persistency is not available.
:mitigated_by: aou_req__persistency__error_handling
:sufficient: yes
:status: valid
Failure Mode List
-----------------

User is not able to use the feature. Middleware cant be used. User is not able to use the feature. Middleware cant be used. Loss of execution can only be caused by the application, not by the persistency feature itself.
Failure handling is addressed to the application by the aou_req__persistency__error_handling.
.. needimport:: fmea.json
:hide:

.. feat_saf_fmea:: Persistency
:violates: feat_arc_dyn__persistency__check_key_default, feat_arc_dyn__persistency__delete_key, feat_arc_dyn__persistency__flush, feat_arc_dyn__persistency__read_key, feat_arc_dyn__persistency__read_from_storage, feat_arc_dyn__persistency__write_key, feat_arc_dyn__persistency__snapshot_restore
:id: feat_saf_fmea__persistency__late_message
:fault_id: MF_01_02
:failure_effect: message received too late.
:mitigated_by: aou_req__persistency__error_handling
:sufficient: yes
:status: valid

Subset of MF_01_01 if the delay is to long.

.. feat_saf_fmea:: Persistency
:violates: feat_arc_dyn__persistency__check_key_default, feat_arc_dyn__persistency__delete_key, feat_arc_dyn__persistency__flush, feat_arc_dyn__persistency__read_key, feat_arc_dyn__persistency__read_from_storage, feat_arc_dyn__persistency__write_key, feat_arc_dyn__persistency__snapshot_restore
:id: feat_saf_fmea__persistency__corrupted_message
:fault_id: MF_01_05
:failure_effect: message is corrupted so the feature persistency is not available.
:mitigated_by: aou_req__persistency__error_handling
:sufficient: yes
:status: valid

Covered by MF_01_01

.. feat_saf_fmea:: Persistency
:violates: feat_arc_dyn__persistency__check_key_default, feat_arc_dyn__persistency__delete_key, feat_arc_dyn__persistency__flush, feat_arc_dyn__persistency__read_key, feat_arc_dyn__persistency__read_from_storage, feat_arc_dyn__persistency__write_key, feat_arc_dyn__persistency__snapshot_restore
:id: feat_saf_fmea__persistency__not_sent
:fault_id: MF_01_06
:failure_effect: message is not sent so the feature persistency is not available.
:mitigated_by: aou_req__persistency__error_handling
:sufficient: yes
:status: valid

Covered by MF_01_01 because the violation cause is the same.

.. feat_saf_fmea:: Persistency
:violates: feat_arc_dyn__persistency__check_key_default, feat_arc_dyn__persistency__delete_key, feat_arc_dyn__persistency__flush, feat_arc_dyn__persistency__read_key, feat_arc_dyn__persistency__read_from_storage, feat_arc_dyn__persistency__write_key, feat_arc_dyn__persistency__snapshot_restore
:id: feat_saf_fmea__persistency__err_handl
:fault_id: EX_01_04
:failure_effect: loss of execution will lead to an unavailability of the persistency feature.
:mitigated_by: aou_req__persistency__error_handling
:sufficient: yes
:status: valid

User is not able to use the feature. Middleware cant be used. Loss of execution can only be caused by the application, not by the persistency feature itself.
Failure handling is addressed to the application by the aou_req__persistency__error_handling.
.. needtable::
:types: feat_saf_fmea
:columns: id;violates;fault_id;failure_effect;mitigated_by;sufficient;status;content
Loading