Skip to content
Open
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
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ In each DR file, include the following sections:
:id: dec_rec__<Platform|Feature|Component>__<Title>, dec_rec__<arch|proc|strat|infra|int>__<slug>
:status: <proposed|accepted|deprecated|rejected|superseded>
:tracking: <link to GitHub issue URL, required once a DR is confirmed>
:version: 1
:version: 2
:affects: <link>

<Description>
Expand Down Expand Up @@ -77,6 +77,16 @@ In each DR file, include the following sections:
------------------------------
<your text>


Impact Analysis (Optional)
--------------------------
The impact analysis template can be used to detail out the impact on the platform
and if applicable, especially for safety/security.
Copy the relevant parts from the impact analysis template and fill it out.
The impact analysis template is available in [1].

The impact analysis template is available here [1]_.

.. attention::
The above directive must be updated according to your decision record.

Expand All @@ -90,3 +100,5 @@ In each DR file, include the following sections:
- Add ``Context`` to describe the issue or motivation behind this decision or change (mandatory)
- Add ``decision`` to detail the proposed change or decision (mandatory)
- Add ``consequences`` to explain the impact of this change, including what becomes easier or more difficult (recommended)

.. [1] The impact analysis template is available here: :ref:`Impact Analysis Template <chm_impact_analysis_templates>`
Comment thread
qor-lb marked this conversation as resolved.
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
.. document:: [Your Feature Name]
:id: doc__feature_name
:status: draft
:version: 1
:version: 2
:safety: ASIL_B
:security: YES
:realizes: wp__feat_request[version==1]
Expand Down Expand Up @@ -77,16 +77,6 @@ Motivation
Motivation may based on criteria as resource requirements, scheduling issues, risks, benefits, etc.
CRs submissions without sufficient motivation may be rejected.

Rationale
=========

[Describe why particular design decisions were made.]

.. note::
The rationale should provide evidence of consensus within the community and discuss important objections or concerns raised during discussion.
For the documentation of the decision the :need:`gd_temp__change_decision_record` can be used.


Specification
=============

Expand All @@ -97,61 +87,6 @@ Specification
A CR shall specify the stakeholder requirements as part of our platform/project.
Thereby the :need:`rl__project_lead` will approve these requirements as part of accepting the CR (e.g. merging the PR with the CR).

Backwards Compatibility
=======================

[Describe potential impact (especially including safety and security impacts) and severity on pre-existing platform/project elements.]


Security Impact
===============

[How could a malicious user take advantage of this new/modified feature?]

.. note::
If there are security concerns in relation to the CR, those concerns should be explicitly written out to make sure reviewers of the CR are aware of them.

Which security requirements are affected or has to be changed?
Could the new/modified feature enable new threat scenarios?
Could the new/modified feature enable new attack paths?
Could the new/modified feature impact functional safety?
If applicable, which additional security measures must be implemented to mitigate the risk?

.. note::
Use Trust Boundary, Defense in Depth Analysis and/or Security Software Critically Analysis,
Vulnerability Analysis.
[Methods will be defined later in Process area Security Analysis]
These analyses may not be available at the time of creation of the feature (request) but content will be improved iteratively.

Safety Impact
=============

[How could the safety be impacted by the new/modified feature?]

.. note::
If there are safety concerns in relation to the CR, those concerns should be explicitly written out to make sure reviewers of the CR are aware of them.
Link here to the filled out :need:`Impact Analysis Template <gd_temp__change_impact_analysis>` or copy the template in this chapter.

Which safety requirements are affected or has to be changed?
Could the new/modified feature be a potential common cause or cascading failure initiator?
If applicable, which additional safety measures must be implemented to mitigate the risk?

.. note::
Use Dependency Failure Analysis and/or Safety Software Critically Analysis.
[Methods will be defined later in Process area Safety Analysis]
These analyses may not be available at the time of creation of the feature (request) but content will be improved iteratively.

For new feature contributions:

[What is the expected ASIL level?]


License Impact
==============

[How could the copyright impacted by the license of the new contribution?]


How to Teach This
=================

Expand All @@ -160,7 +95,6 @@ How to Teach This
.. note::
For a CR that adds new functionality or changes behaviour, it is helpful to include a section on how to teach users, new and experienced, how to apply the CR to their work.


Rejected Ideas
==============

Expand All @@ -172,16 +106,6 @@ Rejected Ideas
This both helps record the thought process behind the final version of the CR as well as preventing people from bringing up the same rejected idea again in subsequent discussions.
In a way this section can be thought of as a breakout section of the Rationale section that is focused specifically on why certain ideas were not ultimately pursued.
Comment thread
qor-lb marked this conversation as resolved.

Open Issues
===========

[Any points that are still being decided/discussed.]

.. note::
While a CR is in draft, ideas can come up which warrant further discussion.
Those ideas should be recorded so people know that they are being thought about but do not have a concrete resolution.
This helps make sure all issues required for the CR to be ready for consideration are complete and reduces people duplicating prior discussion.

Footnotes
=========

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Concept Description
.. doc_concept:: Concept Description
:id: doc_concept__change_process
:status: valid
:version: 1
:version: 2
:tags: change_management

In this section a concept for the Change Management will be discussed. Inputs for this concepts
Expand All @@ -33,6 +33,9 @@ As features are built-up by components a Change Request is also needed to add ne
components or to modify the scope of existing components.
All statements here for components are also valid for *SW Modules*.

As a rule of thumb, a Change Request is needed, if feature or component requirements
are changed.

Inputs
******

Expand Down Expand Up @@ -95,12 +98,14 @@ Activities for a Change Request

Creation of the Change Request
==============================
Use the content :ref:`Feature Request Template <chm_feature_templates>` or
:ref:`Component Request Template <chm_component_templates>` to create a Change Request.

Use the content :ref:`Decision Record Template <decision_record_template>` to create a
Change Request.
Comment on lines +102 to +103

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Not every change should/must end up in a decision record. I tried to also document this in the CMP in score. The DR/FEP path should be only for "bigger"/"major" changes - because this path also takes a lot more time to find agreement. We should still have a shorter path for smaller changes that don't need that level of alignment.

Can we somehow separate the information that has to be available in a change request from the format? That way we could then define in the CMP in score that major changes persist this information in a DR via the FEP and that smaller changes can still move forward if this information is only available in a issue without needing a prior DR?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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


In case safety or security is affected, in addition the impact analysis template
: :ref:`Impact Analysis Template <chm_impact_analysis_templates>` can be used to detail
out the impact on safety/security.
out the impact on safety/security. Copy the relevant parts from the impact analysis
template into the decision record and fill it out.

The impact analysis tool (:need:`gd_req__change_tool_impact_analysis`) can support to
here to identify the affected work products.
Expand Down Expand Up @@ -131,6 +136,10 @@ monitored.

The Change Request implementation must be tracked until it is closed.

Use the content :ref:`Feature Request Template <chm_feature_templates>` or
:ref:`Component Request Template <chm_component_templates>` to document the implementation
of a new feature or component or the modification of an existing feature or component.

The status of the Change Request must be communicated by the
:need:`Project Lead <rl__project_lead>` (for feature requests) and the lead of the
:need:`Delivery Team <rl__delivery_team>` (for component requests) until
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Getting Started
.. doc_getstrt:: Getting Started on Change Management
:id: doc_getstrt__change_process
:status: valid
:version: 1
:version: 2
:tags: change_management

This document describes the steps to create a change request, and further to analyze,
Expand All @@ -32,9 +32,11 @@ Examples for change requests:
* New component for parsing a protocol introduced (component request).
* API change for an existing component (component modification).

Therefore guidelines :need:`gd_temp__change_feature_request` and

Therefore guideline :need:`gd_temp__change_decision_record` is available. This guideline
is complemented by the :need:`gd_temp__change_feature_request`,
:need:`gd_temp__change_component_request`, :need:`gd_guidl__change_change_request` and
a :need:`doc_concept__change_process` are available.
:need:`doc_concept__change_process`.

General Workflow
****************
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,12 +33,12 @@ For a detailed explanation of workflows and their role within the process model,
wp__cmpt_request[version==1]
:output: wp__issue_track_system[version==1], wp__feat_request[version==1], wp__cmpt_request[version==1]
:contains: gd_guidl__change_change_request[version==1],
gd_temp__change_feature_request[version==1],
gd_temp__change_feature_request[version==2],
gd_temp__change_component_request[version==1],
gd_temp__change_impact_analysis[version==1],
gd_temp__change_impact_analysis[version==2],
gd_temp__component_classification[version==1],
gd_temp__change_decision_record[version==1]
:has: doc_concept__change_process[version==1], doc_getstrt__change_process[version==1]
gd_temp__change_decision_record[version==2]
:has: doc_concept__change_process[version==2], doc_getstrt__change_process[version==2]

The Change Request is created.

Expand All @@ -61,12 +61,12 @@ For a detailed explanation of workflows and their role within the process model,
wp__cmpt_request[version==1]
:output: wp__issue_track_system[version==1], wp__feat_request[version==1], wp__cmpt_request[version==1]
:contains: gd_guidl__change_change_request[version==1],
gd_temp__change_feature_request[version==1],
gd_temp__change_feature_request[version==2],
gd_temp__change_component_request[version==1],
gd_temp__change_impact_analysis[version==1],
gd_temp__change_impact_analysis[version==2],
gd_temp__component_classification[version==1],
gd_temp__change_decision_record[version==1]
:has: doc_concept__change_process[version==1], doc_getstrt__change_process[version==1]
gd_temp__change_decision_record[version==2]
:has: doc_concept__change_process[version==2], doc_getstrt__change_process[version==2]

The Change Request is analyzed.

Expand All @@ -90,12 +90,12 @@ For a detailed explanation of workflows and their role within the process model,
:input: wp__issue_track_system[version==1], wp__feat_request[version==1], wp__cmpt_request[version==1]
:output: wp__issue_track_system[version==1], wp__feat_request[version==1], wp__cmpt_request[version==1]
:contains: gd_guidl__change_change_request[version==1],
gd_temp__change_feature_request[version==1],
gd_temp__change_feature_request[version==2],
gd_temp__change_component_request[version==1],
gd_temp__change_impact_analysis[version==1],
gd_temp__change_impact_analysis[version==2],
gd_temp__component_classification[version==1],
gd_temp__change_decision_record[version==1]
:has: doc_concept__change_process[version==1], doc_getstrt__change_process[version==1]
gd_temp__change_decision_record[version==2]
:has: doc_concept__change_process[version==2], doc_getstrt__change_process[version==2]

The Change Request is implemented and monitored.

Expand Down Expand Up @@ -129,12 +129,12 @@ For a detailed explanation of workflows and their role within the process model,
:input: wp__issue_track_system[version==1], wp__feat_request[version==1], wp__cmpt_request[version==1]
:output: wp__issue_track_system[version==1], wp__feat_request[version==1], wp__cmpt_request[version==1]
:contains: gd_guidl__change_change_request[version==1],
gd_temp__change_feature_request[version==1],
gd_temp__change_feature_request[version==2],
gd_temp__change_component_request[version==1],
gd_temp__change_impact_analysis[version==1],
gd_temp__change_impact_analysis[version==2],
gd_temp__component_classification[version==1],
gd_temp__change_decision_record[version==1]
:has: doc_concept__change_process[version==1], doc_getstrt__change_process[version==1]
gd_temp__change_decision_record[version==2]
:has: doc_concept__change_process[version==2], doc_getstrt__change_process[version==2]

The Change Request is closed.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Decision Record Template
.. gd_temp:: Decision Record Template
:id: gd_temp__change_decision_record
:status: valid
:version: 1
:version: 2
:complies: std_req__aspice_40__SWE-2-BP3[version==1], std_req__aspice_40__iic-17-00[version==1]

For the content see here: :ref:`decision_record_template`.
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Feature Template
.. gd_temp:: Feature Request Template
:id: gd_temp__change_feature_request
:status: valid
:version: 1
:version: 2
:complies: std_req__aspice_40__SUP-10-BP1[version==1],
std_req__aspice_40__SUP-10-BP2[version==1],
std_req__aspice_40__SUP-10-BP3[version==1],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Impact Analysis Template
.. gd_temp:: Impact Analysis Template
:id: gd_temp__change_impact_analysis
:status: valid
:version: 1
:version: 2
:complies: std_req__aspice_40__SUP-10-BP2[version==1],
std_req__aspice_40__iic-18-57[version==1],
std_req__iso26262__support_8431[version==1],
Expand Down Expand Up @@ -72,16 +72,14 @@ Estimates for Realization
A draft realization plan may support the realization proposal.


Potential Impact on the platform
--------------------------------


Potential Impact on Security
-----------------------------

Add the potential impact in the chapter Security Impact of the concerned Feature Request
(compare :need:`Feature Request Template <gd_temp__change_feature_request>`) or Component Request
(compare :need:`Component Request Template <gd_temp__change_component_request>`).


Potential Impact on Safety
--------------------------

Add the potential impact in the chapter Safety Impact of the concerned Feature Request
(compare :need:`Feature Request Template <gd_temp__change_feature_request>`) or Component Request
(compare :need:`Component Request Template <gd_temp__change_component_request>`).
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@ Safety Management Workflows
wp__sw_component_class[version==1],
wp__safety_tailoring[version==1]
:output: wp__issue_track_system[version==1]
:contains: gd_temp__change_component_request[version==1], gd_temp__change_decision_record[version==1], gd_temp__change_impact_analysis[version==1]
:contains: gd_temp__change_component_request[version==1], gd_temp__change_decision_record[version==2], gd_temp__change_impact_analysis[version==2]
:has: doc_concept__safety_management_process[version==1], doc_getstrt__safety_management_process[version==1]

| In accordance with ISO 26262-2:2018 section 5.2.2.3 d/e (Impact Analysis), the project implements a dedicated workflow for analyzing change requests.
Expand Down
Loading