From 0e869efbdb56251db5011b32719c5a1593821382 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20Fu=C3=9Fberger?= Date: Mon, 15 Jun 2026 11:54:50 +0200 Subject: [PATCH 1/7] Move docs to component docs folder --- .../health_monitor/docs}/architecture/assets/dm_interface.puml | 0 .../docs}/architecture/assets/dm_static_architecture.puml | 0 .../health_monitor/docs}/architecture/assets/dm_usage.puml | 0 .../health_monitor/docs}/architecture/assets/dmb_interface.puml | 0 .../health_monitor/docs}/architecture/assets/hbm_interface.puml | 0 .../health_monitor/docs}/architecture/assets/hbm_usage.puml | 0 .../docs}/architecture/assets/hm_background_thread.puml | 0 .../health_monitor/docs}/architecture/assets/hm_creation.puml | 0 .../health_monitor/docs}/architecture/assets/hm_deadline.puml | 0 .../docs}/architecture/assets/hm_duration_range.puml | 0 .../health_monitor/docs}/architecture/assets/hm_error.puml | 0 .../health_monitor/docs}/architecture/assets/hm_interface.puml | 0 .../health_monitor/docs}/architecture/assets/hm_shutdown.puml | 0 .../health_monitor/docs}/architecture/assets/hm_startup.puml | 0 .../docs}/architecture/assets/hm_static_architecture.puml | 0 .../health_monitor/docs}/architecture/assets/hm_status.puml | 0 .../health_monitor/docs}/architecture/assets/hm_tag.puml | 0 .../health_monitor/docs}/architecture/assets/hmb_interface.puml | 0 .../health_monitor/docs}/architecture/assets/lm_interface.puml | 0 .../health_monitor/docs}/architecture/assets/lm_state.puml | 0 .../docs}/architecture/assets/lm_static_architecture.puml | 0 .../health_monitor/docs}/architecture/assets/lm_usage.puml | 0 .../health_monitor/docs}/architecture/assets/lmb_interface.puml | 0 .../health_monitor/docs}/architecture/index.rst | 0 .../health_monitor/docs}/component_classification.rst | 0 .../docs}/detailed_design/assets/static_diagram.puml | 0 .../health_monitor/docs}/detailed_design/index.rst | 0 .../module/health_monitor => score/health_monitor/docs}/index.rst | 0 .../health_monitor/docs}/requirements/index.rst | 0 .../health_monitor/docs}/safety_analysis/dfa.rst | 0 .../health_monitor/docs}/safety_analysis/fmea.rst | 0 .../launch_manager_deamon => score/launch_manager/docs}/index.rst | 0 .../docs}/product_documentation/known_limitations.rst | 0 .../launch_manager/docs}/user_guide/concepts.rst | 0 .../launch_manager/docs}/user_guide/configuration.rst | 0 .../launch_manager/docs}/user_guide/examples.rst | 0 .../launch_manager/docs}/user_guide/images/example_conf_graph.svg | 0 .../launch_manager/docs}/user_guide/images/example_config.puml | 0 .../launch_manager/docs}/user_guide/images/lm_non_reporting.puml | 0 .../docs}/user_guide/images/lm_reporting_running.puml | 0 .../docs}/user_guide/images/lm_reporting_terminated.puml | 0 .../launch_manager/docs}/user_guide/images/lm_run_targets.puml | 0 .../docs}/user_guide/images/lm_run_targets_starting.puml | 0 .../launch_manager/docs}/user_guide/implementation.rst | 0 .../launch_manager/docs}/user_guide/ready_state.rst | 0 .../launch_manager/lifecycle_client/docs}/lifecycle.md | 0 .../launch_manager/lifecycle_client/docs}/lifecyclemanager.md | 0 .../launch_manager/lifecycle_client/docs}/model/app_lifecycle.uxf | 0 .../lifecycle_client/docs}/model/lifecycle_system_view.uxf | 0 .../docs}/model/sequence_application_container.uxf | 0 .../launch_manager/lifecycle_client/docs}/model/sequence_view.uxf | 0 .../lifecycle_client/docs}/model/structural_view.uxf | 0 52 files changed, 0 insertions(+), 0 deletions(-) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/dm_interface.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/dm_static_architecture.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/dm_usage.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/dmb_interface.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/hbm_interface.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/hbm_usage.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/hm_background_thread.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/hm_creation.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/hm_deadline.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/hm_duration_range.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/hm_error.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/hm_interface.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/hm_shutdown.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/hm_startup.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/hm_static_architecture.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/hm_status.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/hm_tag.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/hmb_interface.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/lm_interface.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/lm_state.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/lm_static_architecture.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/lm_usage.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/assets/lmb_interface.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/architecture/index.rst (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/component_classification.rst (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/detailed_design/assets/static_diagram.puml (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/detailed_design/index.rst (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/index.rst (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/requirements/index.rst (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/safety_analysis/dfa.rst (100%) rename {docs/module/health_monitor => score/health_monitor/docs}/safety_analysis/fmea.rst (100%) rename {docs/module/launch_manager_deamon => score/launch_manager/docs}/index.rst (100%) rename {docs/module/launch_manager_deamon => score/launch_manager/docs}/product_documentation/known_limitations.rst (100%) rename {docs/module/launch_manager_deamon => score/launch_manager/docs}/user_guide/concepts.rst (100%) rename {docs/module/launch_manager_deamon => score/launch_manager/docs}/user_guide/configuration.rst (100%) rename {docs/module/launch_manager_deamon => score/launch_manager/docs}/user_guide/examples.rst (100%) rename {docs/module/launch_manager_deamon => score/launch_manager/docs}/user_guide/images/example_conf_graph.svg (100%) rename {docs/module/launch_manager_deamon => score/launch_manager/docs}/user_guide/images/example_config.puml (100%) rename {docs/module/launch_manager_deamon => score/launch_manager/docs}/user_guide/images/lm_non_reporting.puml (100%) rename {docs/module/launch_manager_deamon => score/launch_manager/docs}/user_guide/images/lm_reporting_running.puml (100%) rename {docs/module/launch_manager_deamon => score/launch_manager/docs}/user_guide/images/lm_reporting_terminated.puml (100%) rename {docs/module/launch_manager_deamon => score/launch_manager/docs}/user_guide/images/lm_run_targets.puml (100%) rename {docs/module/launch_manager_deamon => score/launch_manager/docs}/user_guide/images/lm_run_targets_starting.puml (100%) rename {docs/module/launch_manager_deamon => score/launch_manager/docs}/user_guide/implementation.rst (100%) rename {docs/module/launch_manager_deamon => score/launch_manager/docs}/user_guide/ready_state.rst (100%) rename {docs/module/lifecycle_client_lib => score/launch_manager/lifecycle_client/docs}/lifecycle.md (100%) rename {docs/module/lifecycle_client_lib => score/launch_manager/lifecycle_client/docs}/lifecyclemanager.md (100%) rename {docs/module/lifecycle_client_lib => score/launch_manager/lifecycle_client/docs}/model/app_lifecycle.uxf (100%) rename {docs/module/lifecycle_client_lib => score/launch_manager/lifecycle_client/docs}/model/lifecycle_system_view.uxf (100%) rename {docs/module/lifecycle_client_lib => score/launch_manager/lifecycle_client/docs}/model/sequence_application_container.uxf (100%) rename {docs/module/lifecycle_client_lib => score/launch_manager/lifecycle_client/docs}/model/sequence_view.uxf (100%) rename {docs/module/lifecycle_client_lib => score/launch_manager/lifecycle_client/docs}/model/structural_view.uxf (100%) diff --git a/docs/module/health_monitor/architecture/assets/dm_interface.puml b/score/health_monitor/docs/architecture/assets/dm_interface.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/dm_interface.puml rename to score/health_monitor/docs/architecture/assets/dm_interface.puml diff --git a/docs/module/health_monitor/architecture/assets/dm_static_architecture.puml b/score/health_monitor/docs/architecture/assets/dm_static_architecture.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/dm_static_architecture.puml rename to score/health_monitor/docs/architecture/assets/dm_static_architecture.puml diff --git a/docs/module/health_monitor/architecture/assets/dm_usage.puml b/score/health_monitor/docs/architecture/assets/dm_usage.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/dm_usage.puml rename to score/health_monitor/docs/architecture/assets/dm_usage.puml diff --git a/docs/module/health_monitor/architecture/assets/dmb_interface.puml b/score/health_monitor/docs/architecture/assets/dmb_interface.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/dmb_interface.puml rename to score/health_monitor/docs/architecture/assets/dmb_interface.puml diff --git a/docs/module/health_monitor/architecture/assets/hbm_interface.puml b/score/health_monitor/docs/architecture/assets/hbm_interface.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/hbm_interface.puml rename to score/health_monitor/docs/architecture/assets/hbm_interface.puml diff --git a/docs/module/health_monitor/architecture/assets/hbm_usage.puml b/score/health_monitor/docs/architecture/assets/hbm_usage.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/hbm_usage.puml rename to score/health_monitor/docs/architecture/assets/hbm_usage.puml diff --git a/docs/module/health_monitor/architecture/assets/hm_background_thread.puml b/score/health_monitor/docs/architecture/assets/hm_background_thread.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/hm_background_thread.puml rename to score/health_monitor/docs/architecture/assets/hm_background_thread.puml diff --git a/docs/module/health_monitor/architecture/assets/hm_creation.puml b/score/health_monitor/docs/architecture/assets/hm_creation.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/hm_creation.puml rename to score/health_monitor/docs/architecture/assets/hm_creation.puml diff --git a/docs/module/health_monitor/architecture/assets/hm_deadline.puml b/score/health_monitor/docs/architecture/assets/hm_deadline.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/hm_deadline.puml rename to score/health_monitor/docs/architecture/assets/hm_deadline.puml diff --git a/docs/module/health_monitor/architecture/assets/hm_duration_range.puml b/score/health_monitor/docs/architecture/assets/hm_duration_range.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/hm_duration_range.puml rename to score/health_monitor/docs/architecture/assets/hm_duration_range.puml diff --git a/docs/module/health_monitor/architecture/assets/hm_error.puml b/score/health_monitor/docs/architecture/assets/hm_error.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/hm_error.puml rename to score/health_monitor/docs/architecture/assets/hm_error.puml diff --git a/docs/module/health_monitor/architecture/assets/hm_interface.puml b/score/health_monitor/docs/architecture/assets/hm_interface.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/hm_interface.puml rename to score/health_monitor/docs/architecture/assets/hm_interface.puml diff --git a/docs/module/health_monitor/architecture/assets/hm_shutdown.puml b/score/health_monitor/docs/architecture/assets/hm_shutdown.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/hm_shutdown.puml rename to score/health_monitor/docs/architecture/assets/hm_shutdown.puml diff --git a/docs/module/health_monitor/architecture/assets/hm_startup.puml b/score/health_monitor/docs/architecture/assets/hm_startup.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/hm_startup.puml rename to score/health_monitor/docs/architecture/assets/hm_startup.puml diff --git a/docs/module/health_monitor/architecture/assets/hm_static_architecture.puml b/score/health_monitor/docs/architecture/assets/hm_static_architecture.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/hm_static_architecture.puml rename to score/health_monitor/docs/architecture/assets/hm_static_architecture.puml diff --git a/docs/module/health_monitor/architecture/assets/hm_status.puml b/score/health_monitor/docs/architecture/assets/hm_status.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/hm_status.puml rename to score/health_monitor/docs/architecture/assets/hm_status.puml diff --git a/docs/module/health_monitor/architecture/assets/hm_tag.puml b/score/health_monitor/docs/architecture/assets/hm_tag.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/hm_tag.puml rename to score/health_monitor/docs/architecture/assets/hm_tag.puml diff --git a/docs/module/health_monitor/architecture/assets/hmb_interface.puml b/score/health_monitor/docs/architecture/assets/hmb_interface.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/hmb_interface.puml rename to score/health_monitor/docs/architecture/assets/hmb_interface.puml diff --git a/docs/module/health_monitor/architecture/assets/lm_interface.puml b/score/health_monitor/docs/architecture/assets/lm_interface.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/lm_interface.puml rename to score/health_monitor/docs/architecture/assets/lm_interface.puml diff --git a/docs/module/health_monitor/architecture/assets/lm_state.puml b/score/health_monitor/docs/architecture/assets/lm_state.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/lm_state.puml rename to score/health_monitor/docs/architecture/assets/lm_state.puml diff --git a/docs/module/health_monitor/architecture/assets/lm_static_architecture.puml b/score/health_monitor/docs/architecture/assets/lm_static_architecture.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/lm_static_architecture.puml rename to score/health_monitor/docs/architecture/assets/lm_static_architecture.puml diff --git a/docs/module/health_monitor/architecture/assets/lm_usage.puml b/score/health_monitor/docs/architecture/assets/lm_usage.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/lm_usage.puml rename to score/health_monitor/docs/architecture/assets/lm_usage.puml diff --git a/docs/module/health_monitor/architecture/assets/lmb_interface.puml b/score/health_monitor/docs/architecture/assets/lmb_interface.puml similarity index 100% rename from docs/module/health_monitor/architecture/assets/lmb_interface.puml rename to score/health_monitor/docs/architecture/assets/lmb_interface.puml diff --git a/docs/module/health_monitor/architecture/index.rst b/score/health_monitor/docs/architecture/index.rst similarity index 100% rename from docs/module/health_monitor/architecture/index.rst rename to score/health_monitor/docs/architecture/index.rst diff --git a/docs/module/health_monitor/component_classification.rst b/score/health_monitor/docs/component_classification.rst similarity index 100% rename from docs/module/health_monitor/component_classification.rst rename to score/health_monitor/docs/component_classification.rst diff --git a/docs/module/health_monitor/detailed_design/assets/static_diagram.puml b/score/health_monitor/docs/detailed_design/assets/static_diagram.puml similarity index 100% rename from docs/module/health_monitor/detailed_design/assets/static_diagram.puml rename to score/health_monitor/docs/detailed_design/assets/static_diagram.puml diff --git a/docs/module/health_monitor/detailed_design/index.rst b/score/health_monitor/docs/detailed_design/index.rst similarity index 100% rename from docs/module/health_monitor/detailed_design/index.rst rename to score/health_monitor/docs/detailed_design/index.rst diff --git a/docs/module/health_monitor/index.rst b/score/health_monitor/docs/index.rst similarity index 100% rename from docs/module/health_monitor/index.rst rename to score/health_monitor/docs/index.rst diff --git a/docs/module/health_monitor/requirements/index.rst b/score/health_monitor/docs/requirements/index.rst similarity index 100% rename from docs/module/health_monitor/requirements/index.rst rename to score/health_monitor/docs/requirements/index.rst diff --git a/docs/module/health_monitor/safety_analysis/dfa.rst b/score/health_monitor/docs/safety_analysis/dfa.rst similarity index 100% rename from docs/module/health_monitor/safety_analysis/dfa.rst rename to score/health_monitor/docs/safety_analysis/dfa.rst diff --git a/docs/module/health_monitor/safety_analysis/fmea.rst b/score/health_monitor/docs/safety_analysis/fmea.rst similarity index 100% rename from docs/module/health_monitor/safety_analysis/fmea.rst rename to score/health_monitor/docs/safety_analysis/fmea.rst diff --git a/docs/module/launch_manager_deamon/index.rst b/score/launch_manager/docs/index.rst similarity index 100% rename from docs/module/launch_manager_deamon/index.rst rename to score/launch_manager/docs/index.rst diff --git a/docs/module/launch_manager_deamon/product_documentation/known_limitations.rst b/score/launch_manager/docs/product_documentation/known_limitations.rst similarity index 100% rename from docs/module/launch_manager_deamon/product_documentation/known_limitations.rst rename to score/launch_manager/docs/product_documentation/known_limitations.rst diff --git a/docs/module/launch_manager_deamon/user_guide/concepts.rst b/score/launch_manager/docs/user_guide/concepts.rst similarity index 100% rename from docs/module/launch_manager_deamon/user_guide/concepts.rst rename to score/launch_manager/docs/user_guide/concepts.rst diff --git a/docs/module/launch_manager_deamon/user_guide/configuration.rst b/score/launch_manager/docs/user_guide/configuration.rst similarity index 100% rename from docs/module/launch_manager_deamon/user_guide/configuration.rst rename to score/launch_manager/docs/user_guide/configuration.rst diff --git a/docs/module/launch_manager_deamon/user_guide/examples.rst b/score/launch_manager/docs/user_guide/examples.rst similarity index 100% rename from docs/module/launch_manager_deamon/user_guide/examples.rst rename to score/launch_manager/docs/user_guide/examples.rst diff --git a/docs/module/launch_manager_deamon/user_guide/images/example_conf_graph.svg b/score/launch_manager/docs/user_guide/images/example_conf_graph.svg similarity index 100% rename from docs/module/launch_manager_deamon/user_guide/images/example_conf_graph.svg rename to score/launch_manager/docs/user_guide/images/example_conf_graph.svg diff --git a/docs/module/launch_manager_deamon/user_guide/images/example_config.puml b/score/launch_manager/docs/user_guide/images/example_config.puml similarity index 100% rename from docs/module/launch_manager_deamon/user_guide/images/example_config.puml rename to score/launch_manager/docs/user_guide/images/example_config.puml diff --git a/docs/module/launch_manager_deamon/user_guide/images/lm_non_reporting.puml b/score/launch_manager/docs/user_guide/images/lm_non_reporting.puml similarity index 100% rename from docs/module/launch_manager_deamon/user_guide/images/lm_non_reporting.puml rename to score/launch_manager/docs/user_guide/images/lm_non_reporting.puml diff --git a/docs/module/launch_manager_deamon/user_guide/images/lm_reporting_running.puml b/score/launch_manager/docs/user_guide/images/lm_reporting_running.puml similarity index 100% rename from docs/module/launch_manager_deamon/user_guide/images/lm_reporting_running.puml rename to score/launch_manager/docs/user_guide/images/lm_reporting_running.puml diff --git a/docs/module/launch_manager_deamon/user_guide/images/lm_reporting_terminated.puml b/score/launch_manager/docs/user_guide/images/lm_reporting_terminated.puml similarity index 100% rename from docs/module/launch_manager_deamon/user_guide/images/lm_reporting_terminated.puml rename to score/launch_manager/docs/user_guide/images/lm_reporting_terminated.puml diff --git a/docs/module/launch_manager_deamon/user_guide/images/lm_run_targets.puml b/score/launch_manager/docs/user_guide/images/lm_run_targets.puml similarity index 100% rename from docs/module/launch_manager_deamon/user_guide/images/lm_run_targets.puml rename to score/launch_manager/docs/user_guide/images/lm_run_targets.puml diff --git a/docs/module/launch_manager_deamon/user_guide/images/lm_run_targets_starting.puml b/score/launch_manager/docs/user_guide/images/lm_run_targets_starting.puml similarity index 100% rename from docs/module/launch_manager_deamon/user_guide/images/lm_run_targets_starting.puml rename to score/launch_manager/docs/user_guide/images/lm_run_targets_starting.puml diff --git a/docs/module/launch_manager_deamon/user_guide/implementation.rst b/score/launch_manager/docs/user_guide/implementation.rst similarity index 100% rename from docs/module/launch_manager_deamon/user_guide/implementation.rst rename to score/launch_manager/docs/user_guide/implementation.rst diff --git a/docs/module/launch_manager_deamon/user_guide/ready_state.rst b/score/launch_manager/docs/user_guide/ready_state.rst similarity index 100% rename from docs/module/launch_manager_deamon/user_guide/ready_state.rst rename to score/launch_manager/docs/user_guide/ready_state.rst diff --git a/docs/module/lifecycle_client_lib/lifecycle.md b/score/launch_manager/lifecycle_client/docs/lifecycle.md similarity index 100% rename from docs/module/lifecycle_client_lib/lifecycle.md rename to score/launch_manager/lifecycle_client/docs/lifecycle.md diff --git a/docs/module/lifecycle_client_lib/lifecyclemanager.md b/score/launch_manager/lifecycle_client/docs/lifecyclemanager.md similarity index 100% rename from docs/module/lifecycle_client_lib/lifecyclemanager.md rename to score/launch_manager/lifecycle_client/docs/lifecyclemanager.md diff --git a/docs/module/lifecycle_client_lib/model/app_lifecycle.uxf b/score/launch_manager/lifecycle_client/docs/model/app_lifecycle.uxf similarity index 100% rename from docs/module/lifecycle_client_lib/model/app_lifecycle.uxf rename to score/launch_manager/lifecycle_client/docs/model/app_lifecycle.uxf diff --git a/docs/module/lifecycle_client_lib/model/lifecycle_system_view.uxf b/score/launch_manager/lifecycle_client/docs/model/lifecycle_system_view.uxf similarity index 100% rename from docs/module/lifecycle_client_lib/model/lifecycle_system_view.uxf rename to score/launch_manager/lifecycle_client/docs/model/lifecycle_system_view.uxf diff --git a/docs/module/lifecycle_client_lib/model/sequence_application_container.uxf b/score/launch_manager/lifecycle_client/docs/model/sequence_application_container.uxf similarity index 100% rename from docs/module/lifecycle_client_lib/model/sequence_application_container.uxf rename to score/launch_manager/lifecycle_client/docs/model/sequence_application_container.uxf diff --git a/docs/module/lifecycle_client_lib/model/sequence_view.uxf b/score/launch_manager/lifecycle_client/docs/model/sequence_view.uxf similarity index 100% rename from docs/module/lifecycle_client_lib/model/sequence_view.uxf rename to score/launch_manager/lifecycle_client/docs/model/sequence_view.uxf diff --git a/docs/module/lifecycle_client_lib/model/structural_view.uxf b/score/launch_manager/lifecycle_client/docs/model/structural_view.uxf similarity index 100% rename from docs/module/lifecycle_client_lib/model/structural_view.uxf rename to score/launch_manager/lifecycle_client/docs/model/structural_view.uxf From 93585c8b541a6d2fa6916823398765c1147c0d93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20Fu=C3=9Fberger?= Date: Mon, 15 Jun 2026 13:49:44 +0200 Subject: [PATCH 2/7] Correct docs references --- BUILD | 2 +- docs/conf.py => conf.py | 10 + docs/index.rst => index.rst | 3 +- score/launch_manager/docs/index.rst | 18 +- .../docs/user_guide/concepts.rst | 4 +- .../launch_manager/docs/user_guide/index.rst | 24 + .../lifecycle_client/docs/index.rst | 21 + .../lifecycle_client/docs/lifecycle.md | 8 +- .../docs/model/app_lifecycle.svg | 105 +++ .../docs/model/lifecycle_system_view.svg | 213 ++++++ .../model/sequence_application_container.svg | 692 ++++++++++++++++++ .../docs/model/sequence_view.svg | 513 +++++++++++++ .../docs/model/structural_view.svg | 273 +++++++ 13 files changed, 1871 insertions(+), 15 deletions(-) rename docs/conf.py => conf.py (95%) rename docs/index.rst => index.rst (93%) create mode 100644 score/launch_manager/docs/user_guide/index.rst create mode 100644 score/launch_manager/lifecycle_client/docs/index.rst create mode 100644 score/launch_manager/lifecycle_client/docs/model/app_lifecycle.svg create mode 100644 score/launch_manager/lifecycle_client/docs/model/lifecycle_system_view.svg create mode 100644 score/launch_manager/lifecycle_client/docs/model/sequence_application_container.svg create mode 100644 score/launch_manager/lifecycle_client/docs/model/sequence_view.svg create mode 100644 score/launch_manager/lifecycle_client/docs/model/structural_view.svg diff --git a/BUILD b/BUILD index 997de9810..cd5c98221 100644 --- a/BUILD +++ b/BUILD @@ -98,5 +98,5 @@ docs( "@score_platform//:needs_json", # This allows linking to feature requirements. "@score_process//:needs_json", # This allows linking to requirements (wp__requirements_comp, etc.) from the process_description repository. ], - source_dir = "docs", + source_dir = ".", ) diff --git a/docs/conf.py b/conf.py similarity index 95% rename from docs/conf.py rename to conf.py index fffa5a225..e82d557fa 100644 --- a/docs/conf.py +++ b/conf.py @@ -46,6 +46,16 @@ "score_draw_uml_funcs", "score_source_code_linker", "score_layout", + "myst_parser", +] + +include_patterns = [ + "index.rst", + "docs/**", + "examples/docs/**", + "score/launch_manager/docs/**", + "score/launch_manager/lifecycle_client/docs/**", + "score/health_monitor/docs/**", ] exclude_patterns = [ diff --git a/docs/index.rst b/index.rst similarity index 93% rename from docs/index.rst rename to index.rst index f1ebd4335..dcd46dba6 100644 --- a/docs/index.rst +++ b/index.rst @@ -20,7 +20,8 @@ Lifecycle :glob: :titlesonly: - module/*/index + score/launch_manager/docs/index.rst + score/health_monitor/docs/index.rst statistics.rst Overview diff --git a/score/launch_manager/docs/index.rst b/score/launch_manager/docs/index.rst index 97fedfee6..086b376bd 100644 --- a/score/launch_manager/docs/index.rst +++ b/score/launch_manager/docs/index.rst @@ -12,14 +12,18 @@ # SPDX-License-Identifier: Apache-2.0 # ******************************************************************************* -Launch Manager Daemon -##################### +Launch Manager +############## .. toctree:: + :titlesonly: - user_guide/concepts.rst - user_guide/ready_state.rst - user_guide/configuration.rst - user_guide/examples.rst - user_guide/implementation.rst + user_guide/index.rst product_documentation/known_limitations.rst + +Subcomponents +============= +.. toctree:: + :titlesonly: + + ../lifecycle_client/docs/index.rst diff --git a/score/launch_manager/docs/user_guide/concepts.rst b/score/launch_manager/docs/user_guide/concepts.rst index 620f729fd..d3f083cb3 100644 --- a/score/launch_manager/docs/user_guide/concepts.rst +++ b/score/launch_manager/docs/user_guide/concepts.rst @@ -14,8 +14,8 @@ .. _lm_user_guide: -User Guide -********** +Overview +******** .. _lm_introduction: diff --git a/score/launch_manager/docs/user_guide/index.rst b/score/launch_manager/docs/user_guide/index.rst new file mode 100644 index 000000000..7d0e5eeb3 --- /dev/null +++ b/score/launch_manager/docs/user_guide/index.rst @@ -0,0 +1,24 @@ +.. + # ******************************************************************************* + # Copyright (c) 2026 Contributors to the Eclipse Foundation + # + # See the NOTICE file(s) distributed with this work for additional + # information regarding copyright ownership. + # + # This program and the accompanying materials are made available under the + # terms of the Apache License Version 2.0 which is available at + # https://www.apache.org/licenses/LICENSE-2.0 + # + # SPDX-License-Identifier: Apache-2.0 + # ******************************************************************************* + +User Guide +########## + +.. toctree:: + + concepts.rst + ready_state.rst + configuration.rst + examples.rst + implementation.rst \ No newline at end of file diff --git a/score/launch_manager/lifecycle_client/docs/index.rst b/score/launch_manager/lifecycle_client/docs/index.rst new file mode 100644 index 000000000..546e3b48f --- /dev/null +++ b/score/launch_manager/lifecycle_client/docs/index.rst @@ -0,0 +1,21 @@ +.. + # ******************************************************************************* + # Copyright (c) 2026 Contributors to the Eclipse Foundation + # + # See the NOTICE file(s) distributed with this work for additional + # information regarding copyright ownership. + # + # This program and the accompanying materials are made available under the + # terms of the Apache License Version 2.0 which is available at + # https://www.apache.org/licenses/LICENSE-2.0 + # + # SPDX-License-Identifier: Apache-2.0 + # ******************************************************************************* + +Lifecycle API +############# + +.. toctree:: + + lifecycle.md + lifecyclemanager.md diff --git a/score/launch_manager/lifecycle_client/docs/lifecycle.md b/score/launch_manager/lifecycle_client/docs/lifecycle.md index 803a2930b..5670d02a2 100644 --- a/score/launch_manager/lifecycle_client/docs/lifecycle.md +++ b/score/launch_manager/lifecycle_client/docs/lifecycle.md @@ -13,7 +13,7 @@ Component consists of three main parts: * Runner class `score::mw::lifecycle::Run` which instantiates the user provided application and decides which LifeCycleManager to use. Overview on how lifecycle application is related to execution manager. -![Lifecycle Manager Application Overview](model/lifecycle_system_view.uxf) +![Lifecycle Manager Application Overview](model/lifecycle_system_view.svg) ### AAS Interfaces N/A @@ -70,7 +70,7 @@ N/A SIGTERM see [lifecyclemanager.md](lifecyclemanager.md) ## Static architecture -![Structural View](model/structural_view.uxf) +![Structural View](model/structural_view.svg) ## Dynamic architecture @@ -78,13 +78,13 @@ SIGTERM see [lifecyclemanager.md](lifecyclemanager.md) The following sequence diagram shows the interaction between OS and instances of `Application` class, which were decorated with a `LifecycleManager`: -![Sequence View](model/sequence_view.uxf) +![Sequence View](model/sequence_view.svg) ### Stateful behavior The following state machine depicts the states/transitions of an application: -![Application Lifecycle](model/app_lifecycle.uxf) +![Application Lifecycle](model/app_lifecycle.svg) #### State `Terminated` respectively `Not Started` diff --git a/score/launch_manager/lifecycle_client/docs/model/app_lifecycle.svg b/score/launch_manager/lifecycle_client/docs/model/app_lifecycle.svg new file mode 100644 index 000000000..8ebbf1ac4 --- /dev/null +++ b/score/launch_manager/lifecycle_client/docs/model/app_lifecycle.svg @@ -0,0 +1,105 @@ + + +RunInitializingTerminated/Not Startedexit/Sig Term/Sig Killfork/execReport Run diff --git a/score/launch_manager/lifecycle_client/docs/model/lifecycle_system_view.svg b/score/launch_manager/lifecycle_client/docs/model/lifecycle_system_view.svg new file mode 100644 index 000000000..cc9a201a6 --- /dev/null +++ b/score/launch_manager/lifecycle_client/docs/model/lifecycle_system_view.svg @@ -0,0 +1,213 @@ + + +mw:lifecycleApplicationScope of..Application context (main)OSExecution Managermw:LifecycleManagerApplicationmw:applicationhandlesapplication SIGTERMn1starts11startsn1handles application SIGTERMn1reports state (run, terminate)1nmanages (run, terminate)11implements11 diff --git a/score/launch_manager/lifecycle_client/docs/model/sequence_application_container.svg b/score/launch_manager/lifecycle_client/docs/model/sequence_application_container.svg new file mode 100644 index 000000000..08be0d38d --- /dev/null +++ b/score/launch_manager/lifecycle_client/docs/model/sequence_application_container.svg @@ -0,0 +1,692 @@ + + +[result != 0]loop[for each application][result != 0]opt[for each thread]loop[for each application exceptthe last one][result != 0]alt:amp::jthreadloopRest of sequenceis cancelled inerror caseoptloop[for each thread]:LifeCycleManager:Application:AasApplicationContainer:mainreturn 0join()resultInitialize(context)«create thread calling Initialize() of applicationreturn 0return 0return resultreturn resultreturn resultjoin()return resultreturn resultreturn resultcall Run() for the last applicationRun(stop_token)«create thread calling Run()of application»Run(stop_token)resultresultresultInitialize(context)run(*this, context_)«create»Launch()With<App2>(Args&&...)«create»add Applicationadd Application«create»With<App1>(Args&&...)«create» diff --git a/score/launch_manager/lifecycle_client/docs/model/sequence_view.svg b/score/launch_manager/lifecycle_client/docs/model/sequence_view.svg new file mode 100644 index 000000000..c2098bfd7 --- /dev/null +++ b/score/launch_manager/lifecycle_client/docs/model/sequence_view.svg @@ -0,0 +1,513 @@ + + +:LifeCycleManagerSigHandlerAlternativecyclically StopToken Pollingusage of stop_callback:StopToken:StopSource:ApplicationContext:LifecycleManager:Application:Process:OS_ExecMgmtreport_run_hook()return exitCodestop_callback()return exitCodereturn exitCodereturn exitCodeReturn TRUEstop_requested()notifyrequest_stopreturn StopTokenctorget_token()Signal(SigTerm)registerSignalHandler()ctorrun(StopToken)returnInitialize(ApplicationContext&)runctor(argc, argv)ctor(Application&, ApplicationContext&)ctormain(int argc, const char* argv[])create diff --git a/score/launch_manager/lifecycle_client/docs/model/structural_view.svg b/score/launch_manager/lifecycle_client/docs/model/structural_view.svg new file mode 100644 index 000000000..8a9cb768d --- /dev/null +++ b/score/launch_manager/lifecycle_client/docs/model/structural_view.svg @@ -0,0 +1,273 @@ + + +score::mw::lifecycle::AasApplicationContaineroperation+ initialize(const ApplicationContext&): std::int32_t override+ run(amp::stop_token stop_token): std::int32_t override+ AasApplicationContainer(const std::int32_t argc, const char* const argv[], const std::size_t count_expected_applications): noexcept+ With<App,...Args>(Args&&.. args) : AasApplicationContainer&+ Launch() : std::int32_tAtrribuite+ context_: score::mw::lifecycle::ApplicationContext+ applications_: std::vector<std::unique_ptr<Application»+ count_expected_applications_: std::size_tNoteEnable the easy usage of our application in differentenvironmentsApplicationTypeRunOperation+ Run(const int32_t argc, const char* const argv[])+ AsPosixProcess(Args&&... args): std::int32_t constAttribute+ context_: ApplicationContextNoteImplementation is platform specific. It typically implementsa (POSIX) signal handling as we expect, that termination of apps isdone via signaling in all environments.score::mw::lifecycle::LifecycleManageroperations+ LifecycleManager(std::unique_ptr<score::os::Signal> signal_interface)+ LifeCycleManager(LifeCycleManager&& other) = delete;+ LifeCycleManager(const LifeCycleManager& other) = delete;+ LifeCycleManager& operator=(LifeCycleManager&& other) = delete;+ LifeCycleManager& operator=(const LifeCycleManager& other) = delete;+ run(Application& app, const ApplicationContext&): int32_tAttribute+ m_stop_source: amp::stop_source+ m_app: Application*+ m_signal_set: sigset_t+ m_signal_handler_thread: std::thread+ signal_: std::unique_ptr<score::os::Signal> score::mw::lifecycle::ApplicationContextOperations+ ApplicationContext(const int32_t argc, const char* const argv[])+ get_arguments(): const std::vector<std::string>& const noexcept+ get_argument(const amp::string_view flag): std::string const noexcept-- Atrribuite+ m_args: std::vector<std::string>+ m_app_path: std::string«interface»score::mw::lifecycle::ApplicationOperation+ initialize(const ApplicationContext&): std::int32_t virtual = 0+ run(amp::stop_token stop_token): std::int32_t virtual = 0Create &RunImplementsCreateCreate &Runmanages From 403ab4e5ae478a2f07f77f5df7b700368149c58e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20Fu=C3=9Fberger?= Date: Mon, 15 Jun 2026 14:31:37 +0200 Subject: [PATCH 3/7] Make html output nicer --- docs/release_notes/index.rst | 37 -------- docs/release_notes/release_note_v_0_2_0.rst | 94 ------------------- docs/{ => verification_report}/statistics.rst | 4 +- index.rst | 47 +++------- 4 files changed, 15 insertions(+), 167 deletions(-) delete mode 100644 docs/release_notes/index.rst delete mode 100644 docs/release_notes/release_note_v_0_2_0.rst rename docs/{ => verification_report}/statistics.rst (98%) diff --git a/docs/release_notes/index.rst b/docs/release_notes/index.rst deleted file mode 100644 index a109c37ea..000000000 --- a/docs/release_notes/index.rst +++ /dev/null @@ -1,37 +0,0 @@ -.. - # ******************************************************************************* - # Copyright (c) 2026 Contributors to the Eclipse Foundation - # - # See the NOTICE file(s) distributed with this work for additional - # information regarding copyright ownership. - # - # This program and the accompanying materials are made available under the - # terms of the Apache License Version 2.0 which is available at - # https://www.apache.org/licenses/LICENSE-2.0 - # - # SPDX-License-Identifier: Apache-2.0 - # ******************************************************************************* - -.. _lifecycle_release_notes: - -Release notes -============= - -Overview --------- - -This document provides an overview of the changes, improvements, and bug fixes included in the software module release version v0.2.0 -as compared to the module's origin release (which is usually the previous release). - -Disclaimer ----------- - -This release note does not "release for production", as it does not come with a safety argumentation and a performed safety assessment. -The work products compiled in the safety package are created with care according to a process satisfying standards, but the as the project, -being a non-profit and open source organization, can not take over any liability for its content. - -.. toctree:: - :maxdepth: 1 - :caption: Content - - ./release_note_v_0_2_0.rst \ No newline at end of file diff --git a/docs/release_notes/release_note_v_0_2_0.rst b/docs/release_notes/release_note_v_0_2_0.rst deleted file mode 100644 index 983a3a915..000000000 --- a/docs/release_notes/release_note_v_0_2_0.rst +++ /dev/null @@ -1,94 +0,0 @@ -.. - # ******************************************************************************* - # Copyright (c) 2025 Contributors to the Eclipse Foundation - # - # See the NOTICE file(s) distributed with this work for additional - # information regarding copyright ownership. - # - # This program and the accompanying materials are made available under the - # terms of the Apache License Version 2.0 which is available at - # https://www.apache.org/licenses/LICENSE-2.0 - # - # SPDX-License-Identifier: Apache-2.0 - # ******************************************************************************* - - -.. document:: lifecycle Release Note - :id: doc__lifecycle_release_note - :status: valid - :safety: ASIL_B - :security: NO - :realizes: wp__module_sw_release_note - :tags: - - -Overview -======== - -This document provides an overview of the changes, improvements, and bug fixes included in the software module release version vx.x.z -as compared to the module's origin release (which is usually the previous release). - -Disclaimer -========== - -This release note does not "release for production", as it does not come with a safety argumentation and a performed safety assessment. -The work products compiled in the safety package are created with care according to a process satisfying standards, but the as the project, -being a non-profit and open source organization, can not take over any liability for its content. - -Changes to the Module -===================== - -New Features ------------- - -- **New Configuration Schema:** Introduce first version of JSON schema intended for Launch Manager configuration. -- **Heartbeat monitor API:** Health monitoring library provides heartbeat monitor API. -- **Logic monitor API:** Health monitoring library provides logic monitor API. - -Improvements ------------- - -- **Quality improvements:** testing and documentation updates. - -Bug Fixes ---------- - -- - -Other Changes by Label ----------------------- - -- - -Compatibility -------------- - -- The following platforms are supported using the [bazel_cpp_toolchains](https://github.com/eclipse-score/bazel_cpp_toolchains): - - - `x86_64-unknown-linux-gnu` - - `aarch64-unknown-linux-gnu` - - `x86_64-unknown-nto-qnx800` - - `aarch64-unknown-nto-qnx800` - -Performed Verification ----------------------- - -- Build on all supported platforms -- Unit test execution on all supported platforms - -Known Issues ------------- - -- - -Known Vulnerabilities ---------------------- - -- - -Upgrade Instructions --------------------- - -- Backward compatibility with the previous release is not guaranteed. - -*For any questions or support, please contact the [Project Team](https://github.com/orgs/eclipse-score/projects/33) or raise an issue/discussion.* diff --git a/docs/statistics.rst b/docs/verification_report/statistics.rst similarity index 98% rename from docs/statistics.rst rename to docs/verification_report/statistics.rst index 1c9c03803..27ead3fe0 100644 --- a/docs/statistics.rst +++ b/docs/verification_report/statistics.rst @@ -1,7 +1,7 @@ .. _life_statistics: -Component Requirements Statistics -================================= +Verification Statistics +======================= Overview -------- diff --git a/index.rst b/index.rst index dcd46dba6..00daff839 100644 --- a/index.rst +++ b/index.rst @@ -12,46 +12,25 @@ # SPDX-License-Identifier: Apache-2.0 # ******************************************************************************* -Lifecycle -=================== +Lifecycle Documentation +======================= + +Module / Feature Documentation +------------------------------ .. toctree:: :maxdepth: 1 - :glob: - :titlesonly: - - score/launch_manager/docs/index.rst - score/health_monitor/docs/index.rst - statistics.rst - -Overview --------- - -Project Layout --------------- - -Quick Start ------------ - -To build the module for host platform: - -.. code-block:: bash - bazel build //src/... + docs/feature/index + docs/release/index + docs/verification_report/statistics -To run tests: - -.. code-block:: bash - - bazel test //tests/... - - -Release Notes -------------- - -Release notes collection. +Component documentation +------------------------ .. toctree:: :maxdepth: 1 - release_notes/index + score/launch_manager/docs/index + score/health_monitor/docs/index + From f0ab4732f2f048c6e4446e4334f28eafa79ef3e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20Fu=C3=9Fberger?= Date: Mon, 15 Jun 2026 14:57:41 +0200 Subject: [PATCH 4/7] Align docs content with module template --- .../architecture/chklst_arc_inspection.rst | 219 ++++++++++++++++++ docs/feature/architecture/index.rst | 154 ++++++++++++ docs/feature/index.rst | 35 +++ .../aou_requirements_template.rst | 33 +++ docs/feature/safety_analysis/dfa.rst | 207 +++++++++++++++++ docs/feature/safety_analysis/fmea.rst | 136 +++++++++++ docs/feature/safety_planning/index.rst | 155 +++++++++++++ docs/feature/security_analysis/index.rst | 145 ++++++++++++ docs/feature/security_planning/index.rst | 145 ++++++++++++ docs/release/index.rst | 37 +++ docs/release/release_note_v_0_2_0.rst | 94 ++++++++ 11 files changed, 1360 insertions(+) create mode 100644 docs/feature/architecture/chklst_arc_inspection.rst create mode 100644 docs/feature/architecture/index.rst create mode 100644 docs/feature/index.rst create mode 100644 docs/feature/safety_analysis/aou_requirements_template.rst create mode 100644 docs/feature/safety_analysis/dfa.rst create mode 100644 docs/feature/safety_analysis/fmea.rst create mode 100644 docs/feature/safety_planning/index.rst create mode 100644 docs/feature/security_analysis/index.rst create mode 100644 docs/feature/security_planning/index.rst create mode 100644 docs/release/index.rst create mode 100644 docs/release/release_note_v_0_2_0.rst diff --git a/docs/feature/architecture/chklst_arc_inspection.rst b/docs/feature/architecture/chklst_arc_inspection.rst new file mode 100644 index 000000000..b2cbef54b --- /dev/null +++ b/docs/feature/architecture/chklst_arc_inspection.rst @@ -0,0 +1,219 @@ +.. + # ******************************************************************************* + # Copyright (c) 2026 Contributors to the Eclipse Foundation + # + # See the NOTICE file(s) distributed with this work for additional + # information regarding copyright ownership. + # + # This program and the accompanying materials are made available under the + # terms of the Apache License Version 2.0 which is available at + # https://www.apache.org/licenses/LICENSE-2.0 + # + # SPDX-License-Identifier: Apache-2.0 + # ******************************************************************************* + + +.. document:: [Your Feature Name] Architecture Inspection Checklist + :id: doc__feature_example_arc_inspection + :status: draft + :safety: ASIL_B + :security: YES + :realizes: wp__sw_arch_verification + :tags: template + +.. attention:: + The above directive must be updated according to your Feature. + + - Modify ``Your Feature Name`` to be your Feature Name + - Modify ``id`` to be your Feature Name in lower snake case preceded by ``doc__`` and followed by ``_arc_inspection`` + - Adjust ``status`` to be ``valid`` + - Adjust ``safety``, ``security`` and ``tags`` according to your needs + +Architecture Inspection Checklist +================================= + +Purpose +------- + +The purpose of the software architecture checklist is to ensure that the design meets the criteria and quality as +defined per project processes and guidelines for feature and component architectural design elements. +It helps to check the compliance with requirements, identify errors or inconsistencies, and ensure adherence to best +practices. +The checklist guides evaluation of the architecture design, identifies potential problems, and aids in +communication and documentation of architectural decisions to stakeholders. + +Conduct +------- + +As described in the concept :need:`doc_concept__wp_inspections` the following "inspection roles" are expected to be filled: + +- content responsible (author): +- reviewer: +- moderator: + +Checklist +--------- + +It is mandatory to fill in the "passed" column with "yes" or "no" for each checklist item and additionally to add in the remarks why it is passed or not passed. +In case of "no" an issue link to the issue tracking system has to be added in the last column (if not solved in the same issue). +See also :need:`doc_concept__wp_inspections` for further information about reviews in general and inspection in particular. + +.. list-table:: Architecture Design Review Checklist + :header-rows: 1 + + * - Review Id + - Acceptance criteria + - Guidance + - passed + - Remarks + - Issue link + * - ARC_01_01 + - Is the traceability from software architectural elements to requirements, and other level architectural elements (e.g. component to interface) established according to the "Relations between the architectural elements" as described in :need:`doc_concept__arch_process`? + - Trace should be checked automatically by tool support in the future. It will be removed from the checklist once the requirement (:need:`Correlations of the architectural building blocks `) is implemented. Refer to `Tool Requirements `_ for the current status. + - + - + - + * - ARC_01_02 + - Does the software architecture design consider all the requirements allocated to the architectural element, including functional, non-functional, safety, and security requirements and all related design decisions? + - manual + - Check if all requirements allocated to the architectural element are considered in the design. This includes functional requirements (e.g. functional safety requirements), non-functional requirements (e.g. performance, reliability), and security requirements (e.g. confidentiality, integrity). Additionally, ensure that all related design decisions are taken into account and documented in the architectural design. + - + - + * - ARC_01_03 + - If the architectural element is related to any supplier manuals (including safety and security), are the relevant parts covered? + - If the architecture makes use of supplied elements, their manuals (like safety) have to be considered (i.e. its provided functionality matches the expectation and assumptions are fulfilled). Note that in case of safety component this means that assumed Technical Safety Requirements and AoUs of the safety manual are covered. + - + - + - + * - ARC_01_04 + - Is the architectural element traceable to the lower-level artifacts as defined by the work product traceability? + - + - + - + - + * - ARC_02_01 + - Is the software architecture design compliant with the overall feature architecture? + - On component level check against the feature architecture, on feature level check other features with common components used. + - + - + - + * - ARC_02_02 + - Is appropriate and comprehensible operation and interface naming present in the architectural design? + - Check :need:`gd_guidl__arch_design` + - + - + - + * - ARC_02_03 + - Are the correctness of data flow and control flow within the architectural elements considered? + - For example, examine definitions, transformations, integrity, and interaction of data; check error handling, data exchange between elements, correct response to inputs, and documented decision making. + Note: Consistency is ensured by the process/tooling, by defining each interface only once. + - + - + - + * - ARC_02_04 + - Are the interfaces between the software architectural element and other architectural elements well defined? + - Check if the interface handles undefined behaviour or errors; can established protocols be used; are the interfaces for inputs, outputs, and error codes documented; is loose coupling considered and only limited exposure; can unit or integration tests be written against the interface; data amount transferred; ensure no sensitive data is exposed; + - + - + - + * - ARC_02_05 + - Does the software architectural element consider the timing constraints (from the parent requirement)? + - If there are strict timing requirements, a programming time estimation should be performed and deadline supervision should be considered. + - + - + - + * - ARC_02_06 + - Is the documentation of the software architectural element, including textual and graphical descriptions (e.g., UML diagrams), clear and complete? + - Use of semi-formal notation is expected for architectural elements with an allocated ASIL level. Is the architecture template correctly filled? + - + - + - + * - ARC_03_01 + - Is the architectural element modular and encapsulated? + - Check, for example, that only minimal interfaces are used. The design should be object oriented. Interfaces and interactions are clearly defined. Usage of access types (private, protected) is properly set. Limited global variables. + - + - + - + * - ARC_03_02 + - Is the suitability of the software architecture for future modifications and maintainability considered? + - Check for, for example, loose coupling, separation of concerns, high cohesion, versioning strategy for interfaces, decision records, and use of established design patterns. + - + - + - + * - ARC_03_03 + - Are simplicity and avoidance of unnecessary complexity present in the software architecture? + - Indicators of complexity include: the number of use cases (corresponding to dynamic diagrams) allocated to a single design element, the number of interfaces and operations in an interface, function parameters, global variables, complex types, and limited comprehensibility. + + Notes: + + If the "number of use cases" or "number of interfaces" above exceeds "3" or "number of function parameters" exceeds "5" or the "number of operations" exceeds "20" or global variables are used, a design rationale is mandatory. + - + - + - + * - ARC_03_04 + - Is the software architecture design following best practices and design principles? + - Refer to architectural guidelines and recommendations within the project documentation. + - + - + - + * - ARC_04_01 + - If your software architectural design includes processes with different safety ratings (QM/ASIL), is freedom from interference for shared resources (CPU time, shared memory, etc.) ensured? See also ARC_04_03. + + Note: see :need:`std_req__iso26262__software_7411` and :need:`std_req__iso26262__software_749` with Annex D for partitioning to ensure freedom from interference. + Note: Modules should not mix ASIL and QM processes unless justified otherwise; therefore, this question is only relevant on the feature level. + - + Check whether your architecture design complies with project guidelines to establish freedom from interference between components. This can be achieved, for example, by using a hypervisor or an OS that supports partitioning with an MMU or specific scheduling mechanisms, as well as safety mechanisms like watchdogs or program flow monitoring. + Also check if the operating system supports freedom from interference between the processes and make sure an "Assumption of Use requirement" for this exists in your project. For example, see `score aou_req__platform__process_isolation `_. + - + - + - + * - ARC_04_02 + - Does the software architectural design consider its feasibility with respect to the required resources for the embedded software, especially for time-critical aspects like startup time, but also including RAM, ROM, non-volatile memory, communication bandwidth, and processing time limits according to the requirements or foreseeable customer needs? See also ARC_02_05. + + Note: see :need:`std_req__iso26262__software_7413` + - + Check if there are any limits for resource consumption or timing aspects in your project, such as startup time, communication bandwidth, or memory usage. If such limits exist, ensure that your architecture takes these limits into account, especially with respect to scalability. For this, make an estimation of the required resources based on the architectural design and a prototypical implementation or a measurement of an existing implementation, and compare it to the defined limits or planned scalability. Check if any bottlenecks are present in the architecture that could lead to resource overuse or timing violations. + - + - + - + * - ARC_04_03 + - If your software architectural design includes processes and tasks, are their scheduling policies and priorities (at least the necessary relationships between them) defined to ensure that timing requirements are met? Please note that the particular priorities or priority ranges will probably be defined by the project handbook or the software development plan. + + Note: see :need:`std_req__iso26262__software_743` + - Provide a rationale for these scheduling policies and priorities, or explain why they are not needed. + - + - + - + + +.. attention:: + The above checklist entries must be filled according to your feature architecture in scope. + +Note: If a Review ID is not applicable for your architecture, then state ""n/a" in status and comment accordingly in remarks. + +The following static views in "valid" state and with "inspected" tag set are in the scope of this inspection: + +.. needtable:: + :filter: "feature_name" in docname and "architecture" in docname and docname is not None and status == "valid" + :style: table + :types: feat_arc_sta + :tags: feature_name + :columns: id;status;tags + :colwidths: 25,25,25 + :sort: title + +and the following dynamic views: + +.. needtable:: + :filter: "feature_name" in docname and "architecture" in docname and docname is not None and status == "valid" + :style: table + :types: feat_arc_dyn + :tags: feature_name + :columns: id;status;tags + :colwidths: 25,25,25 + :sort: title + +.. attention:: + The above tables filtering must be updated according to your Feature. + + - Modify ``feature_name`` to be your Feature Name in lower snake case diff --git a/docs/feature/architecture/index.rst b/docs/feature/architecture/index.rst new file mode 100644 index 000000000..f128e5e32 --- /dev/null +++ b/docs/feature/architecture/index.rst @@ -0,0 +1,154 @@ +.. + # ******************************************************************************* + # Copyright (c) 2026 Contributors to the Eclipse Foundation + # + # See the NOTICE file(s) distributed with this work for additional + # information regarding copyright ownership. + # + # This program and the accompanying materials are made available under the + # terms of the Apache License Version 2.0 which is available at + # https://www.apache.org/licenses/LICENSE-2.0 + # + # SPDX-License-Identifier: Apache-2.0 + # ******************************************************************************* + +.. _feature_architecture_template: + +Feature Architecture +==================== + +.. document:: [Your Feature Name] Architecture + :id: doc__feature_example_architecture + :status: draft + :safety: ASIL_B + :security: NO + :realizes: wp__feature_arch + :tags: template + +.. attention:: + The above directive must be updated according to your Feature. + + - Modify ``Your Feature Name`` to be your Feature Name + - Modify ``id`` to be your Feature Name in upper snake case preceded by ``doc__`` and followed by ``_architecture`` + - Adjust ``status`` to be ``valid`` + - Adjust ``safety`` and ``tags`` according to your needs + +Overview +-------- + + +Description +----------- + + + + + + + +Requirements +------------ + +The requirements for the feature architecture are defined in the `requirements` section of the feature documentation in the project repository. + +Rationale Behind Architecture Decomposition +******************************************* + +Mandatory: A motivation for the decomposition + +.. note:: Common decisions across features / cross cutting concepts is at the high level. + +Static Architecture +------------------- + +The live feature architecture template snippets are maintained in the +`module template documentation `__. + +.. code-block:: rst + + .. feat_arc_sta:: Feature Static View + :id: feat_arc_sta__feature_name__static_view + :security: YES + :safety: ASIL_B + :status: invalid + :fulfils: feat_req__feature_name__some_title + :includes: logic_arc_int__feature_name__interface_name1 + :belongs_to: feat__feature_name + + .. needarch:: + :scale: 50 + :align: center + + {{ draw_feature(need(), needs) }} + +Dynamic Architecture +-------------------- + +.. code-block:: rst + + .. feat_arc_dyn:: Dynamic View + :id: feat_arc_dyn__feature_name__dynamic_view + :security: YES + :safety: ASIL_B + :status: invalid + :fulfils: feat_req__feature_name__some_title + :belongs_to: feat__feature_name + + Put here a sequence diagram + +Logical Interfaces +------------------ + +The logical interfaces of the feature are defined in the `logical interfaces` section of the feature documentation in the project repository. + +Module Viewpoint +---------------- + +The following modules are needed to be defined to be able to draw the static feature view. +They will be replaced by linking the proper module definitions in the used module's repositories as soon as those exist. + +The rendered module and used-component examples are maintained in the +`module template documentation `_. + +.. code-block:: rst + + .. mod:: Module Name + :id: mod__module_name + :includes: comp__component_name_template + + + .. mod_view_sta:: Module Name Static View + :id: mod_view_sta__feature_name__module_name + :includes: comp__component_name_template + + .. needarch:: + :scale: 50 + :align: center + + {{ draw_module(need(), needs) }} + +Used Components +--------------- + +The following components are needed to be defined to be able to draw the static feature view. +They will be replaced by linking the proper SW component definitions in the used module's repositories as soon as those exist. + +.. code-block:: rst + + .. comp:: Component Name + :id: comp__component_name_template + :safety: ASIL_B + :security: YES + :status: invalid + :implements: logic_arc_int__feature_name__interface_name1 + +.. note:: + Architecture can be split into multiple files, it is an high level architecture design + which can be shown without actual c++/rust interfaces and data types + and there will be link to internal architecture till code to get actual api descriptions. + +.. attention:: + The above directives must be updated according to your feature architecture. + + - Replace the example content by the real content (according to :need:`gd_guidl__arch_design`) + - Set the status to valid and start the review/merge process diff --git a/docs/feature/index.rst b/docs/feature/index.rst new file mode 100644 index 000000000..3731ea3e6 --- /dev/null +++ b/docs/feature/index.rst @@ -0,0 +1,35 @@ +.. + # ******************************************************************************* + # Copyright (c) 2026 Contributors to the Eclipse Foundation + # + # See the NOTICE file(s) distributed with this work for additional + # information regarding copyright ownership. + # + # This program and the accompanying materials are made available under the + # terms of the Apache License Version 2.0 which is available at + # https://www.apache.org/licenses/LICENSE-2.0 + # + # SPDX-License-Identifier: Apache-2.0 + # ******************************************************************************* + +Lifecycle +######### + +Abstract +======== + +[A short (~200 word) description of the feature.] + +For the main feature description and requirements, see the belonging `Feature `_ in the project repository. + +.. toctree:: + :hidden: + + architecture/index.rst + architecture/chklst_arc_inspection.rst + safety_analysis/fmea.rst + safety_analysis/dfa.rst + safety_analysis/aou_requirements_template.rst + safety_planning/index.rst + security_planning/index.rst + security_analysis/index.rst diff --git a/docs/feature/safety_analysis/aou_requirements_template.rst b/docs/feature/safety_analysis/aou_requirements_template.rst new file mode 100644 index 000000000..8dfa352dd --- /dev/null +++ b/docs/feature/safety_analysis/aou_requirements_template.rst @@ -0,0 +1,33 @@ +.. + # ******************************************************************************* + # Copyright (c) 2026 Contributors to the Eclipse Foundation + # + # See the NOTICE file(s) distributed with this work for additional + # information regarding copyright ownership. + # + # This program and the accompanying materials are made available under the + # terms of the Apache License Version 2.0 which is available at + # https://www.apache.org/licenses/LICENSE-2.0 + # + # SPDX-License-Identifier: Apache-2.0 + # ******************************************************************************* + +AoU Feature Requirements Template +================================= + +This page contains Assumption of Use requirement snippets that belong to the +template repository. + +Feature AoU +----------- + +.. code-block:: rst + + .. aou_req:: Some Other Title + :id: aou_req__feature_name__some_other_title + :reqtype: Process + :security: NO + :safety: ASIL_B + :status: invalid + + The Feature User shall do xyz to use the feature safely. diff --git a/docs/feature/safety_analysis/dfa.rst b/docs/feature/safety_analysis/dfa.rst new file mode 100644 index 000000000..f65bf3161 --- /dev/null +++ b/docs/feature/safety_analysis/dfa.rst @@ -0,0 +1,207 @@ +.. + # ******************************************************************************* + # Copyright (c) 2026 Contributors to the Eclipse Foundation + # + # See the NOTICE file(s) distributed with this work for additional + # information regarding copyright ownership. + # + # This program and the accompanying materials are made available under the + # terms of the Apache License Version 2.0 which is available at + # https://www.apache.org/licenses/LICENSE-2.0 + # + # SPDX-License-Identifier: Apache-2.0 + # ******************************************************************************* + + +DFA (Dependent Failure Analysis) +================================ + +.. document:: [Your Feature Name] DFA + :id: doc__feature_example_dfa + :status: draft + :safety: ASIL_B + :security: NO + :realizes: wp__feature_dfa + :tags: template + +.. note:: Use the content of the document to describe e.g. why a fault model is not applicable for the diagram. + +.. attention:: + The above directive must be updated according to your Feature. + + - Modify ``Your Feature Name`` to be your Feature Name + - Modify ``id`` to be your Feature Name in upper snake case preceded by ``doc__`` and succeeded by ``_dfa`` + - Adjust ``status`` to be ``valid`` + - Adjust ``safety`` and ``tags`` according to your needs + +The DFA for the feature [Your Feature Name] is performed. To show evidence that all failure initiators are considered, the applicability has to be filled out in the +following tables. For all applicable failure initiators, the DFA has to be performed. + +Dependent Failure Initiators +---------------------------- + +Shared resources +^^^^^^^^^^^^^^^^ + +The dependent failure initiators related to shared resources are not applicable for the features. The shared resources +will be considered in the platform DFA. + +Communication between the two elements +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Receiving function is affected by information that is false, lost, sent multiple times, or in the wrong order etc. from the sender. + +.. list-table:: DFA communication between elements + :header-rows: 1 + :widths: 10,20,10,20 + + * - ID + - Violation cause communication between elements + - Applicability + - Rationale + * - CO_01_01 + - Information passed via argument through a function call, or via writing/reading a variable being global to the two software functions (data flow) + - + - + * - CO_01_02 + - Data or message corruption / repetition / loss / delay / masquerading or incorrect addressing of information + - + - + * - CO_01_03 + - Insertion / sequence of information + - + - + * - CO_01_04 + - Corruption of information, inconsistent data + - + - + * - CO_01_05 + - Asymmetric information sent from a sender to multiple receivers, so that not all defined receivers have the same information + - + - + * - CO_01_06 + - Information from a sender received by only a subset of the receivers + - + - + * - CO_01_07 + - Blocking access to a communication channel + - + - + +Shared information inputs +^^^^^^^^^^^^^^^^^^^^^^^^^ + +Same information input used by multiple functions. + +.. list-table:: DFA shared information inputs + :header-rows: 1 + :widths: 10,20,10,20 + + * - ID + - Violation cause shared information inputs + - Applicability + - Rationale + * - SI_01_02 + - Configuration data + - + - + * - SI_01_03 + - Constants, or variables, being global to the two software functions + - + - + * - SI_01_04 + - Basic software passes data (read from hardware register and converted into logical information) to two applications software functions + - + - + * - SI_01_05 + - Data / function parameter arguments / messages delivered by software function to more than one other function + - + - + +Unintended impact +^^^^^^^^^^^^^^^^^ + +Unintended impacts to function due to various failures. + +.. list-table:: DFA unintended impact + :header-rows: 1 + :widths: 10,20,10,20 + + * - ID + - Violation cause unintended impact + - Applicability + - Rationale + * - UI_01_01 + - Memory miss-allocation and leaks + - + - + * - UI_01_02 + - Read/Write access to memory allocated to another software element + - + - + * - UI_01_03 + - Stack/Buffer under-/overflow + - + - + * - UI_01_04 + - Deadlocks + - + - + * - UI_01_05 + - Livelocks + - + - + * - UI_01_06 + - Blocking of execution + - + - + * - UI_01_07 + - Incorrect allocation of execution time + - + - + * - UI_01_08 + - Incorrect execution flow + - + - + * - UI_01_09 + - Incorrect synchronization between software elements + - + - + * - UI_01_10 + - CPU time depletion + - + - + * - UI_01_11 + - Memory depletion + - + - + * - UI_01_12 + - Other HW unavailability + - + - + + +DFA +=== + +For all identified applicable failure initiators, the DFA is performed in the following section. + +.. code-block:: rst + + .. feat_saf_dfa:: + :violates: <Feature architecture> + :id: feat_saf_dfa__<Feature>__<Element descriptor> + :failure_id: <ID from DFA failure initiators :need:`gd_guidl__dfa_failure_initiators`> + :failure_effect: "description of failure effect of the failure initiator on the element" + :mitigated_by: <ID from Feature Requirement | ID from AoU Feature Requirement> + :mitigation_issue: <ID from Issue Tracker> + :sufficient: <yes|no> + :status: <valid|invalid> + + .. note:: Argument is inside the 'content'. Therefore content is mandatory. + +.. attention:: + The above directive must be updated according to your feature DFA. + + - The above "code-block" directive must be updated + - Fill in all the needed information in the <brackets> diff --git a/docs/feature/safety_analysis/fmea.rst b/docs/feature/safety_analysis/fmea.rst new file mode 100644 index 000000000..e8b1ab727 --- /dev/null +++ b/docs/feature/safety_analysis/fmea.rst @@ -0,0 +1,136 @@ +.. + # ******************************************************************************* + # Copyright (c) 2026 Contributors to the Eclipse Foundation + # + # See the NOTICE file(s) distributed with this work for additional + # information regarding copyright ownership. + # + # This program and the accompanying materials are made available under the + # terms of the Apache License Version 2.0 which is available at + # https://www.apache.org/licenses/LICENSE-2.0 + # + # SPDX-License-Identifier: Apache-2.0 + # ******************************************************************************* + + +FMEA (Failure Modes and Effects Analysis) +========================================= + +.. document:: [Your Feature Name] FMEA + :id: doc__feature_example_fmea + :status: draft + :safety: ASIL_B + :security: NO + :realizes: wp__feature_fmea + :tags: template + +.. note:: Use the content of the document to describe e.g. why a fault model is not applicable for the diagram. + +.. attention:: + The above directive must be updated according to your Feature. + + - Modify ``Your Feature Name`` to be your Feature Name + - Modify ``id`` to be your Feature Name in upper snake case preceded by ``doc__`` and succeeded by ``_fmea`` + - Adjust ``status`` to be ``valid`` + - Adjust ``safety`` and ``tags`` according to your needs + +The FMEA for the feature [Your Feature Name] is performed. To show evidence that all failure initiators are considered, the applicability has to be filled out in the +following tables. For all applicable failure initiators, the FMEA has to be performed. + +Failure Mode List +----------------- + +Fault Models for sequence diagrams + .. list-table:: Fault Models for sequence diagrams + :header-rows: 1 + :widths: 10,20,10,20 + + * - ID + - Failure Mode + - Applicability + - Rationale + * - MF_01_01 + - message is not received (is a subset/more precise description of MF_01_05) + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + * - MF_01_02 + - message received too late (only relevant if delay is a realistic fault) + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + * - MF_01_03 + - message received too early (usually not a problem) + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + * - MF_01_04 + - message not received correctly by all recipients (different messages or messages partly lost). Only relevant if the same message goes to multiple recipients. + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + * - MF_01_05 + - message is corrupted + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + * - MF_01_06 + - message is not sent + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + * - MF_01_07 + - message is unintended sent + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + * - CO_01_01 + - minimum constraint boundary is violated + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + * - CO_01_02 + - maximum constraint boundary is violated + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + * - EX_01_01 + - Process calculates wrong result(s) (is a subset/more precise description of MF_01_05 or MF_01_04). This failure mode is related to the analysis if e.g. internal safety mechanisms are required (level 2 function, plausibility check of the output, …) because of the size / complexity of the feature. + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + * - EX_01_02 + - processing too slow (only relevant if timing is considered) + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + * - EX_01_03 + - processing too fast (only relevant if timing is considered) + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + * - EX_01_04 + - loss of execution + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + * - EX_01_05 + - processing changes to arbitrary process + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + * - EX_01_06 + - processing is not complete (infinite loop) + - <yes | no> + - <Rationale if not applicable, otherwise link to filled out FMEA> + +FMEA +---- +For all identified applicable failure initiators, the FMEA is performed in the following section. + +.. code-block:: rst + + + .. feat_saf_fmea:: <Title> + :violates: <Feature architecture> + :id: feat_saf_fmea__<Feature>__<Element descriptor> + :fault_id: <ID from fault model :need:`gd_guidl__fault_models`> + :failure_effect: "description of failure effect of the fault model on the element" + :mitigated_by: <ID from Feature Requirement | ID from AoU Feature Requirement> + :mitigation_issue: <ID from Issue Tracker> + :sufficient: <yes|no> + :status: <valid|invalid> + + .. note:: Argument is inside the 'content'. Therefore content is mandatory. + +.. attention:: + The above directive must be updated according to your feature FMEA. + + - The above "code-block" directive must be updated + - Fill in all the needed information in the <brackets> diff --git a/docs/feature/safety_planning/index.rst b/docs/feature/safety_planning/index.rst new file mode 100644 index 000000000..8baf11179 --- /dev/null +++ b/docs/feature/safety_planning/index.rst @@ -0,0 +1,155 @@ +.. + # ******************************************************************************* + # Copyright (c) 2026 Contributors to the Eclipse Foundation + # + # See the NOTICE file(s) distributed with this work for additional + # information regarding copyright ownership. + # + # This program and the accompanying materials are made available under the + # terms of the Apache License Version 2.0 which is available at + # https://www.apache.org/licenses/LICENSE-2.0 + # + # SPDX-License-Identifier: Apache-2.0 + # ******************************************************************************* + +.. _feature_safety_wp_template: + +Feature Safety Work Products List +################################# + +.. document:: [Your Feature Name] Safety WPs + :id: doc__feature_example_safety_wp + :status: draft + :safety: ASIL_B + :security: NO + :realizes: wp__platform_safety_plan + :tags: template + +.. attention:: + The above directive must be updated according to your Feature. + + - Modify ``Your Feature Name`` to be your Feature Name + - Modify ``id`` to be your Module Name in upper snake case preceded by ``doc__`` and succeeded by ``_safety_wp`` + - Adjust ``status`` to be ``valid`` + - Adjust ``safety`` and ``tags`` according to your needs + +Tailoring +========= + +Additional to the tailoring in the SW platform project as defined in the project's :need:`wp__platform_safety_plan` we define here the additional tailoring on feature level. + +- Excluded for this feature are additionally the following work products (and their related requirements): + + - <work product/requirement> - <Argumentation why it is not needed or replaced by another work product or activity.> + + +Safety Work products List +========================= + +.. list-table:: Feature <feature_name> Work products + :header-rows: 1 + + * - Work product Id + - Link to process + - Process status + - Link to WP + + * - :need:`wp__feat_request` + - :need:`gd_temp__change_feature_request` + - :ndf:`copy('status', need_id='gd_temp__change_feature_request')` + - :need:`doc__feature_name` + + * - :need:`wp__requirements_feat` + - :need:`gd_temp__req_feat_req` + - :ndf:`copy('status', need_id='gd_temp__req_feat_req')` + - :need:`doc__feature_name_requirements` + + * - :need:`wp__requirements_feat_aou` + - :need:`gd_temp__req_aou_req` + - :ndf:`copy('status', need_id='gd_temp__req_aou_req')` + - :need:`doc__feature_name_requirements` + + * - :need:`wp__feature_arch` + - :need:`gd_temp__arch_feature` + - :ndf:`copy('status', need_id='gd_temp__arch_feature')` + - :need:`doc__feature_name_architecture` + + * - :need:`wp__feature_fmea` + - :need:`gd_temp__feat_saf_fmea` + - :ndf:`copy('status', need_id='gd_temp__feat_saf_fmea')` + - :need:`doc__feature_name_fmea` + + * - :need:`wp__feature_dfa` + - :need:`gd_temp__feat_saf_dfa` + - :ndf:`copy('status', need_id='gd_temp__feat_saf_dfa')` + - :need:`doc__feature_name_dfa` + + * - :need:`wp__requirements_inspect` + - :need:`gd_chklst__req_inspection` + - :ndf:`copy('status', need_id='gd_chklst__req_inspection')` + - :need:`doc__feature_name_req_inspection` + + * - :need:`wp__sw_arch_verification` + - :need:`gd_chklst__arch_inspection_checklist` + - :ndf:`copy('status', need_id='gd_chklst__arch_inspection_checklist')` + - :need:`doc__feature_name_arc_inspection` + + * - :need:`wp__verification_feat_int_test` + - :need:`gd_guidl__verification_guide` + - :ndf:`copy('status', need_id='gd_guidl__verification_guide')` + - <Link to WP> + +.. attention:: + The above table must be updated according to your feature safety planning. + + - Fill the work products links + +Feature Safety Package +====================== + +To create the safety package (according to :need:`gd_guidl__saf_package`) the following +documents and work products status have to go to "valid" (after the relevant verification were performed). + +Feature Documents Status +------------------------ + +For all the work product documents the status can be seen by following the "Link to WP". +A summary of the status is also documented in the project's documentation management plan. + +See <add here the section reference to the documentation management plan> + +Feature Requirements Status +--------------------------- + +.. needtable:: + :filter: docname is not None and "feature_example" in docname and "requirements" in docname + :style: table + :types: feat_req + :tags: feature_name + :columns: id;status + :colwidths: 25,25 + :sort: title + +Feature AoU Status +------------------ + +.. needtable:: + :filter: docname is not None and "feature_name" in docname and "requirements" in docname + :style: table + :types: aou_req + :tags: feature_name + :columns: id;status + :colwidths: 25,25 + :sort: title + +Feature Architecture Status +--------------------------- + +.. needtable:: + :filter: docname is not None and "feature_name" in docname and "architecture" in docname + :style: table + :types: feat_arc_sta; feat_arc_dyn + :tags: feature_name + :columns: id;status + :colwidths: 25,25 + :sort: title diff --git a/docs/feature/security_analysis/index.rst b/docs/feature/security_analysis/index.rst new file mode 100644 index 000000000..5061902df --- /dev/null +++ b/docs/feature/security_analysis/index.rst @@ -0,0 +1,145 @@ +.. + # ******************************************************************************* + # Copyright (c) 2026 Contributors to the Eclipse Foundation + # + # See the NOTICE file(s) distributed with this work for additional + # information regarding copyright ownership. + # + # This program and the accompanying materials are made available under the + # terms of the Apache License Version 2.0 which is available at + # https://www.apache.org/licenses/LICENSE-2.0 + # + # SPDX-License-Identifier: Apache-2.0 + # ******************************************************************************* + +.. _feature_security_analysis_template: + +Feature Security Work Products List +################################### + +.. document:: [Your Feature Name] Security WPs + :id: doc__feature_example_security_analysis_wp + :status: draft + :safety: ASIL_B + :security: YES + :realizes: wp__platform_security_plan + :tags: template + +.. attention:: + The above directive must be updated according to your Feature. + + - Modify ``Your Feature Name`` to be your Feature Name + - Modify ``id`` to be your Module Name in upper snake case preceded by ``doc__`` and succeeded by ``_security_wp`` + - Adjust ``status`` to be ``valid`` + - Adjust ``safety`` and ``tags`` according to your needs + +Tailoring +========= + +Additional to the tailoring in the SW platform project as defined in the project's :need:`wp__platform_security_plan` we define here the additional tailoring on feature level. + +- Excluded for this feature are additionally the following work products (and their related requirements): + + - <work product/requirement> - <Argumentation why it is not needed or replaced by another work product or activity.> + + +Security Work products List +=========================== + +.. list-table:: Feature <feature_name> Work products + :header-rows: 1 + + * - Work product Id + - Link to process + - Process status + - Link to WP + + * - :need:`wp__feat_request` + - :need:`gd_temp__change_feature_request` + - :ndf:`copy('status', need_id='gd_temp__change_feature_request')` + - :need:`doc__feature_name` + + * - :need:`wp__requirements_feat` + - :need:`gd_temp__req_feat_req` + - :ndf:`copy('status', need_id='gd_temp__req_feat_req')` + - :need:`doc__feature_name_requirements` + + * - :need:`wp__requirements_feat_aou` + - :need:`gd_temp__req_aou_req` + - :ndf:`copy('status', need_id='gd_temp__req_aou_req')` + - :need:`doc__feature_name_requirements` + + * - :need:`wp__feature_arch` + - :need:`gd_temp__arch_feature` + - :ndf:`copy('status', need_id='gd_temp__arch_feature')` + - :need:`doc__feature_name_architecture` + + * - :need:`wp__requirements_inspect` + - :need:`gd_chklst__req_inspection` + - :ndf:`copy('status', need_id='gd_chklst__req_inspection')` + - :need:`doc__feature_name_req_inspection` + + * - :need:`wp__sw_arch_verification` + - :need:`gd_chklst__arch_inspection_checklist` + - :ndf:`copy('status', need_id='gd_chklst__arch_inspection_checklist')` + - :need:`doc__feature_name_arc_inspection` + + * - :need:`wp__verification_feat_int_test` + - :need:`gd_guidl__verification_guide` + - :ndf:`copy('status', need_id='gd_guidl__verification_guide')` + - <Link to WP> + +.. attention:: + The above table must be updated according to your feature security planning. + + - Fill the work producs links + +Feature Security Package +======================== + +To create the security package (according to :need:`gd_guidl__security_package`) the following +documents and work products status have to go to "valid" (after the relevant verification were performed). + +Feature Documents Status +------------------------ + +For all the work product documents the status can be seen by following the "Link to WP". +A summary of the status is also documented in the project's documentation management plan. + +See <add here the section reference to the documentation management plan> + +Feature Requirements Status +--------------------------- + +.. needtable:: + :filter: docname is not None and "feature_name" in docname and "requirements" in docname + :style: table + :types: feat_req + :tags: feature_name + :columns: id;status + :colwidths: 25,25 + :sort: title + +Feature AoU Status +------------------ + +.. needtable:: + :filter: docname is not None and "feature_name" in docname and "requirements" in docname + :style: table + :types: aou_req + :tags: feature_name + :columns: id;status + :colwidths: 25,25 + :sort: title + +Feature Architecture Status +--------------------------- + +.. needtable:: + :filter: docname is not None and "feature_name" in docname and "architecture" in docname + :style: table + :types: feat_arc_sta; feat_arc_dyn + :tags: feature_name + :columns: id;status + :colwidths: 25,25 + :sort: title diff --git a/docs/feature/security_planning/index.rst b/docs/feature/security_planning/index.rst new file mode 100644 index 000000000..0271d6d17 --- /dev/null +++ b/docs/feature/security_planning/index.rst @@ -0,0 +1,145 @@ +.. + # ******************************************************************************* + # Copyright (c) 2026 Contributors to the Eclipse Foundation + # + # See the NOTICE file(s) distributed with this work for additional + # information regarding copyright ownership. + # + # This program and the accompanying materials are made available under the + # terms of the Apache License Version 2.0 which is available at + # https://www.apache.org/licenses/LICENSE-2.0 + # + # SPDX-License-Identifier: Apache-2.0 + # ******************************************************************************* + +.. _feature_security_planning_template: + +Feature Security Work Products List +################################### + +.. document:: [Your Feature Name] Security WPs + :id: doc__feature_example_security_planning_wp + :status: draft + :safety: ASIL_B + :security: YES + :realizes: wp__platform_security_plan + :tags: template + +.. attention:: + The above directive must be updated according to your Feature. + + - Modify ``Your Feature Name`` to be your Feature Name + - Modify ``id`` to be your Module Name in upper snake case preceded by ``doc__`` and succeeded by ``_security_wp`` + - Adjust ``status`` to be ``valid`` + - Adjust ``safety`` and ``tags`` according to your needs + +Tailoring +========= + +Additional to the tailoring in the SW platform project as defined in the project's :need:`wp__platform_security_plan` we define here the additional tailoring on feature level. + +- Excluded for this feature are additionally the following work products (and their related requirements): + + - <work product/requirement> - <Argumentation why it is not needed or replaced by another work product or activity.> + + +Security Work products List +=========================== + +.. list-table:: Feature <feature_name> Work products + :header-rows: 1 + + * - Work product Id + - Link to process + - Process status + - Link to WP + + * - :need:`wp__feat_request` + - :need:`gd_temp__change_feature_request` + - :ndf:`copy('status', need_id='gd_temp__change_feature_request')` + - :need:`doc__feature_name` + + * - :need:`wp__requirements_feat` + - :need:`gd_temp__req_feat_req` + - :ndf:`copy('status', need_id='gd_temp__req_feat_req')` + - :need:`doc__feature_name_requirements` + + * - :need:`wp__requirements_feat_aou` + - :need:`gd_temp__req_aou_req` + - :ndf:`copy('status', need_id='gd_temp__req_aou_req')` + - :need:`doc__feature_name_requirements` + + * - :need:`wp__feature_arch` + - :need:`gd_temp__arch_feature` + - :ndf:`copy('status', need_id='gd_temp__arch_feature')` + - :need:`doc__feature_name_architecture` + + * - :need:`wp__requirements_inspect` + - :need:`gd_chklst__req_inspection` + - :ndf:`copy('status', need_id='gd_chklst__req_inspection')` + - :need:`doc__feature_name_req_inspection` + + * - :need:`wp__sw_arch_verification` + - :need:`gd_chklst__arch_inspection_checklist` + - :ndf:`copy('status', need_id='gd_chklst__arch_inspection_checklist')` + - :need:`doc__feature_name_arc_inspection` + + * - :need:`wp__verification_feat_int_test` + - :need:`gd_guidl__verification_guide` + - :ndf:`copy('status', need_id='gd_guidl__verification_guide')` + - <Link to WP> + +.. attention:: + The above table must be updated according to your feature security planning. + + - Fill the work producs links + +Feature Security Package +======================== + +To create the security package (according to :need:`gd_guidl__security_package`) the following +documents and work products status have to go to "valid" (after the relevant verification were performed). + +Feature Documents Status +------------------------ + +For all the work product documents the status can be seen by following the "Link to WP". +A summary of the status is also documented in the project's documentation management plan. + +See <add here the section reference to the documentation management plan> + +Feature Requirements Status +--------------------------- + +.. needtable:: + :filter: docname is not None and "feature_name" in docname and "requirements" in docname + :style: table + :types: feat_req + :tags: feature_name + :columns: id;status + :colwidths: 25,25 + :sort: title + +Feature AoU Status +------------------ + +.. needtable:: + :filter: docname is not None and "feature_name" in docname and "requirements" in docname + :style: table + :types: aou_req + :tags: feature_name + :columns: id;status + :colwidths: 25,25 + :sort: title + +Feature Architecture Status +--------------------------- + +.. needtable:: + :filter: docname is not None and "feature_name" in docname and "architecture" in docname + :style: table + :types: feat_arc_sta; feat_arc_dyn + :tags: feature_name + :columns: id;status + :colwidths: 25,25 + :sort: title diff --git a/docs/release/index.rst b/docs/release/index.rst new file mode 100644 index 000000000..a109c37ea --- /dev/null +++ b/docs/release/index.rst @@ -0,0 +1,37 @@ +.. + # ******************************************************************************* + # Copyright (c) 2026 Contributors to the Eclipse Foundation + # + # See the NOTICE file(s) distributed with this work for additional + # information regarding copyright ownership. + # + # This program and the accompanying materials are made available under the + # terms of the Apache License Version 2.0 which is available at + # https://www.apache.org/licenses/LICENSE-2.0 + # + # SPDX-License-Identifier: Apache-2.0 + # ******************************************************************************* + +.. _lifecycle_release_notes: + +Release notes +============= + +Overview +-------- + +This document provides an overview of the changes, improvements, and bug fixes included in the software module release version v0.2.0 +as compared to the module's origin release (which is usually the previous release). + +Disclaimer +---------- + +This release note does not "release for production", as it does not come with a safety argumentation and a performed safety assessment. +The work products compiled in the safety package are created with care according to a process satisfying standards, but the as the project, +being a non-profit and open source organization, can not take over any liability for its content. + +.. toctree:: + :maxdepth: 1 + :caption: Content + + ./release_note_v_0_2_0.rst \ No newline at end of file diff --git a/docs/release/release_note_v_0_2_0.rst b/docs/release/release_note_v_0_2_0.rst new file mode 100644 index 000000000..983a3a915 --- /dev/null +++ b/docs/release/release_note_v_0_2_0.rst @@ -0,0 +1,94 @@ +.. + # ******************************************************************************* + # Copyright (c) 2025 Contributors to the Eclipse Foundation + # + # See the NOTICE file(s) distributed with this work for additional + # information regarding copyright ownership. + # + # This program and the accompanying materials are made available under the + # terms of the Apache License Version 2.0 which is available at + # https://www.apache.org/licenses/LICENSE-2.0 + # + # SPDX-License-Identifier: Apache-2.0 + # ******************************************************************************* + + +.. document:: lifecycle Release Note + :id: doc__lifecycle_release_note + :status: valid + :safety: ASIL_B + :security: NO + :realizes: wp__module_sw_release_note + :tags: + + +Overview +======== + +This document provides an overview of the changes, improvements, and bug fixes included in the software module release version vx.x.z +as compared to the module's origin release (which is usually the previous release). + +Disclaimer +========== + +This release note does not "release for production", as it does not come with a safety argumentation and a performed safety assessment. +The work products compiled in the safety package are created with care according to a process satisfying standards, but the as the project, +being a non-profit and open source organization, can not take over any liability for its content. + +Changes to the Module +===================== + +New Features +------------ + +- **New Configuration Schema:** Introduce first version of JSON schema intended for Launch Manager configuration. +- **Heartbeat monitor API:** Health monitoring library provides heartbeat monitor API. +- **Logic monitor API:** Health monitoring library provides logic monitor API. + +Improvements +------------ + +- **Quality improvements:** testing and documentation updates. + +Bug Fixes +--------- + +- + +Other Changes by Label +---------------------- + +- + +Compatibility +------------- + +- The following platforms are supported using the [bazel_cpp_toolchains](https://github.com/eclipse-score/bazel_cpp_toolchains): + + - `x86_64-unknown-linux-gnu` + - `aarch64-unknown-linux-gnu` + - `x86_64-unknown-nto-qnx800` + - `aarch64-unknown-nto-qnx800` + +Performed Verification +---------------------- + +- Build on all supported platforms +- Unit test execution on all supported platforms + +Known Issues +------------ + +- + +Known Vulnerabilities +--------------------- + +- + +Upgrade Instructions +-------------------- + +- Backward compatibility with the previous release is not guaranteed. + +*For any questions or support, please contact the [Project Team](https://github.com/orgs/eclipse-score/projects/33) or raise an issue/discussion.* From 3ea8d6c271f0b5b1b67a47020fa76a7a2df04617 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20Fu=C3=9Fberger?= <nicolas.fussberger@etas.com> Date: Mon, 15 Jun 2026 15:06:20 +0200 Subject: [PATCH 5/7] Correct broken links --- score/launch_manager/lifecycle_client/docs/lifecycle.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/score/launch_manager/lifecycle_client/docs/lifecycle.md b/score/launch_manager/lifecycle_client/docs/lifecycle.md index 5670d02a2..3d432bd35 100644 --- a/score/launch_manager/lifecycle_client/docs/lifecycle.md +++ b/score/launch_manager/lifecycle_client/docs/lifecycle.md @@ -21,12 +21,12 @@ N/A ### External C++ interfaces `score:mw::Application` methods which have to be implemented by the application: #### Initialize -This method shall do basic initialization of application (what was not done in application [State `Initializing`](#state-initializing)). +This method shall do basic initialization of application (what was not done in application State Initializing). Method returns a `Result`, which either contains `void` on success or an error. In case of an error lifecycle manager will join all running threads and will return with non zero value. Input parameter to this method is an instance of `ApplicationContext`, which is a wrapper around the arguments, which have been given to `main`. #### Run -This method implements the `Run` state of the app (see [State `Run`](#state-run)). This could be a long running +This method implements the `Run` state of the app (see State `Run`). This could be a long running functionality. In case `Run()` returns, this implicitly means, that the app has ended. If app implementations do spawn some worker threads in the context of `Run()`, those threads are joined again before` Run()` returns. @@ -129,4 +129,4 @@ do so, it shall not report `Run` at all. * N/A ### Deployment -* There is example app available that can help with deploying this library see [example application](test/example/README.md) subdirectory +* There is example app available that can help with deploying this library see example application (`examples/cpp_lifecycle_app`) subdirectory From 658537df8e6b8318995ce40c16caee096e0c0fc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20Fu=C3=9Fberger?= <nicolas.fussberger@etas.com> Date: Mon, 15 Jun 2026 16:24:59 +0200 Subject: [PATCH 6/7] Fix test logs in docs --- conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf.py b/conf.py index e82d557fa..7864757b8 100644 --- a/conf.py +++ b/conf.py @@ -78,7 +78,7 @@ class DisplayTestLogs(Directive): def run(self): env = self.state.document.settings.env - ws_root = Path(env.app.srcdir).parent + ws_root = Path(env.app.srcdir) result_nodes = [] for log_file in chain( From 66d8829a0738c9726938b0719132eb3a63a49b49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20Fu=C3=9Fberger?= <nicolas.fussberger@etas.com> Date: Tue, 16 Jun 2026 07:22:18 +0200 Subject: [PATCH 7/7] Remove feature docs from this PR We will move existing docs from central score repo. Does not make sense to start with fresh templates here. --- .../architecture/chklst_arc_inspection.rst | 219 ------------------ docs/feature/architecture/index.rst | 154 ------------ docs/feature/index.rst | 35 --- .../aou_requirements_template.rst | 33 --- docs/feature/safety_analysis/dfa.rst | 207 ----------------- docs/feature/safety_analysis/fmea.rst | 136 ----------- docs/feature/safety_planning/index.rst | 155 ------------- docs/feature/security_analysis/index.rst | 145 ------------ docs/feature/security_planning/index.rst | 145 ------------ index.rst | 1 - 10 files changed, 1230 deletions(-) delete mode 100644 docs/feature/architecture/chklst_arc_inspection.rst delete mode 100644 docs/feature/architecture/index.rst delete mode 100644 docs/feature/index.rst delete mode 100644 docs/feature/safety_analysis/aou_requirements_template.rst delete mode 100644 docs/feature/safety_analysis/dfa.rst delete mode 100644 docs/feature/safety_analysis/fmea.rst delete mode 100644 docs/feature/safety_planning/index.rst delete mode 100644 docs/feature/security_analysis/index.rst delete mode 100644 docs/feature/security_planning/index.rst diff --git a/docs/feature/architecture/chklst_arc_inspection.rst b/docs/feature/architecture/chklst_arc_inspection.rst deleted file mode 100644 index b2cbef54b..000000000 --- a/docs/feature/architecture/chklst_arc_inspection.rst +++ /dev/null @@ -1,219 +0,0 @@ -.. - # ******************************************************************************* - # Copyright (c) 2026 Contributors to the Eclipse Foundation - # - # See the NOTICE file(s) distributed with this work for additional - # information regarding copyright ownership. - # - # This program and the accompanying materials are made available under the - # terms of the Apache License Version 2.0 which is available at - # https://www.apache.org/licenses/LICENSE-2.0 - # - # SPDX-License-Identifier: Apache-2.0 - # ******************************************************************************* - - -.. document:: [Your Feature Name] Architecture Inspection Checklist - :id: doc__feature_example_arc_inspection - :status: draft - :safety: ASIL_B - :security: YES - :realizes: wp__sw_arch_verification - :tags: template - -.. attention:: - The above directive must be updated according to your Feature. - - - Modify ``Your Feature Name`` to be your Feature Name - - Modify ``id`` to be your Feature Name in lower snake case preceded by ``doc__`` and followed by ``_arc_inspection`` - - Adjust ``status`` to be ``valid`` - - Adjust ``safety``, ``security`` and ``tags`` according to your needs - -Architecture Inspection Checklist -================================= - -Purpose -------- - -The purpose of the software architecture checklist is to ensure that the design meets the criteria and quality as -defined per project processes and guidelines for feature and component architectural design elements. -It helps to check the compliance with requirements, identify errors or inconsistencies, and ensure adherence to best -practices. -The checklist guides evaluation of the architecture design, identifies potential problems, and aids in -communication and documentation of architectural decisions to stakeholders. - -Conduct -------- - -As described in the concept :need:`doc_concept__wp_inspections` the following "inspection roles" are expected to be filled: - -- content responsible (author): <contributor/committer explicitly named here, who is the main author, as can be seen in config mgt tooling> -- reviewer: <contributor/committer explicitly named here, who is the main content reviewer, must be different from content responsible> -- moderator: <committer explicitly named here, who is is the safety manager, security manager or quality manager initiating the inspection> - -Checklist ---------- - -It is mandatory to fill in the "passed" column with "yes" or "no" for each checklist item and additionally to add in the remarks why it is passed or not passed. -In case of "no" an issue link to the issue tracking system has to be added in the last column (if not solved in the same issue). -See also :need:`doc_concept__wp_inspections` for further information about reviews in general and inspection in particular. - -.. list-table:: Architecture Design Review Checklist - :header-rows: 1 - - * - Review Id - - Acceptance criteria - - Guidance - - passed - - Remarks - - Issue link - * - ARC_01_01 - - Is the traceability from software architectural elements to requirements, and other level architectural elements (e.g. component to interface) established according to the "Relations between the architectural elements" as described in :need:`doc_concept__arch_process`? - - Trace should be checked automatically by tool support in the future. It will be removed from the checklist once the requirement (:need:`Correlations of the architectural building blocks <gd_req__arch_build_blocks_corr>`) is implemented. Refer to `Tool Requirements <https://eclipse-score.github.io/docs-as-code/main/internals/requirements/requirements.html>`_ for the current status. - - - - - - - * - ARC_01_02 - - Does the software architecture design consider all the requirements allocated to the architectural element, including functional, non-functional, safety, and security requirements and all related design decisions? - - manual - - Check if all requirements allocated to the architectural element are considered in the design. This includes functional requirements (e.g. functional safety requirements), non-functional requirements (e.g. performance, reliability), and security requirements (e.g. confidentiality, integrity). Additionally, ensure that all related design decisions are taken into account and documented in the architectural design. - - - - - * - ARC_01_03 - - If the architectural element is related to any supplier manuals (including safety and security), are the relevant parts covered? - - If the architecture makes use of supplied elements, their manuals (like safety) have to be considered (i.e. its provided functionality matches the expectation and assumptions are fulfilled). Note that in case of safety component this means that assumed Technical Safety Requirements and AoUs of the safety manual are covered. - - - - - - - * - ARC_01_04 - - Is the architectural element traceable to the lower-level artifacts as defined by the work product traceability? - - - - - - - - - * - ARC_02_01 - - Is the software architecture design compliant with the overall feature architecture? - - On component level check against the feature architecture, on feature level check other features with common components used. - - - - - - - * - ARC_02_02 - - Is appropriate and comprehensible operation and interface naming present in the architectural design? - - Check :need:`gd_guidl__arch_design` - - - - - - - * - ARC_02_03 - - Are the correctness of data flow and control flow within the architectural elements considered? - - For example, examine definitions, transformations, integrity, and interaction of data; check error handling, data exchange between elements, correct response to inputs, and documented decision making. - Note: Consistency is ensured by the process/tooling, by defining each interface only once. - - - - - - - * - ARC_02_04 - - Are the interfaces between the software architectural element and other architectural elements well defined? - - Check if the interface handles undefined behaviour or errors; can established protocols be used; are the interfaces for inputs, outputs, and error codes documented; is loose coupling considered and only limited exposure; can unit or integration tests be written against the interface; data amount transferred; ensure no sensitive data is exposed; - - - - - - - * - ARC_02_05 - - Does the software architectural element consider the timing constraints (from the parent requirement)? - - If there are strict timing requirements, a programming time estimation should be performed and deadline supervision should be considered. - - - - - - - * - ARC_02_06 - - Is the documentation of the software architectural element, including textual and graphical descriptions (e.g., UML diagrams), clear and complete? - - Use of semi-formal notation is expected for architectural elements with an allocated ASIL level. Is the architecture template correctly filled? - - - - - - - * - ARC_03_01 - - Is the architectural element modular and encapsulated? - - Check, for example, that only minimal interfaces are used. The design should be object oriented. Interfaces and interactions are clearly defined. Usage of access types (private, protected) is properly set. Limited global variables. - - - - - - - * - ARC_03_02 - - Is the suitability of the software architecture for future modifications and maintainability considered? - - Check for, for example, loose coupling, separation of concerns, high cohesion, versioning strategy for interfaces, decision records, and use of established design patterns. - - - - - - - * - ARC_03_03 - - Are simplicity and avoidance of unnecessary complexity present in the software architecture? - - Indicators of complexity include: the number of use cases (corresponding to dynamic diagrams) allocated to a single design element, the number of interfaces and operations in an interface, function parameters, global variables, complex types, and limited comprehensibility. - - Notes: - - If the "number of use cases" or "number of interfaces" above exceeds "3" or "number of function parameters" exceeds "5" or the "number of operations" exceeds "20" or global variables are used, a design rationale is mandatory. - - - - - - - * - ARC_03_04 - - Is the software architecture design following best practices and design principles? - - Refer to architectural guidelines and recommendations within the project documentation. - - - - - - - * - ARC_04_01 - - If your software architectural design includes processes with different safety ratings (QM/ASIL), is freedom from interference for shared resources (CPU time, shared memory, etc.) ensured? See also ARC_04_03. - - Note: see :need:`std_req__iso26262__software_7411` and :need:`std_req__iso26262__software_749` with Annex D for partitioning to ensure freedom from interference. - Note: Modules should not mix ASIL and QM processes unless justified otherwise; therefore, this question is only relevant on the feature level. - - - Check whether your architecture design complies with project guidelines to establish freedom from interference between components. This can be achieved, for example, by using a hypervisor or an OS that supports partitioning with an MMU or specific scheduling mechanisms, as well as safety mechanisms like watchdogs or program flow monitoring. - Also check if the operating system supports freedom from interference between the processes and make sure an "Assumption of Use requirement" for this exists in your project. For example, see `score aou_req__platform__process_isolation <https://eclipse-score.github.io/score/main/requirements/platform_assumptions/index.html#aou_req__platform__process_isolation>`_. - - - - - - - * - ARC_04_02 - - Does the software architectural design consider its feasibility with respect to the required resources for the embedded software, especially for time-critical aspects like startup time, but also including RAM, ROM, non-volatile memory, communication bandwidth, and processing time limits according to the requirements or foreseeable customer needs? See also ARC_02_05. - - Note: see :need:`std_req__iso26262__software_7413` - - - Check if there are any limits for resource consumption or timing aspects in your project, such as startup time, communication bandwidth, or memory usage. If such limits exist, ensure that your architecture takes these limits into account, especially with respect to scalability. For this, make an estimation of the required resources based on the architectural design and a prototypical implementation or a measurement of an existing implementation, and compare it to the defined limits or planned scalability. Check if any bottlenecks are present in the architecture that could lead to resource overuse or timing violations. - - - - - - - * - ARC_04_03 - - If your software architectural design includes processes and tasks, are their scheduling policies and priorities (at least the necessary relationships between them) defined to ensure that timing requirements are met? Please note that the particular priorities or priority ranges will probably be defined by the project handbook or the software development plan. - - Note: see :need:`std_req__iso26262__software_743` - - Provide a rationale for these scheduling policies and priorities, or explain why they are not needed. - - - - - - - - -.. attention:: - The above checklist entries must be filled according to your feature architecture in scope. - -Note: If a Review ID is not applicable for your architecture, then state ""n/a" in status and comment accordingly in remarks. - -The following static views in "valid" state and with "inspected" tag set are in the scope of this inspection: - -.. needtable:: - :filter: "feature_name" in docname and "architecture" in docname and docname is not None and status == "valid" - :style: table - :types: feat_arc_sta - :tags: feature_name - :columns: id;status;tags - :colwidths: 25,25,25 - :sort: title - -and the following dynamic views: - -.. needtable:: - :filter: "feature_name" in docname and "architecture" in docname and docname is not None and status == "valid" - :style: table - :types: feat_arc_dyn - :tags: feature_name - :columns: id;status;tags - :colwidths: 25,25,25 - :sort: title - -.. attention:: - The above tables filtering must be updated according to your Feature. - - - Modify ``feature_name`` to be your Feature Name in lower snake case diff --git a/docs/feature/architecture/index.rst b/docs/feature/architecture/index.rst deleted file mode 100644 index f128e5e32..000000000 --- a/docs/feature/architecture/index.rst +++ /dev/null @@ -1,154 +0,0 @@ -.. - # ******************************************************************************* - # Copyright (c) 2026 Contributors to the Eclipse Foundation - # - # See the NOTICE file(s) distributed with this work for additional - # information regarding copyright ownership. - # - # This program and the accompanying materials are made available under the - # terms of the Apache License Version 2.0 which is available at - # https://www.apache.org/licenses/LICENSE-2.0 - # - # SPDX-License-Identifier: Apache-2.0 - # ******************************************************************************* - -.. _feature_architecture_template: - -Feature Architecture -==================== - -.. document:: [Your Feature Name] Architecture - :id: doc__feature_example_architecture - :status: draft - :safety: ASIL_B - :security: NO - :realizes: wp__feature_arch - :tags: template - -.. attention:: - The above directive must be updated according to your Feature. - - - Modify ``Your Feature Name`` to be your Feature Name - - Modify ``id`` to be your Feature Name in upper snake case preceded by ``doc__`` and followed by ``_architecture`` - - Adjust ``status`` to be ``valid`` - - Adjust ``safety`` and ``tags`` according to your needs - -Overview --------- -<Brief summary> - -Description ------------ - -<General Description> - -<Design Decisions - For the documentation of the decision the :need:`gd_temp__change_decision_record` can be used.> - -<Design Constraints> - -Requirements ------------- - -The requirements for the feature architecture are defined in the `requirements` section of the feature documentation in the project repository. - -Rationale Behind Architecture Decomposition -******************************************* - -Mandatory: A motivation for the decomposition - -.. note:: Common decisions across features / cross cutting concepts is at the high level. - -Static Architecture -------------------- - -The live feature architecture template snippets are maintained in the -`module template documentation <https://eclipse-score.github.io/module_template/main/>`__. - -.. code-block:: rst - - .. feat_arc_sta:: Feature Static View - :id: feat_arc_sta__feature_name__static_view - :security: YES - :safety: ASIL_B - :status: invalid - :fulfils: feat_req__feature_name__some_title - :includes: logic_arc_int__feature_name__interface_name1 - :belongs_to: feat__feature_name - - .. needarch:: - :scale: 50 - :align: center - - {{ draw_feature(need(), needs) }} - -Dynamic Architecture --------------------- - -.. code-block:: rst - - .. feat_arc_dyn:: Dynamic View - :id: feat_arc_dyn__feature_name__dynamic_view - :security: YES - :safety: ASIL_B - :status: invalid - :fulfils: feat_req__feature_name__some_title - :belongs_to: feat__feature_name - - Put here a sequence diagram - -Logical Interfaces ------------------- - -The logical interfaces of the feature are defined in the `logical interfaces` section of the feature documentation in the project repository. - -Module Viewpoint ----------------- - -The following modules are needed to be defined to be able to draw the static feature view. -They will be replaced by linking the proper module definitions in the used module's repositories as soon as those exist. - -The rendered module and used-component examples are maintained in the -`module template documentation <https://eclipse-score.github.io/module_template/main/>`_. - -.. code-block:: rst - - .. mod:: Module Name - :id: mod__module_name - :includes: comp__component_name_template - - - .. mod_view_sta:: Module Name Static View - :id: mod_view_sta__feature_name__module_name - :includes: comp__component_name_template - - .. needarch:: - :scale: 50 - :align: center - - {{ draw_module(need(), needs) }} - -Used Components ---------------- - -The following components are needed to be defined to be able to draw the static feature view. -They will be replaced by linking the proper SW component definitions in the used module's repositories as soon as those exist. - -.. code-block:: rst - - .. comp:: Component Name - :id: comp__component_name_template - :safety: ASIL_B - :security: YES - :status: invalid - :implements: logic_arc_int__feature_name__interface_name1 - -.. note:: - Architecture can be split into multiple files, it is an high level architecture design - which can be shown without actual c++/rust interfaces and data types - and there will be link to internal architecture till code to get actual api descriptions. - -.. attention:: - The above directives must be updated according to your feature architecture. - - - Replace the example content by the real content (according to :need:`gd_guidl__arch_design`) - - Set the status to valid and start the review/merge process diff --git a/docs/feature/index.rst b/docs/feature/index.rst deleted file mode 100644 index 3731ea3e6..000000000 --- a/docs/feature/index.rst +++ /dev/null @@ -1,35 +0,0 @@ -.. - # ******************************************************************************* - # Copyright (c) 2026 Contributors to the Eclipse Foundation - # - # See the NOTICE file(s) distributed with this work for additional - # information regarding copyright ownership. - # - # This program and the accompanying materials are made available under the - # terms of the Apache License Version 2.0 which is available at - # https://www.apache.org/licenses/LICENSE-2.0 - # - # SPDX-License-Identifier: Apache-2.0 - # ******************************************************************************* - -Lifecycle -######### - -Abstract -======== - -[A short (~200 word) description of the feature.] - -For the main feature description and requirements, see the belonging `Feature <https://eclipse-score.github.io/score/main/features/index.html#features>`_ in the project repository. - -.. toctree:: - :hidden: - - architecture/index.rst - architecture/chklst_arc_inspection.rst - safety_analysis/fmea.rst - safety_analysis/dfa.rst - safety_analysis/aou_requirements_template.rst - safety_planning/index.rst - security_planning/index.rst - security_analysis/index.rst diff --git a/docs/feature/safety_analysis/aou_requirements_template.rst b/docs/feature/safety_analysis/aou_requirements_template.rst deleted file mode 100644 index 8dfa352dd..000000000 --- a/docs/feature/safety_analysis/aou_requirements_template.rst +++ /dev/null @@ -1,33 +0,0 @@ -.. - # ******************************************************************************* - # Copyright (c) 2026 Contributors to the Eclipse Foundation - # - # See the NOTICE file(s) distributed with this work for additional - # information regarding copyright ownership. - # - # This program and the accompanying materials are made available under the - # terms of the Apache License Version 2.0 which is available at - # https://www.apache.org/licenses/LICENSE-2.0 - # - # SPDX-License-Identifier: Apache-2.0 - # ******************************************************************************* - -AoU Feature Requirements Template -================================= - -This page contains Assumption of Use requirement snippets that belong to the -template repository. - -Feature AoU ------------ - -.. code-block:: rst - - .. aou_req:: Some Other Title - :id: aou_req__feature_name__some_other_title - :reqtype: Process - :security: NO - :safety: ASIL_B - :status: invalid - - The Feature User shall do xyz to use the feature safely. diff --git a/docs/feature/safety_analysis/dfa.rst b/docs/feature/safety_analysis/dfa.rst deleted file mode 100644 index f65bf3161..000000000 --- a/docs/feature/safety_analysis/dfa.rst +++ /dev/null @@ -1,207 +0,0 @@ -.. - # ******************************************************************************* - # Copyright (c) 2026 Contributors to the Eclipse Foundation - # - # See the NOTICE file(s) distributed with this work for additional - # information regarding copyright ownership. - # - # This program and the accompanying materials are made available under the - # terms of the Apache License Version 2.0 which is available at - # https://www.apache.org/licenses/LICENSE-2.0 - # - # SPDX-License-Identifier: Apache-2.0 - # ******************************************************************************* - - -DFA (Dependent Failure Analysis) -================================ - -.. document:: [Your Feature Name] DFA - :id: doc__feature_example_dfa - :status: draft - :safety: ASIL_B - :security: NO - :realizes: wp__feature_dfa - :tags: template - -.. note:: Use the content of the document to describe e.g. why a fault model is not applicable for the diagram. - -.. attention:: - The above directive must be updated according to your Feature. - - - Modify ``Your Feature Name`` to be your Feature Name - - Modify ``id`` to be your Feature Name in upper snake case preceded by ``doc__`` and succeeded by ``_dfa`` - - Adjust ``status`` to be ``valid`` - - Adjust ``safety`` and ``tags`` according to your needs - -The DFA for the feature [Your Feature Name] is performed. To show evidence that all failure initiators are considered, the applicability has to be filled out in the -following tables. For all applicable failure initiators, the DFA has to be performed. - -Dependent Failure Initiators ----------------------------- - -Shared resources -^^^^^^^^^^^^^^^^ - -The dependent failure initiators related to shared resources are not applicable for the features. The shared resources -will be considered in the platform DFA. - -Communication between the two elements -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -Receiving function is affected by information that is false, lost, sent multiple times, or in the wrong order etc. from the sender. - -.. list-table:: DFA communication between elements - :header-rows: 1 - :widths: 10,20,10,20 - - * - ID - - Violation cause communication between elements - - Applicability - - Rationale - * - CO_01_01 - - Information passed via argument through a function call, or via writing/reading a variable being global to the two software functions (data flow) - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - CO_01_02 - - Data or message corruption / repetition / loss / delay / masquerading or incorrect addressing of information - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - CO_01_03 - - Insertion / sequence of information - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - CO_01_04 - - Corruption of information, inconsistent data - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - CO_01_05 - - Asymmetric information sent from a sender to multiple receivers, so that not all defined receivers have the same information - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - CO_01_06 - - Information from a sender received by only a subset of the receivers - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - CO_01_07 - - Blocking access to a communication channel - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - -Shared information inputs -^^^^^^^^^^^^^^^^^^^^^^^^^ - -Same information input used by multiple functions. - -.. list-table:: DFA shared information inputs - :header-rows: 1 - :widths: 10,20,10,20 - - * - ID - - Violation cause shared information inputs - - Applicability - - Rationale - * - SI_01_02 - - Configuration data - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - SI_01_03 - - Constants, or variables, being global to the two software functions - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - SI_01_04 - - Basic software passes data (read from hardware register and converted into logical information) to two applications software functions - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - SI_01_05 - - Data / function parameter arguments / messages delivered by software function to more than one other function - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - -Unintended impact -^^^^^^^^^^^^^^^^^ - -Unintended impacts to function due to various failures. - -.. list-table:: DFA unintended impact - :header-rows: 1 - :widths: 10,20,10,20 - - * - ID - - Violation cause unintended impact - - Applicability - - Rationale - * - UI_01_01 - - Memory miss-allocation and leaks - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - UI_01_02 - - Read/Write access to memory allocated to another software element - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - UI_01_03 - - Stack/Buffer under-/overflow - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - UI_01_04 - - Deadlocks - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - UI_01_05 - - Livelocks - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - UI_01_06 - - Blocking of execution - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - UI_01_07 - - Incorrect allocation of execution time - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - UI_01_08 - - Incorrect execution flow - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - UI_01_09 - - Incorrect synchronization between software elements - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - UI_01_10 - - CPU time depletion - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - UI_01_11 - - Memory depletion - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - * - UI_01_12 - - Other HW unavailability - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out DFA> - - -DFA -=== - -For all identified applicable failure initiators, the DFA is performed in the following section. - -.. code-block:: rst - - .. feat_saf_dfa:: <Title> - :violates: <Feature architecture> - :id: feat_saf_dfa__<Feature>__<Element descriptor> - :failure_id: <ID from DFA failure initiators :need:`gd_guidl__dfa_failure_initiators`> - :failure_effect: "description of failure effect of the failure initiator on the element" - :mitigated_by: <ID from Feature Requirement | ID from AoU Feature Requirement> - :mitigation_issue: <ID from Issue Tracker> - :sufficient: <yes|no> - :status: <valid|invalid> - - .. note:: Argument is inside the 'content'. Therefore content is mandatory. - -.. attention:: - The above directive must be updated according to your feature DFA. - - - The above "code-block" directive must be updated - - Fill in all the needed information in the <brackets> diff --git a/docs/feature/safety_analysis/fmea.rst b/docs/feature/safety_analysis/fmea.rst deleted file mode 100644 index e8b1ab727..000000000 --- a/docs/feature/safety_analysis/fmea.rst +++ /dev/null @@ -1,136 +0,0 @@ -.. - # ******************************************************************************* - # Copyright (c) 2026 Contributors to the Eclipse Foundation - # - # See the NOTICE file(s) distributed with this work for additional - # information regarding copyright ownership. - # - # This program and the accompanying materials are made available under the - # terms of the Apache License Version 2.0 which is available at - # https://www.apache.org/licenses/LICENSE-2.0 - # - # SPDX-License-Identifier: Apache-2.0 - # ******************************************************************************* - - -FMEA (Failure Modes and Effects Analysis) -========================================= - -.. document:: [Your Feature Name] FMEA - :id: doc__feature_example_fmea - :status: draft - :safety: ASIL_B - :security: NO - :realizes: wp__feature_fmea - :tags: template - -.. note:: Use the content of the document to describe e.g. why a fault model is not applicable for the diagram. - -.. attention:: - The above directive must be updated according to your Feature. - - - Modify ``Your Feature Name`` to be your Feature Name - - Modify ``id`` to be your Feature Name in upper snake case preceded by ``doc__`` and succeeded by ``_fmea`` - - Adjust ``status`` to be ``valid`` - - Adjust ``safety`` and ``tags`` according to your needs - -The FMEA for the feature [Your Feature Name] is performed. To show evidence that all failure initiators are considered, the applicability has to be filled out in the -following tables. For all applicable failure initiators, the FMEA has to be performed. - -Failure Mode List ------------------ - -Fault Models for sequence diagrams - .. list-table:: Fault Models for sequence diagrams - :header-rows: 1 - :widths: 10,20,10,20 - - * - ID - - Failure Mode - - Applicability - - Rationale - * - MF_01_01 - - message is not received (is a subset/more precise description of MF_01_05) - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - * - MF_01_02 - - message received too late (only relevant if delay is a realistic fault) - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - * - MF_01_03 - - message received too early (usually not a problem) - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - * - MF_01_04 - - message not received correctly by all recipients (different messages or messages partly lost). Only relevant if the same message goes to multiple recipients. - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - * - MF_01_05 - - message is corrupted - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - * - MF_01_06 - - message is not sent - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - * - MF_01_07 - - message is unintended sent - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - * - CO_01_01 - - minimum constraint boundary is violated - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - * - CO_01_02 - - maximum constraint boundary is violated - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - * - EX_01_01 - - Process calculates wrong result(s) (is a subset/more precise description of MF_01_05 or MF_01_04). This failure mode is related to the analysis if e.g. internal safety mechanisms are required (level 2 function, plausibility check of the output, …) because of the size / complexity of the feature. - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - * - EX_01_02 - - processing too slow (only relevant if timing is considered) - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - * - EX_01_03 - - processing too fast (only relevant if timing is considered) - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - * - EX_01_04 - - loss of execution - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - * - EX_01_05 - - processing changes to arbitrary process - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - * - EX_01_06 - - processing is not complete (infinite loop) - - <yes | no> - - <Rationale if not applicable, otherwise link to filled out FMEA> - -FMEA ----- -For all identified applicable failure initiators, the FMEA is performed in the following section. - -.. code-block:: rst - - - .. feat_saf_fmea:: <Title> - :violates: <Feature architecture> - :id: feat_saf_fmea__<Feature>__<Element descriptor> - :fault_id: <ID from fault model :need:`gd_guidl__fault_models`> - :failure_effect: "description of failure effect of the fault model on the element" - :mitigated_by: <ID from Feature Requirement | ID from AoU Feature Requirement> - :mitigation_issue: <ID from Issue Tracker> - :sufficient: <yes|no> - :status: <valid|invalid> - - .. note:: Argument is inside the 'content'. Therefore content is mandatory. - -.. attention:: - The above directive must be updated according to your feature FMEA. - - - The above "code-block" directive must be updated - - Fill in all the needed information in the <brackets> diff --git a/docs/feature/safety_planning/index.rst b/docs/feature/safety_planning/index.rst deleted file mode 100644 index 8baf11179..000000000 --- a/docs/feature/safety_planning/index.rst +++ /dev/null @@ -1,155 +0,0 @@ -.. - # ******************************************************************************* - # Copyright (c) 2026 Contributors to the Eclipse Foundation - # - # See the NOTICE file(s) distributed with this work for additional - # information regarding copyright ownership. - # - # This program and the accompanying materials are made available under the - # terms of the Apache License Version 2.0 which is available at - # https://www.apache.org/licenses/LICENSE-2.0 - # - # SPDX-License-Identifier: Apache-2.0 - # ******************************************************************************* - -.. _feature_safety_wp_template: - -Feature Safety Work Products List -################################# - -.. document:: [Your Feature Name] Safety WPs - :id: doc__feature_example_safety_wp - :status: draft - :safety: ASIL_B - :security: NO - :realizes: wp__platform_safety_plan - :tags: template - -.. attention:: - The above directive must be updated according to your Feature. - - - Modify ``Your Feature Name`` to be your Feature Name - - Modify ``id`` to be your Module Name in upper snake case preceded by ``doc__`` and succeeded by ``_safety_wp`` - - Adjust ``status`` to be ``valid`` - - Adjust ``safety`` and ``tags`` according to your needs - -Tailoring -========= - -Additional to the tailoring in the SW platform project as defined in the project's :need:`wp__platform_safety_plan` we define here the additional tailoring on feature level. - -- Excluded for this feature are additionally the following work products (and their related requirements): - - - <work product/requirement> - <Argumentation why it is not needed or replaced by another work product or activity.> - - -Safety Work products List -========================= - -.. list-table:: Feature <feature_name> Work products - :header-rows: 1 - - * - Work product Id - - Link to process - - Process status - - Link to WP - - * - :need:`wp__feat_request` - - :need:`gd_temp__change_feature_request` - - :ndf:`copy('status', need_id='gd_temp__change_feature_request')` - - :need:`doc__feature_name` - - * - :need:`wp__requirements_feat` - - :need:`gd_temp__req_feat_req` - - :ndf:`copy('status', need_id='gd_temp__req_feat_req')` - - :need:`doc__feature_name_requirements` - - * - :need:`wp__requirements_feat_aou` - - :need:`gd_temp__req_aou_req` - - :ndf:`copy('status', need_id='gd_temp__req_aou_req')` - - :need:`doc__feature_name_requirements` - - * - :need:`wp__feature_arch` - - :need:`gd_temp__arch_feature` - - :ndf:`copy('status', need_id='gd_temp__arch_feature')` - - :need:`doc__feature_name_architecture` - - * - :need:`wp__feature_fmea` - - :need:`gd_temp__feat_saf_fmea` - - :ndf:`copy('status', need_id='gd_temp__feat_saf_fmea')` - - :need:`doc__feature_name_fmea` - - * - :need:`wp__feature_dfa` - - :need:`gd_temp__feat_saf_dfa` - - :ndf:`copy('status', need_id='gd_temp__feat_saf_dfa')` - - :need:`doc__feature_name_dfa` - - * - :need:`wp__requirements_inspect` - - :need:`gd_chklst__req_inspection` - - :ndf:`copy('status', need_id='gd_chklst__req_inspection')` - - :need:`doc__feature_name_req_inspection` - - * - :need:`wp__sw_arch_verification` - - :need:`gd_chklst__arch_inspection_checklist` - - :ndf:`copy('status', need_id='gd_chklst__arch_inspection_checklist')` - - :need:`doc__feature_name_arc_inspection` - - * - :need:`wp__verification_feat_int_test` - - :need:`gd_guidl__verification_guide` - - :ndf:`copy('status', need_id='gd_guidl__verification_guide')` - - <Link to WP> - -.. attention:: - The above table must be updated according to your feature safety planning. - - - Fill the work products links - -Feature Safety Package -====================== - -To create the safety package (according to :need:`gd_guidl__saf_package`) the following -documents and work products status have to go to "valid" (after the relevant verification were performed). - -Feature Documents Status ------------------------- - -For all the work product documents the status can be seen by following the "Link to WP". -A summary of the status is also documented in the project's documentation management plan. - -See <add here the section reference to the documentation management plan> - -Feature Requirements Status ---------------------------- - -.. needtable:: - :filter: docname is not None and "feature_example" in docname and "requirements" in docname - :style: table - :types: feat_req - :tags: feature_name - :columns: id;status - :colwidths: 25,25 - :sort: title - -Feature AoU Status ------------------- - -.. needtable:: - :filter: docname is not None and "feature_name" in docname and "requirements" in docname - :style: table - :types: aou_req - :tags: feature_name - :columns: id;status - :colwidths: 25,25 - :sort: title - -Feature Architecture Status ---------------------------- - -.. needtable:: - :filter: docname is not None and "feature_name" in docname and "architecture" in docname - :style: table - :types: feat_arc_sta; feat_arc_dyn - :tags: feature_name - :columns: id;status - :colwidths: 25,25 - :sort: title diff --git a/docs/feature/security_analysis/index.rst b/docs/feature/security_analysis/index.rst deleted file mode 100644 index 5061902df..000000000 --- a/docs/feature/security_analysis/index.rst +++ /dev/null @@ -1,145 +0,0 @@ -.. - # ******************************************************************************* - # Copyright (c) 2026 Contributors to the Eclipse Foundation - # - # See the NOTICE file(s) distributed with this work for additional - # information regarding copyright ownership. - # - # This program and the accompanying materials are made available under the - # terms of the Apache License Version 2.0 which is available at - # https://www.apache.org/licenses/LICENSE-2.0 - # - # SPDX-License-Identifier: Apache-2.0 - # ******************************************************************************* - -.. _feature_security_analysis_template: - -Feature Security Work Products List -################################### - -.. document:: [Your Feature Name] Security WPs - :id: doc__feature_example_security_analysis_wp - :status: draft - :safety: ASIL_B - :security: YES - :realizes: wp__platform_security_plan - :tags: template - -.. attention:: - The above directive must be updated according to your Feature. - - - Modify ``Your Feature Name`` to be your Feature Name - - Modify ``id`` to be your Module Name in upper snake case preceded by ``doc__`` and succeeded by ``_security_wp`` - - Adjust ``status`` to be ``valid`` - - Adjust ``safety`` and ``tags`` according to your needs - -Tailoring -========= - -Additional to the tailoring in the SW platform project as defined in the project's :need:`wp__platform_security_plan` we define here the additional tailoring on feature level. - -- Excluded for this feature are additionally the following work products (and their related requirements): - - - <work product/requirement> - <Argumentation why it is not needed or replaced by another work product or activity.> - - -Security Work products List -=========================== - -.. list-table:: Feature <feature_name> Work products - :header-rows: 1 - - * - Work product Id - - Link to process - - Process status - - Link to WP - - * - :need:`wp__feat_request` - - :need:`gd_temp__change_feature_request` - - :ndf:`copy('status', need_id='gd_temp__change_feature_request')` - - :need:`doc__feature_name` - - * - :need:`wp__requirements_feat` - - :need:`gd_temp__req_feat_req` - - :ndf:`copy('status', need_id='gd_temp__req_feat_req')` - - :need:`doc__feature_name_requirements` - - * - :need:`wp__requirements_feat_aou` - - :need:`gd_temp__req_aou_req` - - :ndf:`copy('status', need_id='gd_temp__req_aou_req')` - - :need:`doc__feature_name_requirements` - - * - :need:`wp__feature_arch` - - :need:`gd_temp__arch_feature` - - :ndf:`copy('status', need_id='gd_temp__arch_feature')` - - :need:`doc__feature_name_architecture` - - * - :need:`wp__requirements_inspect` - - :need:`gd_chklst__req_inspection` - - :ndf:`copy('status', need_id='gd_chklst__req_inspection')` - - :need:`doc__feature_name_req_inspection` - - * - :need:`wp__sw_arch_verification` - - :need:`gd_chklst__arch_inspection_checklist` - - :ndf:`copy('status', need_id='gd_chklst__arch_inspection_checklist')` - - :need:`doc__feature_name_arc_inspection` - - * - :need:`wp__verification_feat_int_test` - - :need:`gd_guidl__verification_guide` - - :ndf:`copy('status', need_id='gd_guidl__verification_guide')` - - <Link to WP> - -.. attention:: - The above table must be updated according to your feature security planning. - - - Fill the work producs links - -Feature Security Package -======================== - -To create the security package (according to :need:`gd_guidl__security_package`) the following -documents and work products status have to go to "valid" (after the relevant verification were performed). - -Feature Documents Status ------------------------- - -For all the work product documents the status can be seen by following the "Link to WP". -A summary of the status is also documented in the project's documentation management plan. - -See <add here the section reference to the documentation management plan> - -Feature Requirements Status ---------------------------- - -.. needtable:: - :filter: docname is not None and "feature_name" in docname and "requirements" in docname - :style: table - :types: feat_req - :tags: feature_name - :columns: id;status - :colwidths: 25,25 - :sort: title - -Feature AoU Status ------------------- - -.. needtable:: - :filter: docname is not None and "feature_name" in docname and "requirements" in docname - :style: table - :types: aou_req - :tags: feature_name - :columns: id;status - :colwidths: 25,25 - :sort: title - -Feature Architecture Status ---------------------------- - -.. needtable:: - :filter: docname is not None and "feature_name" in docname and "architecture" in docname - :style: table - :types: feat_arc_sta; feat_arc_dyn - :tags: feature_name - :columns: id;status - :colwidths: 25,25 - :sort: title diff --git a/docs/feature/security_planning/index.rst b/docs/feature/security_planning/index.rst deleted file mode 100644 index 0271d6d17..000000000 --- a/docs/feature/security_planning/index.rst +++ /dev/null @@ -1,145 +0,0 @@ -.. - # ******************************************************************************* - # Copyright (c) 2026 Contributors to the Eclipse Foundation - # - # See the NOTICE file(s) distributed with this work for additional - # information regarding copyright ownership. - # - # This program and the accompanying materials are made available under the - # terms of the Apache License Version 2.0 which is available at - # https://www.apache.org/licenses/LICENSE-2.0 - # - # SPDX-License-Identifier: Apache-2.0 - # ******************************************************************************* - -.. _feature_security_planning_template: - -Feature Security Work Products List -################################### - -.. document:: [Your Feature Name] Security WPs - :id: doc__feature_example_security_planning_wp - :status: draft - :safety: ASIL_B - :security: YES - :realizes: wp__platform_security_plan - :tags: template - -.. attention:: - The above directive must be updated according to your Feature. - - - Modify ``Your Feature Name`` to be your Feature Name - - Modify ``id`` to be your Module Name in upper snake case preceded by ``doc__`` and succeeded by ``_security_wp`` - - Adjust ``status`` to be ``valid`` - - Adjust ``safety`` and ``tags`` according to your needs - -Tailoring -========= - -Additional to the tailoring in the SW platform project as defined in the project's :need:`wp__platform_security_plan` we define here the additional tailoring on feature level. - -- Excluded for this feature are additionally the following work products (and their related requirements): - - - <work product/requirement> - <Argumentation why it is not needed or replaced by another work product or activity.> - - -Security Work products List -=========================== - -.. list-table:: Feature <feature_name> Work products - :header-rows: 1 - - * - Work product Id - - Link to process - - Process status - - Link to WP - - * - :need:`wp__feat_request` - - :need:`gd_temp__change_feature_request` - - :ndf:`copy('status', need_id='gd_temp__change_feature_request')` - - :need:`doc__feature_name` - - * - :need:`wp__requirements_feat` - - :need:`gd_temp__req_feat_req` - - :ndf:`copy('status', need_id='gd_temp__req_feat_req')` - - :need:`doc__feature_name_requirements` - - * - :need:`wp__requirements_feat_aou` - - :need:`gd_temp__req_aou_req` - - :ndf:`copy('status', need_id='gd_temp__req_aou_req')` - - :need:`doc__feature_name_requirements` - - * - :need:`wp__feature_arch` - - :need:`gd_temp__arch_feature` - - :ndf:`copy('status', need_id='gd_temp__arch_feature')` - - :need:`doc__feature_name_architecture` - - * - :need:`wp__requirements_inspect` - - :need:`gd_chklst__req_inspection` - - :ndf:`copy('status', need_id='gd_chklst__req_inspection')` - - :need:`doc__feature_name_req_inspection` - - * - :need:`wp__sw_arch_verification` - - :need:`gd_chklst__arch_inspection_checklist` - - :ndf:`copy('status', need_id='gd_chklst__arch_inspection_checklist')` - - :need:`doc__feature_name_arc_inspection` - - * - :need:`wp__verification_feat_int_test` - - :need:`gd_guidl__verification_guide` - - :ndf:`copy('status', need_id='gd_guidl__verification_guide')` - - <Link to WP> - -.. attention:: - The above table must be updated according to your feature security planning. - - - Fill the work producs links - -Feature Security Package -======================== - -To create the security package (according to :need:`gd_guidl__security_package`) the following -documents and work products status have to go to "valid" (after the relevant verification were performed). - -Feature Documents Status ------------------------- - -For all the work product documents the status can be seen by following the "Link to WP". -A summary of the status is also documented in the project's documentation management plan. - -See <add here the section reference to the documentation management plan> - -Feature Requirements Status ---------------------------- - -.. needtable:: - :filter: docname is not None and "feature_name" in docname and "requirements" in docname - :style: table - :types: feat_req - :tags: feature_name - :columns: id;status - :colwidths: 25,25 - :sort: title - -Feature AoU Status ------------------- - -.. needtable:: - :filter: docname is not None and "feature_name" in docname and "requirements" in docname - :style: table - :types: aou_req - :tags: feature_name - :columns: id;status - :colwidths: 25,25 - :sort: title - -Feature Architecture Status ---------------------------- - -.. needtable:: - :filter: docname is not None and "feature_name" in docname and "architecture" in docname - :style: table - :types: feat_arc_sta; feat_arc_dyn - :tags: feature_name - :columns: id;status - :colwidths: 25,25 - :sort: title diff --git a/index.rst b/index.rst index 00daff839..167e5a539 100644 --- a/index.rst +++ b/index.rst @@ -21,7 +21,6 @@ Module / Feature Documentation .. toctree:: :maxdepth: 1 - docs/feature/index docs/release/index docs/verification_report/statistics