Safety Manual#
Persistency Safety Manual
|
status: valid
security: NO
safety: ASIL_B
|
||||
Introduction/Scope#
This manual will cover the Feature Persistency. It’s based on the components KVS and Tiny JSON.
Assumed Platform Safety Requirements#
For the module persistency the following safety related stakeholder requirements are assumed to define the top level functionality (purpose) of the module persistency. I.e. from these all the feature and component requirements implemented are derived.
List of stakeholder requirements, with ASIL B, the module’s components requirements are derived from.
Title |
ID |
Status |
|---|---|---|
Safe Mode Switch |
valid |
|
Support of safe Key/Value store |
valid |
Assumptions of Use#
AoU Requirements#
Persistency Error handling
|
status: valid
security: NO
safety: ASIL_B
|
||||
The application shall detect and handle the unavailability of the feature persistency. Unavailability covers errors reported by the persistency API as well as persistency calls which do not return or return too late (e.g. caused by blocked or delayed execution of the calling context). |
|||||
Assumptions on the Environment#
Generally the assumption of the S-CORE platform SEooC is that it is integrated in a safe system, i.e. the POSIX OS it runs on is qualified and also the HW related failures are taken into account by the system integrator, if not otherwise stated in the module’s safety concept.
List of AoUs expected from the environment the module runs on:
Title |
ID |
Status |
|---|---|---|
Persistency Error handling |
valid |
Assumptions on the User#
As there is no assumption on which specific OS and HW is used, the integration testing of the stakeholder and feature requirements is expected to be performed by the user of the platform SEooC. Tests covering all stakeholder and feature requirements performed on a reference platform (tbd link to reference platform specification), reviewed and passed are included in the platform SEooC safety package.
Additionally the components of the platform may have additional specific assumptions how they are used. These are part of every module documentation: Persistency Documentation. Assumptions from components to their users can be fulfilled in two ways:
1. There are assumption which need to be fulfilled by all SW components, e.g. “every user of an IPC mechanism needs to make sure that he provides correct data (including appropriate ASIL level)” - in this case the AoU is marked as “platform”.
2. There are assumption which can be fulfilled by a safety mechanism realized by some other S-CORE platform component and are therefore not relevant for an user who uses the whole platform. But those are relevant if you chose to use the module SEooC stand-alone - in this case the AoU is marked as “module”. An example would be the “JSON read” which requires “The user shall provide a string as input which is not corrupted due to HW or QM SW errors.” - which is covered when using together with safe S-CORE platform persistency feature.
List of AoUs on the user of the platform features or the module of this safety manual:
No needs passed the filters
Safety concept of the SEooC#
Persistency is developed fully deterministic. Detected errors are reported to the application, which has to handle them.
Persistency is executed in the execution context of the calling application. Failures which can not be detected by persistency
itself, like blocked or delayed execution, result in persistency not being available (no or too late response). The application
has to handle this unavailability (see Persistency Error handling (aou_req__persistency__error_handling)). Keeping persistency available is therefore
not a safety relevant assumption on the application.
Safety Anomalies#
No known safety anomalies related to the module persistency exist.
References#
<link to the user manual>
<other links>