Skip to content

Commit 3499a00

Browse files
fix remaining review findings and other issues
1 parent 034665f commit 3499a00

File tree

6 files changed

+44
-32
lines changed

6 files changed

+44
-32
lines changed

process/folder_templates/modules/module_name/component_name/docs/architecture/index.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,8 @@ Design Constraints
5959

6060
Rationale Behind Architecture Decomposition
6161
*******************************************
62-
mandatory: a motivation for the decomposition or reason for not further splitting it into sub components.
62+
63+
Mandatory: a motivation for the decomposition or reason for not further splitting it into lower level components.
6364

6465
.. note:: Common decisions across components / cross cutting concepts is at the higher level.
6566

process/process_areas/architecture_design/architecture_concept.rst

Lines changed: 25 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -40,26 +40,26 @@ Use Cases which require architectural information
4040

4141
* *Dependent Failure Analysis*
4242

43-
* the interaction of the components with each other
43+
* the interaction of the components with each other
4444

4545
* *Qualitative safety analysis*
4646

47-
* decomposition of the architectural element under analysis
48-
* interfaces within the architectural element under analysis (including their AoUs)
49-
* usage of the components (interface of the component under analysis itself)
50-
* allocate safety requirements to architectural elements
47+
* decomposition of the architectural element under analysis
48+
* interfaces within the architectural element under analysis (including their AoUs)
49+
* usage of the components (interface of the component under analysis itself)
50+
* allocate safety requirements to architectural elements
5151

5252
#. **Security Analysis**
5353

54-
* TBD
54+
* The architecture created to fulfill the requirements does not introduce possible vulnerabilities
5555

5656
#. **Safety Planning**
5757

5858
* Decomposition into modules and components for the safety planning
5959

60-
#. **Security Planing**
60+
#. **Security Planning**
6161

62-
* TBD
62+
* The architecture serves as the foundational framework for cybersecurity planning by enabling systematic asset identification, threat analysis, attack path modeling, and the structured derivation of cybersecurity goals and requirements
6363

6464
#. **Platform SW Development**
6565

@@ -94,9 +94,9 @@ Requirements based on standards
9494

9595
Additionally also standards specify requirements towards the architectural design:
9696

97-
* ISO26262
98-
* ASPICE
99-
* ISO21434
97+
* :ref:`ISO 26262<standard_iso26262>`
98+
* :ref:`ASPICE<standard_aspice_pam4>`
99+
* :ref:`ISO 21434<standard_isosae21434>`
100100

101101
Their requirements are linked via the guidances.
102102

@@ -137,12 +137,12 @@ The first viewpoint is named as *feature architecture*. It displays the SW modul
137137

138138
{{ draw_feature(need(), needs) }}
139139

140-
In all views the Components which are marked as ASIL_B related are drawn in blue color.
140+
In all views, the components which are marked as ASIL_B related are drawn with red borders.
141141

142142
Dynamic View
143143
------------
144144

145-
The next chart shows the dynamic behavior of the feature including the interaction of its modules with the user. Following scenarios should be included:
145+
The next chart shows the *dynamic behavior* of the feature including the interaction of its modules with the user. Following scenarios should be included:
146146

147147
* important use cases or features: how do components execute them?
148148
* interactions at critical external interfaces: how do components cooperate with users and neighboring components?
@@ -213,11 +213,20 @@ The second viewpoint is named as *component architecture* and describes the impl
213213
{{ draw_component(need(), needs) }}
214214

215215
The *lower level components* are optional and rely on the complexity of the component. Thus there is no graphic representation required for it.
216+
In all views the Components which are marked as ASIL_B related are drawn in red color.
216217

217218
Dynamic View
218219
------------
219220

220-
The dynamic view of the component architecture shows the order of the interactions between the respective components. It is displayed via relations to the interface operations which are provided or used by each component.
221+
The *dynamic view* of the component architecture shows the order of the interactions between the respective lower level components. It is displayed via relations to the interface operations which are provided or used by each component.
222+
223+
Following scenarios should be included:
224+
225+
* important use cases: how do lower level components execute them?
226+
* interactions at critical interfaces: how do lower level components cooperate with users and neighboring lower level components?
227+
* operation and administration: launch, start-up, stop
228+
* successful use cases
229+
* error and exception use cases
221230

222231
.. uml:: _assets/component_architecture_dynamic.puml
223232
:align: center
@@ -257,7 +266,7 @@ Specification of the architectural design
257266
*****************************************
258267

259268
The architectural design shall be modeled with the help of static, dynamic and interfaces at each defined level.
260-
For the description a natural language, diagrams or a semi-formal language *(UML)* shall be used.
269+
For the description a natural language, diagrams or a semi-formal language (*UML*, see :ref:`uml_diagram_selection`) shall be used.
261270

262271
The architectural elements itself including their correlations shall be modeled in a database like approach. Therefore following architectural elements shall be used:
263272

@@ -298,7 +307,7 @@ Dynamic view
298307

299308
The *dynamic view* describes the concrete behavior and interactions of the *building blocks* in form of use cases which were described above.
300309

301-
The dynamic view shall be modeled partly in Sphinx Needs and PlantUML. The components itself shall be generated from the sphinx needs model into the PlantUML diagram. The dynamic relations between the component and the interfaces shall be modeled in PlantUML as it would be a huge effort to model the dynamic behavior in sphinx needs and would not provide any additional benefit.
310+
The dynamic view shall be modeled partly in Sphinx Needs and PlantUML. The components itself shall be used from the sphinx needs model in the PlantUML diagram. The dynamic relations between the component and the interfaces shall be modeled in PlantUML as it would be a huge effort to model the dynamic behavior in sphinx needs and would not provide any additional benefit.
302311

303312
.. list-table:: Definition of the dynamic architectural elements
304313
:header-rows: 1

process/process_areas/architecture_design/architecture_getstrt.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ General Workflow
3535

3636
Architecture Design Workflow
3737

38-
:numref:`architecture_workflow_fig` shows all steps which are required to create an architectural design. In this getting started only a short overview is given. A more detailed description of all the step is provided in the :need:`guideline <gd_guidl__arch_design>`
38+
:numref:`architecture_workflow_fig` shows all steps which are required to create an architectural design. In this getting started only a short overview is given. A more detailed description of all the step is provided in the :need:`guideline <gd_guidl__arch_design>`.
3939

4040
Tooling support
4141
***************
@@ -80,7 +80,7 @@ To generate a UML diagram, use the *needarch* directive in your Sphinx-Needs doc
8080
8181
{{ draw_feature(need(), needs) }}
8282
83-
It's also possible to manually extend the drawing. For an example, check out :ref:`manual_addition_uml`
83+
It's also possible to manually extend the drawing. For an example, check out :ref:`manual_addition_uml`.
8484

8585
Available Drawing Classes
8686
-------------------------
@@ -110,7 +110,7 @@ Here are some excerpts of UML diagrams made from the requirements of that file.
110110
Feature Architecture
111111
^^^^^^^^^^^^^^^^^^^^
112112

113-
The following section is an example, how an `Feature <https://eclipse-score.github.io/score/main/features/index.html>`_ looks like and how the architecture of an Feature is described. Please notice, that in the diagram components with an safety rating to "ASIL_B" is drawn with an red border (see "Component 1" as example).
113+
The following section is an example, how an `Feature <https://eclipse-score.github.io/score/main/features/index.html>`_ looks like and how the architecture of an Feature is described. Please note that components with an "ASIL_B" safety rating are highlighted with red borders in the diagram (e.g., "Component 1").
114114

115115
.. feat_arc_sta:: Feature Getting Started
116116
:id: feat_arc_sta__example_feature__archdes_getstrt

process/process_areas/architecture_design/architecture_roles.rst

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ For architecture design no additional roles need to be defined.
1919

2020
Contributing Roles:
2121

22-
* :need:`Contributor <rl__contributor>`
23-
* :need:`Committer <rl__committer>`
24-
* :need:`Safety Manager <rl__safety_manager>`
25-
* :need:`Security Manager <rl__security_manager>`
22+
* :need:`Contributor <rl__contributor>`
23+
* :need:`Committer <rl__committer>`
24+
* :need:`Safety Manager <rl__safety_manager>`
25+
* :need:`Security Manager <rl__security_manager>`
2626

2727
A detailed overview of the responsibility for the steps of the architecture design process is listed here:
2828

process/process_areas/architecture_design/architecture_workproducts.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ Architecture Workproducts
3737

3838
Component Architecture linked to Component Requirements
3939

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

process/process_areas/architecture_design/guidance/architecture_guideline.rst

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ Architecture Guideline
2222
:status: valid
2323
:complies: std_req__isopas8926__44411, std_req__isopas8926__44412
2424

25-
The guideline focuses on the steps which need to be performed in order to create the architectural design. The concept behind those steps is described in the :need:`[[title]] <doc_concept__arch_process>`
25+
The guideline focuses on the steps which need to be performed in order to create the architectural design. The concept behind those steps is described in the :need:`[[title]] <doc_concept__arch_process>`.
2626

2727
General Hints
2828
=============
@@ -127,12 +127,12 @@ Based on the concept description a model of the feature architecture should be d
127127
- logic_arc_int_op
128128
- logic_arc_int_op_t
129129

130-
The relations of the static elements are described in :numref:`metamodel_architectural_design`.
130+
The relations of the static elements are described in :ref:`metamodel_architectural_design`.
131131

132132
.. note::
133133
For the modeling of the architecture a sphinx extension is available: :ref:`arch_gen_sphinx`
134134

135-
An example for modeling the architecture can be found :ref:`here <definition_architectural_design>`
135+
An example for modeling the architecture can be found :ref:`here <definition_architectural_design>`.
136136

137137
.. _allocate_feature_requirements:
138138

@@ -143,7 +143,7 @@ In the next step the already derived feature requirements shall be allocated to
143143

144144
If needed also additional feature requirements, which may arise due to architectural decisions, should be created and allocated to the feature architecture itself.
145145

146-
Those links shall be established from architectural elements to feature requirements via the attribute *fulfils*
146+
Those links shall be established from architectural elements to feature requirements via the attribute *fulfils*.
147147

148148
.. _review_architectural_design:
149149

@@ -183,7 +183,7 @@ In this step the component requirements shall be derived (see :need:`[[title]] <
183183
Model component architecture
184184
----------------------------
185185

186-
According to the architecture design description the model for the component architecture shall be created. It shall consist of components, real interfaces and real interface operations. Depending on the size of the component it can also be split into multiple (sub) components.
186+
According to the architecture design description the model for the component architecture shall be created. It shall consist of components, real interfaces and real interface operations. Depending on the size of the component, it can also be split into multiple (lower level) components.
187187

188188
.. list-table:: Architectural Elements of the Component Architecture
189189
:header-rows: 1
@@ -202,7 +202,7 @@ According to the architecture design description the model for the component arc
202202
- real_arc_int_op
203203
- real_arc_int_op_t
204204

205-
The relations of the static elements are described in :numref:`metamodel_architectural_design`
205+
The relations of the static elements are described in :ref:`metamodel_architectural_design`.
206206

207207
.. _review_component_architecture:
208208

@@ -221,6 +221,8 @@ For the review process a checklist template is available:
221221

222222
:need:`[[title]] <gd_chklst__arch_inspection_checklist>`
223223

224+
.. _uml_diagram_selection:
225+
224226
UML diagram selection
225227
=====================
226228

@@ -245,4 +247,4 @@ Generally dynamic views are expected in the feature view and the component view
245247
- In case of safety related calls/communication also the error cases shall be displayed (see the "alt" boxes in the examples).
246248
- If there would be only small difference between the feature and the component view, one can be omitted, preferrably the feature view.
247249
- If the described feature or components support multiple use cases (e.g. in different life cycle phases).
248-
these should be described also in multiple dynamic views.
250+
These should be described also in multiple dynamic views.

0 commit comments

Comments
 (0)