Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -50,4 +50,4 @@ bazel_dep(name = "buildifier_prebuilt", version = "8.2.0.2")
###############################################################################
bazel_dep(name = "aspect_rules_lint", version = "1.5.3")
bazel_dep(name = "score_tooling", version = "1.0.2")
bazel_dep(name = "score_docs_as_code", version = "2.3.1")
bazel_dep(name = "score_docs_as_code", version = "2.3.2")
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,8 @@ The first viewpoint is named as *feature architecture*. It displays the SW Compo

In all views, the components which are marked as ASIL_B related are drawn with red borders.

See :ref:`uml_diagram_selection` in guideline for further information about the UML diagram selection for static architecture.

Dynamic View
------------

Expand All @@ -156,6 +158,8 @@ This view shows the *dynamic behavior* of the feature including the interaction
:align: center
:caption: Dynamic Feature Architecture

See :ref:`uml_diagram_selection` in guideline for further information about the UML diagram selection and usage for dynamic architecture.

Interface View
--------------

Expand All @@ -181,7 +185,7 @@ A SW Module represents a outcome of an component or a set of components realizin

On this level also a view shall be defined which is called *Module View*. It represents the allocation of components into modules and displays the dependencies between the single modules. In this view also cyclic dependencies between modules can be identified.

.. mod_view_sta:: Module 1 Static View
.. mod_view_sta:: Module 1 Static View concept
:id: mod_view_sta__example_feature__archcon_1
:includes: comp__component_example_1

Expand Down Expand Up @@ -486,7 +490,7 @@ The following section is an example, how an `Feature <https://eclipse-score.gith
:includes: logic_arc_int__feature_name__interface_name
:consists_of: comp__component_name

.. feat_arc_sta:: Feature Static Architecture - Getting Started Example
.. feat_arc_sta:: Feature Static Architecture View - Rendered Example
:id: feat_arc_sta__example_feature__archdes_getstrt
:security: YES
:safety: QM
Expand Down Expand Up @@ -529,12 +533,12 @@ Component Architecture

The following section is an example, how an component looks like and how the detail design of an component is described. Please note that components with an "ASIL_B" safety rating are highlighted with red borders in the diagram (e.g., "Component 1").

.. comp_arc_sta:: Component 1 Static View
.. comp_arc_sta:: Component Static View - Rendered Example
:id: comp_arc_sta__example_feature__component_getstrt
:status: valid
:safety: ASIL_B
:security: NO
:uses: logic_arc_int__example_feature__archex_logical_interface_3
:includes: comp__archex_sub_component_1, comp__archex_sub_component_2, comp__archex_sub_component_3
:fulfils: comp_req__example_feature__archex_example_req

.. needarch::
Expand All @@ -545,12 +549,12 @@ The following section is an example, how an component looks like and how the det

.. code-block:: rst

.. comp_arc_sta:: Static View - Component 1
.. comp_arc_sta:: Static View - Rendered Example
:id: comp_arc_sta__example_feature__component_getstrt
:status: valid
:safety: ASIL_B
:security: NO
:uses: real_arc_int__archdes_component_interface_3
:includes: logic_arc_int__example_feature__archex_logical_interface_1, comp__archex_sub_component_1, comp__archex_sub_component_2, comp__archex_sub_component_3
:fulfils: comp_req__example_feature__archex_example_req

.. needarch::
Expand Down Expand Up @@ -581,6 +585,32 @@ Therefore the *needarch* directive needs to be extended with the attribute ``:sa

Besides storing the output it is also possible to display the generated PlantUML text below the rendered Figure. Therefore the *needarch* directive needs to be extended with the attribute ``:debug:``

.. code-block:: rst

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

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

Debug example for component architecture:

.. comp_arc_sta:: Component Static View - Rendered Debug Example
:id: comp_arc_sta__example_feature__component_getstrt_debug
:status: valid
:safety: ASIL_B
:security: NO
:includes:
:fulfils: comp_req__example_feature__archex_example_req

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

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

.. _manual_addition_uml:

Manual Addition to the UML
Expand All @@ -592,7 +622,7 @@ To make *needuml* work we have to replace the *need()* call with a different fun

.. code-block:: rst

.. comp_arc_sta:: Component Get Started Manually Edited
.. comp_arc_sta:: Component Architecture Static View - Rendered Example Manually Edited
:id: comp_arc_sta__example_feature__component_manual_getstrt
:status: valid
:safety: ASIL_B
Expand All @@ -607,7 +637,7 @@ To make *needuml* work we have to replace the *need()* call with a different fun
}
CM -> LI1: EXTRA_LINKAGE_MANUALLY_ADDED

.. comp_arc_sta:: Component Static View - Get Started Manually Edited
.. comp_arc_sta:: Component Architecture Static View - Rendered Example Manually Edited
:id: comp_arc_sta__example_feature__component_manual_getstrt
:status: valid
:safety: ASIL_B
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Architecture Work Products
* Dynamic view (UML) - Sequences of component interactions and state diagrams
* Interface view (Sphinx Needs) - Overview of used and provided interfaces

Technical concept on platform level.
Technical concept on platform or feature level.

.. workproduct:: Component Architecture
:id: wp__component_arch
Expand All @@ -39,7 +39,7 @@ Architecture Work Products

Component Architecture linked to Component Requirements

* Static view (Sphinx Needs) - Component interfaces (to outside of Component) and interfaces between own (lower level) components
* Static view (Sphinx Needs) - Component interfaces (to outside of component) and interfaces between own (lower level) components
* Dynamic view (UML) - Sequences of components interactions and components states
* Interface view (Sphinx Needs) - Overview of used and provided interfaces

Expand All @@ -52,4 +52,4 @@ Architecture Work Products
:tags: doc_lifecycle_model_2

Depends on architecture guideline and tooling.
May include several methods like inspection, modelling ... Which are selected in SW Verification Plan.
May include several methods like inspection, modelling, ... which are selected in projects SW Verification Plan.
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ Feature Architecture File
:security: YES
:safety: QM
:status: valid
:includes: logic_arc_int__example_feature__archex_logical_interface_1, logic_arc_int__example_feature__archex_logical_interface_2
:includes: logic_arc_int__example_feature__archex_logical_interface_1, logic_arc_int__example_feature__archex_logical_interface_2, logic_arc_int__example_feature__archex_logical_interface_3
:consists_of: comp__component_example_1

This is the example feature.
Expand All @@ -37,7 +37,7 @@ Feature Architecture File
:security: YES
:safety: QM
:status: valid
:includes: logic_arc_int__example_feature__archex_logical_interface_1, logic_arc_int__example_feature__archex_logical_interface_2
:includes: logic_arc_int__example_feature__archex_logical_interface_1, logic_arc_int__example_feature__archex_logical_interface_2, logic_arc_int__example_feature__archex_logical_interface_3
:fulfils: feat_req__example_feature__archdes_example_req

.. needarch::
Expand Down Expand Up @@ -151,23 +151,32 @@ Module Viewpoint
:security: YES
:safety: ASIL_B
:status: valid
:includes: comp__component_example_1
:includes: comp__component_example_1, comp__component_example_2

This is Module 1.

.. mod_view_sta:: Module 1
.. mod_view_sta:: Module 1 Static View
:id: mod_view_sta__example_feature__archex_1
:includes: comp__component_example_1
:includes: comp__component_example_1, comp__component_example_2

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

{{ draw_module(need(), needs) }}

.. mod_view_sta:: Module 2
.. mod:: Module 2
:id: mod__example_feature_archex_module_2
:security: YES
:safety: ASIL_B
:status: valid
:includes: comp__component_example_3

This is Module 2.

.. mod_view_sta:: Module 2 Static View
:id: mod_view_sta__example_feature__archex_2
:includes: comp__archex_sub_component_3
:includes: comp__component_example_3

.. needarch::
:scale: 50
Expand All @@ -183,31 +192,35 @@ Component Architecure File(s)
:security: YES
:safety: ASIL_B
:status: invalid
:implements: logic_arc_int__example_feature__archex_logical_interface_1, logic_arc_int__example_feature__archex_logical_interface_2, logic_arc_int__example_feature__archex_logical_interface_3
:implements: logic_arc_int__example_feature__archex_logical_interface_1
:consists_of: comp__archex_sub_component_1, comp__archex_sub_component_2, comp__archex_sub_component_3

Example Component 1 description.

.. comp_arc_sta:: Component 1 Static View
:id: comp_arc_sta__example_feature__archdes_component_1
:status: valid
.. comp:: Component 2
:id: comp__component_example_2
:security: YES
:safety: ASIL_B
:security: NO
:uses: logic_arc_int__example_feature__archex_logical_interface_1
:fulfils: comp_req__example_feature__archex_example_req
:status: invalid
:implements: logic_arc_int__example_feature__archex_logical_interface_2

.. needarch::
:scale: 50
:align: center
Example Component 2 description.

{{ draw_component(need(), needs) }}
.. comp:: Component 3
:id: comp__component_example_3
:security: YES
:safety: ASIL_B
:status: invalid
:implements: logic_arc_int__example_feature__archex_logical_interface_3

Example Component 3 description.

.. comp_arc_sta:: Component 3 Static View
:id: comp_arc_sta__example_feature__archdes_component_3
.. comp_arc_sta:: Component 1 Static View
:id: comp_arc_sta__example_feature__archdes_component_1
:status: valid
:safety: QM
:safety: ASIL_B
:security: NO
:uses: logic_arc_int__example_feature__archex_logical_interface_1, logic_arc_int__example_feature__archex_logical_interface_2, logic_arc_int__example_feature__archex_logical_interface_3
:includes: comp__archex_sub_component_1, comp__archex_sub_component_2, comp__archex_sub_component_3
:fulfils: comp_req__example_feature__archex_example_req

.. needarch::
Expand All @@ -223,26 +236,27 @@ Component Architecure File(s)
:status: valid
:safety: ASIL_B
:security: NO
:uses: logic_arc_int__example_feature__archex_logical_interface_3
:implements: logic_arc_int__example_feature__archex_logical_interface_2
:uses: logic_arc_int__example_feature__archex_logical_interface_2
:implements: logic_arc_int__example_feature__archex_logical_interface_1

.. comp:: Lower Level Component 2
:id: comp__archex_sub_component_2
:status: valid
:safety: ASIL_B
:security: NO
:uses: logic_arc_int__example_feature__archex_logical_interface_3
:implements: logic_arc_int__example_feature__archex_logical_interface_1
:uses: logic_arc_int__example_feature__archex_logical_interface_2
:implements: logic_arc_int__example_feature__archex_logical_interface_2

.. comp:: Lower Level Component 3
:id: comp__archex_sub_component_3
:status: valid
:safety: QM
:security: NO
:implements: logic_arc_int__example_feature__archex_logical_interface_3

..
Requirements
Requierements for the Example
=============================

.. Requirements

.. stkh_req:: Example Stkh Req
:id: stkh_req__example_feature__archdes_example_req
Expand Down
Loading