Skip to content

Conversation

@PandaeDo
Copy link
Contributor

Initial Version of the process description for implementation.

Fixes #309

@github-actions
Copy link

The created documentation from the pull request is available at: docu-html

@PandaeDo PandaeDo requested a review from hoe-jo February 27, 2025 07:47
@PandaeDo PandaeDo marked this pull request as draft February 28, 2025 12:56
@PandaeDo PandaeDo force-pushed the vohae_detailed_design branch from 82e2575 to 92d3a21 Compare February 28, 2025 14:15
Copy link
Contributor

@aschemmel-tech aschemmel-tech left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As this is "Draft" I only leave comments:

  • see inline plus some general ones:
  • SW development plan document should be mentioned in process and created in this PR
  • Metamodel change for DD artefacts is missing
  • Detailed_design_checklist is missing (may be reused from incubator)

| :id: UNIT_DD_STA__<Component>__<Title>
| :security: <YES|NO>
| :safety: <QM|ASIL_B|ASIL_D>
| :satisfies: <link to component requirement id>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

according to docs/process/general_concepts/_assets/score_building_blocks_meta_model.svg (in #343) we expect "implements" link from DD to Component req and "satisfies" link from DD to Component Architecture.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Implements link added

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

implements link commented out in metamodel, why?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Jochen will check and improve the metamodel in seperate branch

:status: valid
:complies: std_wp__iso26262__software_10, std_req__iso26262__software_29

Implementation of a Unit
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://github.com/eclipse-score/score/blob/main/docs/process/workproducts/index.rst already defines relevant work products: wp__sw_implementation, wp__sw_unit_test, wp__sw_code_inspect -> expectation is to reuse these and remove from the "general" workproducts/index

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reuse of wp__sw_implementation, wp__sw_unit_test. Unclear how to proceed with wp__sw_code_inspect

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now there is a wp__sw_code_design_inspect and a wp__sw_code_inspection - the latter should be deleted.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also need a discussion about wp__sw_static_analysis and wp__sw_dynamic_analysis - what is the real work product? My understanding was that it would be a report generated by a tool - and this would be part of wp__module_sw_verification_report

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the workproducts shall comply to iso 26262 wp and not to req

Workflow Implementation
#######################

.. ? Haben wir einen Workflow für Implementation
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no, we had not, but we need, please create those workflows for all the work procucts of impl. process

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Workflows for Detailed Design an Unit Test created.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is now a workflow for creation of detailed design but not of source code. Likewise there is a code inspection but no DD inspection. Recommend to create a workflow "create implementation" and "verify implementation" with the respective outputs.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That is not sufficient as a guideline. I expect even three guidelines: Detailed Design, Guideline C++, Guideline Rust
And it should define for example for DD: how to fill the template, e.g. which UML diagrams types to use, do we have also Doxygen Style comments for the DD in code (I thought so) ...
And for the C++ guideline: how do we configure the SW, how do we expect comments, how do we do the MISRA checker annotations ...

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Currently I´m working on those hopefully I can push a draft today. The checker annotations highly depend on a tool which we still have to decide for

@masc2023 masc2023 added this to the SCORE Process Audit 3 milestone Mar 5, 2025
@github-actions
Copy link

github-actions bot commented Mar 5, 2025

License Check Results

🚀 The license check preparation job ran successfully.

Status: ⚠️ Needs Review

Click to expand output
2025/03/14 10:20:41 Downloading https://releases.bazel.build/7.4.0/release/bazel-7.4.0-linux-x86_64...
Extracting Bazel installation...
Starting local Bazel server and connecting to it...
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Loading: 
Loading: 0 packages loaded
Loading: 0 packages loaded
    currently loading: docs
Loading: 0 packages loaded
    currently loading: docs
Analyzing: target //docs:license.check.python (1 packages loaded, 0 targets configured)
Analyzing: target //docs:license.check.python (1 packages loaded, 0 targets configured)

Analyzing: target //docs:license.check.python (96 packages loaded, 10 targets configured)

Analyzing: target //docs:license.check.python (124 packages loaded, 426 targets configured)

Analyzing: target //docs:license.check.python (132 packages loaded, 1060 targets configured)

Analyzing: target //docs:license.check.python (144 packages loaded, 2465 targets configured)

Analyzing: target //docs:license.check.python (144 packages loaded, 2465 targets configured)

Analyzing: target //docs:license.check.python (148 packages loaded, 4611 targets configured)

INFO: Analyzed target //docs:license.check.python (149 packages loaded, 4736 targets configured).
[8 / 13] Creating runfiles tree bazel-out/k8-opt-exec-ST-d57f47055a04/bin/tools/dash/formatters/dash_format_converter.runfiles [for tool]; 0s local
[10 / 13] JavaToolchainCompileClasses external/rules_java~/toolchains/platformclasspath_classes; 0s processwrapper-sandbox
[12 / 13] Building docs/license.check.python.jar (); 0s multiplex-worker
INFO: Found 1 target...
Target //docs:license.check.python up-to-date:
  bazel-bin/docs/license.check.python
  bazel-bin/docs/license.check.python.jar
INFO: Elapsed time: 18.210s, Critical Path: 2.41s
INFO: 13 processes: 9 internal, 3 processwrapper-sandbox, 1 worker.
INFO: Build completed successfully, 13 total actions
INFO: Running command line: bazel-bin/docs/license.check.python docs/formatted.txt -review -project automotive.score -repo https://github.com/eclipse-score/score -token otyhZ4eaRYK1tKLNNF-Y
[main] INFO Querying Eclipse Foundation for license data for 69 items.
[main] INFO Found 45 items.
[main] INFO Querying ClearlyDefined for license data for 29 items.
[main] INFO Found 29 items.
[main] INFO License information could not be automatically verified for the following content:
[main] INFO 
[main] INFO pypi/pypi/-/debugpy/1.8.12
[main] INFO pypi/pypi/-/docutils/0.21.2
[main] INFO pypi/pypi/-/matplotlib/3.10.0
[main] INFO pypi/pypi/-/pillow/11.1.0
[main] INFO pypi/pypi/-/pyparsing/3.2.1
[main] INFO 
[main] INFO This content is either not correctly mapped by the system, or requires review.
[main] INFO A review is required for pypi/pypi/-/docutils/0.21.2.
[main] INFO A review request already exists https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues/19880 .
[main] INFO A review is required for pypi/pypi/-/pillow/11.1.0.
[main] INFO A review request already exists https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues/19890 .
[main] INFO A review is required for pypi/pypi/-/pyparsing/3.2.1.
[main] INFO A review request already exists https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues/19891 .
[main] INFO A review is required for pypi/pypi/-/debugpy/1.8.12.
[main] INFO A review request already exists https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues/19903 .
[main] INFO A review is required for pypi/pypi/-/matplotlib/3.10.0.
[main] INFO A review request already exists https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues/19892 .

@vinodreddy-g vinodreddy-g force-pushed the vohae_detailed_design branch from 3777475 to 6486e0c Compare March 5, 2025 15:01
@PandaeDo PandaeDo self-assigned this Mar 6, 2025
@masc2023
Copy link
Contributor

masc2023 commented Mar 7, 2025

@PandaeDo , @vinodreddy-g, can you please open official review and push your branch, at the moment I am not able to build it locally, difficult to review, thank you

@PandaeDo PandaeDo marked this pull request as ready for review March 7, 2025 09:08
@vinodreddy-g vinodreddy-g force-pushed the vohae_detailed_design branch from 3139d90 to 16f4147 Compare March 7, 2025 09:21
@vinodreddy-g
Copy link
Contributor

@PandaeDo , @vinodreddy-g, can you please open official review and push your branch, at the moment I am not able to build it locally, difficult to review, thank you

@masc2023 to build it locally you have clone from here qorix-group:vohae_detailed_design , since creating a branch directly on the main score repo is possible only for the committers.

pahmann added a commit that referenced this pull request Mar 7, 2025
- Includes takeover of unit test workflow from PR #526
- Put static analysis responsibilty to Implementation
- Remove Priority of Test property as all test cases get executed.

Implements: #320
Signed-off-by: Philipp Ahmann <Philipp.Ahmann@de.bosch.com>
@masc2023 masc2023 linked an issue Mar 10, 2025 that may be closed by this pull request
@vinodreddy-g vinodreddy-g force-pushed the vohae_detailed_design branch from 3e41405 to afaa7ab Compare March 10, 2025 15:03
Static Diagrams for Unit Interactions
-------------------------------------

.. unit_dd_sta:: dd example static
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shall we create a process requirement for plotting an an automated figure compared to the architecture?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No , i think creating a static architecture at unit level to reflect a design pattern might be difficult to automate and i think might be better to do it manually to better think of the design.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added as process requirements

-

* - IMPL_02_01
- Is the MISRA report verified for violations which are safety critical?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are all findings of the static code analysis fixed, marked as FP or justified?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Currently I´m working on those hopefully I can push a draft today. The checker annotations highly depend on a tool which we still have to decide for

- Are the manual check <TBD> of MISRA rules done?
-
-
-
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the coverage metrics fulfilled?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Described as discussed.

:satisfies: wf__impl__detailed_design
:complies: std_req__iso26262__software_27

The Unit Design shall archieve the following properties
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For process requirements I would expect something which you could test via tools. So is this requirement maybe something which should end up in a checklist?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Delete it from the Process Requirements and add a question on the checklist.

:satisfies: wf__impl__detailed_design
:complies: std_req__iso26262__software_33

For structual coverage a branch coverage shall be used. Therefore the tool <TBD> is selected.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would keep the process requirements independent of the tool. The tooling we could document as a some kind of decision

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tooling switched to SW Dev Plan.

:satisfies: wf__impl__detailed_design
:complies: std_req__iso26262__software_29

The Unit Design and Implementation shall archieve the following principles
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Move to checklist?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Moved to checklist


We link the unit id to the comments in the code like -

For cpp using doxygen style comments-
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

doxysphinx?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The process description should be free from any tool, the tools used should be part of the Software Development Plan in the folder under platform management plan.


**Purpose**
The purpose of this checklist is to collect the topics to be checked during implementation.
It will be filled out within the github "inspection" pull request.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

again a concrete tool is mentioned, work product to created, e.g. inspection review, how it is done should be part of Software Development Plan

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove the mentioned tool.

@vinodreddy-g vinodreddy-g force-pushed the vohae_detailed_design branch 3 times, most recently from e85fe24 to 404e5f8 Compare March 12, 2025 08:12
@vinodreddy-g vinodreddy-g force-pushed the vohae_detailed_design branch from 404e5f8 to dc8ee58 Compare March 12, 2025 08:21
PandaeDo and others added 4 commits March 12, 2025 09:33
Initial Version of the process description for implementation.

Resolves: eclipse-score#309

Signed-off-by: Volker <volker.haeussler@qorix.ai>
**Purpose**
The purpose of this checklist is to collect the topics to be checked during implementation.

**Checklist**
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please align formatting of the table with other checklists (e.g. for architecture)

-
-
* - IMPL_04_01
- Are the <TBD> manual checks that are derived from the c++ coding guideline done?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please create ticket and add link here.

-
-
* - IMPL_04_01
- Are the <TBD> manual checks that are derived from the c++ coding guideline done?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

do we also need to refer to Rust language here? Do we have different checklst steps for C++ and Rust?

@PandaeDo PandaeDo force-pushed the vohae_detailed_design branch from dc8ee58 to debf410 Compare March 13, 2025 15:35
:input: wp__platform_mgmt
:output: wp__sw_development_plan
:contains: gd_temp__software_development_plan
:contains: doc__software_development_plan
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please remove, contains is only concept or getting starte, doc__ links only from do__ to the wp

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

compare meta model in introduction

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rechanged it to the Template


**Create/Maintain Software Development Plan**
Adaption of the Software Development Plan to the Projekt by using the :need:`gd_temp__software_development_plan`.
Adaption of the Software Development Plan to the Projekt by using the :need:`doc__software_development_plan`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

template was correct, the doc_software_development_plan is already the concrete plan, not a template

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rechanged to Template after I created the Template

Copy link
Contributor

@masc2023 masc2023 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

see my comments

@PandaeDo PandaeDo force-pushed the vohae_detailed_design branch from 833c8d2 to fa0bcfe Compare March 14, 2025 07:21
masc2023
masc2023 previously approved these changes Mar 14, 2025
Copy link
Contributor

@masc2023 masc2023 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Major concerns have been resolved

aschemmel-tech
aschemmel-tech previously approved these changes Mar 14, 2025
Copy link
Contributor

@aschemmel-tech aschemmel-tech left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good as initial version

vinodreddy-g
vinodreddy-g previously approved these changes Mar 14, 2025
Template
---------

The detailded design template :need:`[[title]] <gd_temp__detailed_design>` shall be used to ensure that the correct syntax and attribute definition is used.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The detailded design template :need:`[[title]] <gd_temp__detailed_design>` shall be used to ensure that the correct syntax and attribute definition is used.
The detailed design template :need:`[[title]] <gd_temp__detailed_design>` shall be used to ensure that the correct syntax and attribute definition is used.

Creation of a detailed design by using the Template :need:`[[title]] <gd_temp__detailed_design>`.
The detailed design shall be so exact, that test and implementation can be run simultaneously.
The generated code and tests shall run the checks locally before commiting/pushing changes to a
branch to avoid unnecessary cycles. The checks can be executed by <TBD>. Use the explenations of
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
branch to avoid unnecessary cycles. The checks can be executed by <TBD>. Use the explenations of
branch to avoid unnecessary cycles. The checks can be executed by <TBD>. Use the explanations of

branch to avoid unnecessary cycles. The checks can be executed by <TBD>. Use the explenations of
the tools.

In the CI/CDcd pipeline the checks <TBD> are executed. Use the explenations in the pipeline.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
In the CI/CDcd pipeline the checks <TBD> are executed. Use the explenations in the pipeline.
In the CI/CD pipeline the checks <TBD> are executed. Use the explanations in the pipeline.

Static Diagrams for Unit Interactions
-------------------------------------

.. unit_dd_sta:: dd example static
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No , i think creating a static architecture at unit level to reflect a design pattern might be difficult to automate and i think might be better to do it manually to better think of the design.

aschemmel-tech
aschemmel-tech previously approved these changes Mar 14, 2025
Copy link
Contributor

@aschemmel-tech aschemmel-tech left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

still fine

Fixed copyright header

Signed-off-by: Dan Calavrezo <dan.calavrezo.ext@qorix.ai>
Copy link
Contributor

@aschemmel-tech aschemmel-tech left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fine still

@vinodreddy-g vinodreddy-g merged commit 1d253a0 into eclipse-score:main Mar 14, 2025
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

Epic: (Initial) Processes Detailed Design, Implementation Improvement: Document Implementation process

8 participants