Persistency Documentation#

This documentation describes the structure, usage and configuration of the Bazel-based C++/Rust module template according to the SCORE module folder structure and the SCORE building blocks concept.

Overview#

This repository provides a standardized setup for projects using C++ or Rust and Bazel as a build system. It integrates best practices for build, test, CI/CD and documentation.

Module Layout#

The module template includes the following top-level structure:

<module_name>/                      # Root folder of the module, subfolder only if more than one module exists in the repository
├── .github/
│   └── workflows/                  # CI/CD pipelines
├── docs/                           # Global documentation of the module
│   ├── features/                   # Feature documentation and architecture
│   │   └── <feature_name>/         # Feature folder parts for each feature which should be in module documentation
│   │       ├── architecture/       # Feature architecture [wp__feature_arch] and of architecture review [wp__sw_arch_verification]
│   │       ├── safety_analysis/    # Feature safety analysis artifacts ([wp__feature_fmea], [wp__feature_dfa], [wp__requirements_feat_aou])
│   │       ├── safety_planning/    # Feature safety planning artifacts
│   │       ├── security_analysis/  # Feature security analysis artifacts [wp__feature_security_analysis]
│   │       └── security_planning/  # Feature security planning artifacts
│   ├── module/                     # Module documentation
│   │   ├── manuals/                # Module manual, integration manual, table of assumptions of use,
│   │   │                           #   safety manual [wp__module_safety_manual],
│   │   │                           #   needs table of [wp__requirements_feat_aou]
│   │   │                           #   security manual [wp__module_security_manual]
│   │   ├── release/                # Module release note [wp__module_sw_release_note]
│   │   ├── safety_mgt/             # Module safety plan [wp__module_safety_plan],
│   │   │                           #   module safety package [wp__module_safety_package],
│   │   │                           #   formal document and safety analysis reviews [wp__fdr_reports]
│   │   └── security_mgt/           # Module security plan [wp__module_security_plan],
│   │                               #   module security package [wp__module_security_package],
│   │                               #   formal document reviews [wp__fdr_reports_security],
│   │                               #   module SW bill of material [wp__sw_module_sbom]
│   └── verification_report/        # Module verification report,
│                                   #   module verifications [wp__verification_module_ver_report],
├── examples/                       # Usage examples for the module / features
├── score/                          # Components of the module
│   └── <component_name>/           # Component folder for each component of the module
│   │   ├── docs/                   # Documentation of the component
│   │   │   ├── architecture/       # Component architecture [wp__component_arch]
│   │   │   │                       #   (only if lower level components exist)
|   │   |   |                       #   architecture review [wp__sw_arch_verification],
│   │   │   ├── detailed_design/    # Detailed design [wp__sw_implementation]
│   │   │   │                       #   code inspection [wp__sw_implementation_inspection]
│   │   │   ├── requirements/       # Component requirements [wp__requirements_comp],[wp__requirements_inspect]
│   │   │   ├── safety_analysis/    # Safety analysis [wp__sw_component_fmea], [wp__sw_component_dfa], [wp__requirements_comp_aou]
|   │   |   |                       #   Component classification [wp__sw_component_class] for pre-existing software
│   │   │   │                       #   (only if component architecture exists)
│   │   │   ├── security_analysis/  # Security analysis [wp__sw_component_security_analysis]
│   │   │   │                       #   (only if component architecture exists)
│   │   │   └── manuals/            # User documentation (of a single component, e.g., user manual of a library component, optional)
│   │   ├── <pub_interface_files>/  # Public interfaces and implementation files of the component; the optional src/ is omitted
│   │   ├── <lower_level_comp>/     # Lower level component (follows <component_name> structure)
│   │   └── tests/                  # Component-level tests (e.g., integration and unit tests)
├── tests/                          # Module-level tests (e.g., feature integration tests, system tests) [wp__verification_feat_int_test]
├── MODULE.bazel                    # Bazel module definition
├── BUILD                           # Root build rules
├── project_config.bzl              # Project metadata used by Bazel macros
└── README.md                       # Entry point of the repository

Module / Feature Documentation#

Module / Feature documentation overview#

Title

ID

Safety

Security

Status

[Feature Name] Requirements Inspection

doc__feature_name_req_inspection

ASIL_B

YES

draft

[Your Feature Name]

doc__feature_name

ASIL_B

YES

draft

[Your Feature Name] Architecture

doc__feature_name_architecture

ASIL_B

NO

draft

[Your Feature Name] Requirements

doc__feature_name_requirements

ASIL_B

NO

draft

[Your Platform Name] Security Analysis Checklist

doc__platform_name_security_analysis_fdr

ASIL_B

YES

draft

[Your Platform Name] Security Analysis Checklist

doc__platform_name_security_plan_fdr

ASIL_B

YES

draft

[Your Platform Name] Security Package Checklist

doc__platform_name_security_package_fdr

ASIL_B

YES

draft

AI-Platform

doc__ai_platform

ASIL_B

NO

draft

AI-Platform Architecture

doc__ai_platform_architecture

ASIL_B

NO

draft

Base Libraries

doc__baselibs

ASIL_B

YES

valid

Baselibs Architecture

doc__baselibs_architecture

ASIL_B

YES

valid

Baselibs Architecture Inspection Checklist

doc__baselibs_arc_inspection

ASIL_B

YES

valid

Baselibs Codeowners

doc__baselibs_codeowners

ASIL_B

YES

valid

Baselibs DFA

doc__baselibs_dfa

ASIL_B

YES

valid

Baselibs FMEA

doc__baselibs_fmea

ASIL_B

YES

valid

Baselibs Module Architecture

doc__baselibs_module_architecture

ASIL_B

YES

valid

Baselibs Module Verification Report

doc__baselibs_verification_report

QM

NO

valid

Baselibs Release Note

doc__baselibs_release_note

ASIL_B

YES

valid

Baselibs Requirements

doc__baselibs_requirements

ASIL_B

YES

valid

Baselibs Requirements Inspection Checklist

doc__baselibs_req_inspection

ASIL_B

YES

valid

Baselibs Safety Analysis Checklist

doc__baselibs_safety_analysis_fdr

ASIL_B

YES

draft

Baselibs Safety Manual

doc__baselibs_safety_manual

ASIL_B

NO

draft

Baselibs Safety Package Formal Review

doc__baselibs_safety_package_fdr

ASIL_B

NO

draft

Baselibs Safety Plan

doc__baselibs_safety_plan

ASIL_B

NO

valid

Baselibs Safety Plan Formal Review

doc__baselibs_safety_plan_fdr

ASIL_B

NO

draft

Baselibs Safety WPs

doc__baselibs_safety_wp

ASIL_B

YES

draft

Baselibs Verification Report

doc__baselibs_manual_verification_report

ASIL_B

YES

draft

Code-Generation

doc__code_generation

ASIL_B

NO

draft

Code-Generation Architecture

doc__code_generation_architecture

ASIL_B

NO

draft

Communication

doc__com

ASIL_B

YES

valid

Communication Codeowners

doc__communication_codeowners

ASIL_B

YES

valid

Communication IPC Safety WPs

doc__com_ipc_safety_wp

ASIL_B

YES

draft

Communication Release Note

doc__communication_release_note

ASIL_B

YES

valid

Communication Requirements

doc__communication_requirements

ASIL_B

YES

valid

Communication Safety Package Formal Review

doc__communication_safety_package_fdr

ASIL_B

NO

draft

Communication Safety Plan

doc__communication_safety_plan

ASIL_B

NO

draft

Communication Safety Plan Formal Review

doc__communication_safety_plan_fdr

ASIL_B

NO

draft

Communication Verification Report

doc__communication_verification_report

ASIL_B

YES

draft

Configuration Management

doc__config_mgmt

ASIL_B

YES

draft

Configuration Management Architecture

doc__config_mgmt_architecture

ASIL_B

YES

draft

Configuration Model

doc__configuration_model

QM

NO

draft

Deterministic App Abstraction Layer

doc__daal

QM

NO

valid

Deterministic App Abstraction Layer Architecture

doc__daal_architecture

QM

NO

draft

Diagnostics

doc__diagnostics

QM

YES

draft

Diagnostics Architecture

doc__diagnostics_architecture

QM

YES

draft

doc__logging

doc__logging

ASIL_B

YES

draft

FEO Assumptions of Use Requirements

doc__frameworks_feo_aou_reqs

ASIL_B

NO

draft

FEO Feature Architecture

doc__frameworks_feo_feat_arch

ASIL_B

NO

valid

FEO Feature Architecture Inspection Checklist

doc__arch_inspection_frameworks_feo

ASIL_B

NO

draft

FEO Feature DFA

doc__frameworks_feo_dfa

ASIL_B

NO

draft

FEO Feature FMEA

doc__frameworks_feo_fmea

ASIL_B

NO

draft

FEO Feature Requirements

doc__frameworks_feo_feat_reqs

ASIL_B

NO

valid

FEO Feature Requirements Inspection Checklist

doc__req_inspection_frameworks_feo

ASIL_B

NO

draft

FEO Feature Safety Analysis Inspection Checklist

doc__saf_ana_inspec_frameworks_feo

ASIL_B

NO

draft

FEO Module Release Note

doc__feo_release_note

ASIL_B

NO

valid

FEO Module Safety Package Formal Review

doc__feo_safety_package_fdr

ASIL_B

NO

draft

FEO Module Safety Plan

doc__feo_safety_plan

ASIL_B

NO

valid

FEO Module Safety Plan Formal Review

doc__feo_safety_plan_fdr

ASIL_B

NO

draft

FEO Module Verification Report

doc__feo_verification_report

ASIL_B

NO

draft

FEO Safety Work Products

doc__feo_safety_wp

ASIL_B

NO

valid

Fixed execution order framework

doc__frameworks_feo

ASIL_B

NO

valid

Gen-AI

doc__gen_ai

QM

NO

draft

Gen-AI Architecture

doc__gen_ai_architecture

QM

NO

draft

Inter-process Communication

doc__com_ipc

ASIL_B

YES

valid

IPC Architecture

doc__ipc_architecture

ASIL_B

YES

valid

IPC DFA

doc__ipc_dfa

ASIL_B

NO

draft

IPC FMEA

doc__ipc_fmea

ASIL_B

NO

draft

IPC Requirements

doc__ipc_requirements

ASIL_B

YES

valid

Lifcycle Security Package Formal Review

doc__lifecycle_sec_pkg_fdr

ASIL_B

YES

draft

Lifecycle

doc__lifecycle

ASIL_B

YES

valid

Lifecycle Architecture

doc__lifecycle_architecture

ASIL_B

YES

valid

Lifecycle Architecture Inspection Checklist

doc__lifecycle_arc_inspection

ASIL_B

YES

draft

Lifecycle DFA

doc__lifecycle_dfa

ASIL_B

NO

draft

Lifecycle Feature AoU

doc__lifecycle_feat_aou

ASIL_B

NO

draft

Lifecycle FMEA

doc__lifecycle_fmea

ASIL_B

NO

draft

Lifecycle Module Architecture

doc__lifecycle_module_architecture

ASIL_B

YES

valid

lifecycle Release Note v0.2.0

doc__lifecycle_release_note_v0_2_0

ASIL_B

NO

valid

lifecycle Release Note v0.3.0

doc__lifecycle_release_note_v0_3_0

ASIL_B

NO

valid

lifecycle Release Note v0.4.0

doc__lifecycle_release_note_v0_4_0

ASIL_B

NO

valid

lifecycle Release Note v0.5.0

doc__lifecycle_release_note_v0_5_0

ASIL_B

NO

valid

lifecycle Release Note v0.6.0

doc__lifecycle_release_note_v0_6_0

ASIL_B

NO

valid

lifecycle Release Note v0.6.1

doc__lifecycle_release_note_v0_6_1

ASIL_B

NO

valid

Lifecycle Requirements

doc__lifecycle_requirements

ASIL_B

YES

valid

Lifecycle Safety Analysis Checklist

doc__lifecycle_safety_analysis_fdr

ASIL_B

YES

draft

Lifecycle Safety Manual

doc__lifecycle_safety_manual

ASIL_B

NO

draft

Lifecycle Safety Package Formal Review

doc__lifecycle_safety_package_fdr

ASIL_B

NO

draft

Lifecycle Safety Plan

doc__lifecycle_safety_plan

ASIL_B

NO

draft

Lifecycle Safety Plan Formal Review

doc__lifecycle_safety_plan_fdr

ASIL_B

NO

draft

Lifecycle Safety WPs

doc__lifecycle_safety_wp

ASIL_B

NO

draft

Lifecycle Security Manual

doc__lifecycle_security_manual

ASIL_B

YES

draft

Lifecycle Security Plan

doc__lifecycle_security_plan

ASIL_B

YES

draft

Lifecycle Security Plan Formal Review

doc__lifecycle_security_plan_fdr

ASIL_B

YES

draft

Lifecycle Security WPs

doc__lifecycle_security_planning_wp

ASIL_B

YES

draft

Lifecycle Verification Report

doc__lifecycle_verification_report

ASIL_B

YES

draft

Logging Architecture

doc__logging_architecture

ASIL_B

YES

valid

Logging Architecture

doc__logging_module_architecture

ASIL_B

NO

draft

Logging Architecture Inspection Checklist

doc__logging_arc_inspection

ASIL_B

YES

draft

Logging Module Safety Plan

doc__logging_safety_plan

ASIL_B

NO

draft

Logging Release Note

doc__logging_release_note

ASIL_B

NO

valid

Logging Requirements

doc__logging_requirements

ASIL_B

YES

valid

Logging Requirements Inspection Checklist

doc__logging_req_inspection

ASIL_B

YES

draft

Logging Safety Analysis Checklist

doc__logging_safety_analysis_fdr

ASIL_B

YES

draft

Logging Safety Manual

doc__logging_safety_manual

ASIL_B

NO

draft

Logging Safety WPs

doc__logging_safety_wp

ASIL_B

NO

draft

Logging Verification Report

doc__logging_verification_report

ASIL_B

NO

draft

Orchestration

doc__orchestration

ASIL_B

YES

valid

Orchestration Architecture

doc__orchestration_architecture

ASIL_B

YES

draft

Orchestration DFA

doc__orchestration_dfa

ASIL_B

YES

draft

Orchestration FMEA

doc__orchestration_fmea

ASIL_B

YES

draft

Orchestration Requirements

doc__orchestration_requirements

ASIL_B

YES

valid

Orchestration Safety WPs

doc__orchestration_safety_wp

ASIL_B

YES

draft

Orchestrator Codeowners

doc__orchestrator_codeowners

ASIL_B

YES

valid

Orchestrator Release Note

doc__orchestrator_release_note

ASIL_B

YES

draft

Orchestrator Safety Package Formal Review

doc__orchestrator_safety_package_fdr

ASIL_B

YES

draft

Orchestrator Safety Plan

doc__orchestrator_safety_plan

ASIL_B

YES

draft

Orchestrator Safety Plan Formal Review

doc__orchestrator_safety_plan_fdr

ASIL_B

YES

draft

Orchestrator Verification Report

doc__orchestrator_verification_report

ASIL_B

YES

draft

Persistency

doc__persistency

ASIL_B

NO

valid

Persistency Architecture Inspection Checklist

doc__persistency_arc_inspection

ASIL_B

YES

draft

Persistency Codeowners

doc__persistency_codeowners

ASIL_B

YES

valid

Persistency DFA

doc__persistency_dfa

ASIL_B

NO

valid

Persistency FMEA

doc__persistency_fmea

ASIL_B

NO

valid

Persistency KVS Feature Architecture

doc__persistency_architecture

ASIL_B

NO

valid

Persistency KVS Feature Architecture

doc__persistency_kvs_architecture

ASIL_B

NO

valid

Persistency KVS Security WPs

doc__persistency_security_wp

ASIL_B

YES

valid

Persistency Module Verification Report

doc__persistency_verification_report

QM

NO

valid

Persistency Release Note

doc__persistency_release_note

ASIL_B

NO

valid

Persistency Requirements

doc__feature_persistency_requirements

ASIL_B

YES

valid

Persistency Requirements Inspection Checklist

doc__feature_persistency_requirements_chklst

ASIL_B

NO

valid

Persistency Safety Analysis Checklist

doc__persistency_safety_analysis_fdr

ASIL_B

YES

valid

Persistency Safety Analysis Checklist

doc__module_safety_analysis_fdr

ASIL_B

YES

valid

Persistency Safety Manual

doc__persistency_safety_manual

ASIL_B

NO

valid

Persistency Safety Package Formal Review

doc__persistency_safety_package_fdr

ASIL_B

NO

valid

Persistency Safety Plan

doc__persistency_safety_plan

ASIL_B

NO

valid

Persistency Safety Plan Formal Review

doc__persistency_safety_plan_fdr

ASIL_B

NO

valid

Persistency Safety WPs

doc__persistency_safety_wp

ASIL_B

NO

valid

Persistency Security Manual

doc__persistency_security_manual

ASIL_B

YES

draft

Persistency Security Package Formal Review

doc__persistency_sec_pkg_fdr

ASIL_B

YES

valid

Persistency Security Plan

doc__persistency_security_plan

ASIL_B

YES

valid

Persistency Security Plan Formal Review

doc__persistency_security_plan_fdr

ASIL_B

YES

valid

Persistency Verification Report

doc__persistency_manual_verification_report

ASIL_B

NO

valid

Platform DFA

doc__platform_dfa

ASIL_B

NO

draft

Platform Release Note

doc__platform_release_note

ASIL_B

NO

draft

Platform Safety Analysis Formal Review Report

doc__platform_safety_analysis_fdr

ASIL_B

YES

draft

Platform Safety Manual

doc__platform_safety_manual

ASIL_B

NO

draft

Platform Safety Package Formal Review

doc__platform_safety_package_fdr

ASIL_B

NO

draft

Platform Safety Plan

doc__platform_safety_plan

ASIL_B

NO

draft

Platform Safety Plan Formal Review

doc__platform_safety_plan_fdr

ASIL_B

NO

draft

Platform Security Analysis

doc__platform_security_analysis

ASIL_B

YES

draft

Platform Security Manual

doc__platform_security_manual

ASIL_B

YES

draft

Platform Security Plan

doc__platform_security_plan

ASIL_B

YES

draft

Platform Verification Report

doc__platform_verification_report_latest

QM

YES

valid

Platform Verification Report

doc__platform_verification_report

ASIL_B

YES

draft

Process description Release Note v1.5.3

doc__process_description_release_note_v152

ASIL_B

YES

valid

Process description Release Note v2.0.0

doc__process_description_release_note_v200

ASIL_B

YES

valid

Process description Release Note v2.0.1

doc__process_description_release_note_v201

ASIL_B

YES

valid

Process description Release Note v2.1.0

doc__process_description_release_note_v210

ASIL_B

YES

valid

Release Management Plan

doc__platform_release_management_plan

ASIL_B

NO

draft

S-Core v0.5-alpha release note

doc__score_v05_alpha_release_note

ASIL_B

YES

valid

S-Core v0.5-beta release note

doc__ref_int_v0_5_beta_release_note

ASIL_B

YES

draft

S-CORE v0.6 release note

doc__ref_int_v0_6_release_note

QM

YES

draft

S-CORE v0.7 release note

doc__score_v07_release_note

QM

YES

valid

S-CORE v0.8 release note

doc__score_v08_release_note

QM

YES

valid

S-CORE v0.9 release note

doc__score_v09_release_note

QM

YES

valid

Security & Crpyto Feature Requirements

doc__security_crypto_feat_reqs

QM

YES

valid

Security & Crypto Architecture

doc__security_crypto_architecture

QM

YES

draft

SOME_IP-Gateway

doc__some_ip_gateway

ASIL_B

YES

valid

STRIDE

doc__persistency_stride

ASIL_B

YES

valid

Time

doc__time

ASIL_B

YES

valid

Time Architecture

doc__time_architecture

ASIL_B

YES

draft

User Manual Lifecycle

doc__user_manual_lifecycle

QM

NO

draft

Component documentation#

See Component documentation for details.

Examples#

No examples yet.

Quick Start#

To build the module:

bazel build --config=per-x86_64-linux -- //score/...

Building without an explicit --config (e.g. per-x86_64-linux, per-x86_64-qnx, per-arm64-qnx) is not supported.

To run all tests:

bazel test //...

To run Unit Tests:

bazel test //:unit_tests

To run Component / Feature Integration Tests:

bazel test //:cit_tests

Module Configuration#

The project_config.bzl file defines metadata used by Bazel macros.

Example:

PROJECT_CONFIG = {
    "asil_level": "QM",
    "source_code": ["cpp", "rust"]
}

This enables conditional behavior (e.g., choosing clang-tidy for C++ or clippy for Rust).