Requirements#

Communication.SystemErrorHandling#

(C++) exceptions shall not be used for error handling. The best way to deal with errors is to try to resolve those component internally. If not possible the caller of the function shall be notified of the error. For (error) returns there is a specific library to be used in S-CORE, it is the Score::Result library which is part of the Base Libraries feature.

Communication.InterProcessCommunication#

The platform shall support inter-process communication.

Communication.IntraProcessCommunication#

The platform shall support intra-process communication.

Communication.StableApplicationInterfaces#

The platform shall provide a framework to mitigate incompatible changes on external interfaces to keep application interfaces stable.

Communication.ExtensibleExternalCommunication#

The platform shall support external communication via well established protocols e.g. Zenoh, DDS.

Communication.SystemSafeCommunication#

The platform shall support safe communication.

Communication.SecureCommunication#

The following security features shall be supported by the platform: Mandatory access control, Secure boot, Secure onboard communication, IPSec and MACSec, Firewall, Certificate installation and storage in HSM or ARM trustzone, Kernel hardening (ASLR, Pointer obfuscation …) in libc and compiler, Identity and Access Management, Secure Feature Activation, Secure software update.

Communication.SupportForTimeBasedArchitectures#

The platform shall support a deterministic, time-based application execution model that triggers logic based on predefined schedules or polling intervals.

Communication.SystemSupportForDataDrivenArchitecture#

The platform shall support an event-driven, high-throughput application architecture where execution is triggered by data changes.

Communication.SystemSupportForRequestDrivenArchitecture#

The platform shall support a request-driven, asynchronous application architecture that processes requests on-demand.

Communication.ProgrammingLanguagesForApplicationDevelopment#

The platform shall support implementation of applications in the following programming languages up to the highest ASIL level as defined in automotive_safety: C, C++, Rust.

Communication.TracingOfCommunication#

The platform shall support the tracing of communication events for internal and external communication systems.