Requirements#
JSON Requirements
|
status: draft
safety: ASIL_B
|
||||
General Requirements#
JSON Deserialization
|
status: valid
security: NO
safety: ASIL_B
|
||||
The JSON-Library shall provide a service to deserialize JSON data according to RFC8259, i.e. parse and check for well-formedness. |
|||||
JSON Serialization
|
status: valid
security: NO
safety: ASIL_B
|
||||
The JSON-Library shall provide a service to serialize user format into JSON data according to RFC8259. |
|||||
Return data in user format
|
status: valid
security: NO
safety: ASIL_B
|
||||
The JSON-Library shall return parsed data in a compatible user format. Note: The user format shall be a regular type and not defined within the library. |
|||||
User friendly API for information exchange#
Support for programming language idioms
|
status: valid
security: NO
safety: ASIL_B
|
||||
The public API shall support the idioms of the programming language it is written in. |
|||||
Use programming language infrastructure
|
status: valid
security: NO
safety: ASIL_B
|
||||
The public API shall use core infrastructure of its programming language and accompanying standard libraries, whenever possible and meaningful. Note: This includes error handling. |
|||||
Enforce strict type compatibility
|
status: valid
security: NO
safety: ASIL_B
|
||||
The public API shall enforce strict type compatibility. When a user requests a value, the API shall validate that the requested return type is compatible with the type and value of the stored JSON data. Note: This includes checking if the stored value exceeds the range of the expected type. |
|||||
Full testability for the user facing API#
Fully testable public API
|
status: valid
security: NO
safety: ASIL_B
|
||||
The public API of the library shall support dependency injection with test doubles. Note: This enables full testability of the user code. |
|||||
Safety Impact#
JSON library ASIL level
|
status: valid
security: NO
safety: ASIL_B
|
||||
The JSON library shall be ASIL-B compliant. |
|||||
AoU Requirements#
JSON data integrity
|
status: valid
security: NO
safety: ASIL_B
|
||||
The user shall provide a string as input which is not corrupted due to HW or QM SW errors. Note: This could be achieved by using a safe read-only filesystem for JSON file storage or a checksum protection on the JSON file content. |
|||||
Access control
|
status: valid
security: NO
safety: ASIL_B
|
||||
The user shall ensure access control and manipulation prevention on the JSON files. Note: This can be done by the hosting process and system configuration (e.g. by using dm-verity). |
|||||