Component Architecture Template#

This page contains the component architecture template snippets that belong to the module template repository.

Overview#

Use these snippets as the starting point for documenting component architecture in the module template.

Static Architecture#

.. comp:: Component Name
   :id: comp__component_name_template
   :security: YES
   :safety: ASIL_B
   :status: invalid
   :implements: logic_arc_int__feature_name__interface_name1
   :consists_of: comp__component_name_internal_1, comp__component_name_internal_2, comp__component_name_internal_3
   :belongs_to: feat__feature_name

.. comp_arc_sta:: Component Name (Static View)
   :id: comp_arc_sta__component_name__static_view
   :security: YES
   :safety: ASIL_B
   :status: invalid
   :belongs_to: comp__component_name_template
   :uses: logic_arc_int__feature_name__interface_name1
   :fulfils: comp_req__component_name__some_title

   .. needarch::
      :scale: 50
      :align: center

      {{ draw_component(need(), needs) }}

Dynamic Architecture#

.. comp_arc_dyn:: Dynamic View
   :id: comp_arc_dyn__component_name__dynamic_view
   :security: YES
   :safety: ASIL_B
   :status: invalid
   :belongs_to: comp__component_name_template
   :fulfils: comp_req__component_name__some_title

   Put here a sequence diagram

Component Interface#

The rendered component-interface example is maintained here so the module template repository owns the live real_arc_int example.

Component Interface 1
status: valid
security: NO
safety: ASIL_B
language: cpp

Internal Components#

.. comp_arc_sta:: Component Name Static View
   :id: comp_arc_sta__component_name__2
   :status: invalid
   :safety: ASIL_B
   :security: YES
   :fulfils: comp_req__component_name__some_title
   :belongs_to: comp__component_name_template

   No architecture but detailed design

.. comp:: Internal Component 1
   :id: comp__component_name_internal_1
   :status: invalid
   :safety: ASIL_B
   :security: YES
   :belongs_to: feat__feature_name

.. comp:: Internal Component 2
   :id: comp__component_name_internal_2
   :status: invalid
   :safety: ASIL_B
   :security: YES
   :belongs_to: feat__feature_name

.. comp:: Internal Component 3
   :id: comp__component_name_internal_3
   :status: invalid
   :safety: ASIL_B
   :security: YES
   :belongs_to: feat__feature_name