Skip to content

Commit f58356a

Browse files
authored
Merge pull request #755 from eclipse-score/masc2023_add_prm
Masc2023 add prm
2 parents b35c741 + 69a268c commit f58356a

21 files changed

+1259
-27
lines changed
Loading

Diff for: docs/platform_management_plan/_assets/score_problem_resolution_workflow_simple.drawio.svg

+4
Loading

Diff for: docs/platform_management_plan/change_management.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ description.
130130
:need:`[[title]] <gd_req__change__attr_impact_security>` is defined in the linked PR or part of the
131131
description.
132132

133-
:need:`[[title]] <gd_req__change__types>` is defined by label of a ISSUE and part of the
133+
:need:`[[title]] <gd_req__change__attr_types>` is defined by label of a ISSUE and part of the
134134
description.
135135

136136
:need:`[[title]] <gd_req__change__attr_affected_wp>` is defined in the linked PR or part of the

Diff for: docs/platform_management_plan/problem_resolution.rst

+252-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
..
22
# *******************************************************************************
3-
# Copyright (c) 2024 Contributors to the Eclipse Foundation
3+
# Copyright (c) 2025 Contributors to the Eclipse Foundation
44
#
55
# See the NOTICE file(s) distributed with this work for additional
66
# information regarding copyright ownership.
@@ -12,14 +12,262 @@
1212
# SPDX-License-Identifier: Apache-2.0
1313
# *******************************************************************************
1414
15-
Problem Resolution
16-
------------------------
15+
.. document:: Problem Resolution Plan
16+
:id: doc__platform_problem_resolution_plan
17+
:status: draft
18+
:safety: ASIL_B
19+
:tags: platform_management
20+
:realizes: wp__prm_plan
21+
22+
Problem Resolution / Problem Resolution Plan
23+
--------------------------------------------
24+
25+
This document implements parts of the :need:`wp__platform_mgmt`.
1726

1827
Purpose
1928
+++++++
29+
The purpose of the Problem Resolution is to guide the resolution of project problems including
30+
their creation, analysis, resolution, and control. Where a problem is defined as a deviation of an
31+
expected result.
32+
2033

21-
Objectives and scope
34+
Objectives and Scope
2235
++++++++++++++++++++
2336

37+
Problem Resolution Goals
38+
^^^^^^^^^^^^^^^^^^^^^^^^
39+
40+
* Problems are recorded, identified and classified.
41+
* Problems are analyzed and assessed to determine an appropriate solution.
42+
* Problem resolutions are initiated and monitored.
43+
* Problem resolutions are closed and communicated to affected parties.
44+
2445
Approach
2546
++++++++
47+
48+
Problem Resolution Execution
49+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
50+
51+
Contributions in general to the **S-CORE** project are described here
52+
(compare :need:`gd_guidl__contr_request_guideline`).
53+
54+
A Problem Resolution is a specific contribution, and
55+
it is the **ONLY** way to report problems in the **S-CORE** project.
56+
57+
Problem Resolution Infrastructure
58+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
59+
60+
:need:`GitHub Issues (ISSUE) <gd_guidl__issue_guideline>` are used for managing problems and their
61+
potential resolution. The tool is used to create, analyse, initiate and to monitor the
62+
problem reported within **S-CORE**.
63+
64+
The next figure gives an overview, how problems are created in **S-CORE**. An ISSUE is
65+
used to create a problem report including required attributes as defined in the
66+
:ref:`Problem Process Requirements <prm_process_problem_attributes>`.
67+
Therefore the Problem Template :ref:`prm_templates` shall be used.
68+
69+
.. figure:: _assets/score_problem_resolution_overview.drawio.svg
70+
:width: 100%
71+
:align: center
72+
:alt: Problem Resolution Overview
73+
74+
75+
Problem Resolution Attributes
76+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
77+
:ref:`prm_process_problem_attributes` are implemented as follows:
78+
79+
:need:`[[title]] <gd_req__problem__attr_uid>` is identical to the ISSUE number.
80+
81+
:need:`[[title]] <gd_req__problem__attr_status>` is defined by the combination of the ISSUE state
82+
and the state in the Projects dashboard view. The PR status is also used, if applicable.
83+
84+
.. list-table:: Problem Status
85+
:header-rows: 1
86+
:widths: 15,85,15,15
87+
88+
* - Status
89+
- Issue status
90+
- Projects dashboard status
91+
- Linked PR status
92+
* - open
93+
- ``Open``
94+
- ``No Status``
95+
- na
96+
* - in review
97+
- ``Open``
98+
- ``Todo``
99+
- na
100+
* - in implementation
101+
- ``Open``
102+
- ``In Progress``
103+
- ``Draft`` or ``Open``
104+
* - closed
105+
- ``Closed``
106+
- ``Done``
107+
- ``Merged``
108+
* - rejected
109+
- ``Closed as not planned``
110+
- na
111+
- na
112+
113+
:need:`[[title]] <gd_req__problem__attr_title>` is identical to the ISSUE title.
114+
115+
:need:`[[title]] <gd_req__problem__attr_impact_description>` is defined in the description part of the
116+
ISSUE using the Problem Template :ref:`prm_templates`.
117+
118+
:need:`[[title]] <gd_req__problem__attr_anaylsis_results>` is defined in the description part of the
119+
ISSUE using the Problem Template :ref:`prm_templates`.
120+
121+
:need:`[[title]] <gd_req__problem__attr_stakeholder>` is defined in the description part of the
122+
ISSUE using the Problem Template :ref:`prm_templates`. For S-CORE stakeholder use pre-defined labels
123+
for Communities or Cross Functional Teams (Feature Owner) (under discussion, compare
124+
https://github.com/eclipse-score/score/issues/870)
125+
126+
:need:`[[title]] <gd_req__problem__attr_classification>` is defined in the description part of the
127+
ISSUE using the Problem Template :ref:`prm_templates`. For S-CORE labels are defined as:
128+
129+
.. list-table:: Problem Classification
130+
:header-rows: 1
131+
:widths: 15,15
132+
133+
* - Classification identifier
134+
- Label
135+
* - minor
136+
- ``minor``
137+
* - major
138+
- ``major``
139+
* - critical
140+
- ``critical``
141+
* - blocker
142+
- ``blocker``
143+
144+
:need:`[[title]] <gd_req__problem__attr_category>` is defined in the description part of the
145+
ISSUE using the Problem Template :ref:`prm_templates`. For S-CORE labels are defined as:
146+
147+
.. list-table:: Problem Categories
148+
:header-rows: 1
149+
:widths: 15,85,15
150+
151+
* - Category
152+
- Description
153+
- Infrastructure
154+
* - User
155+
- Created by any user or :need:`Contributor <rl__contributor>` to report potential identified problems
156+
- ISSUE with type BUG
157+
* - Bug
158+
- Created by :need:`Contributor <rl__contributor>` to report problems found during verification
159+
- ISSUE with type BUG and with label ``<test level>``
160+
161+
162+
:need:`[[title]] <gd_req__problem__attr_safety_affected>`,
163+
:need:`[[title]] <gd_req__problem__attr_security_affected>`,
164+
:need:`[[title]] <gd_req__problem__attr_quality_affected>` are defined in the description part of the
165+
ISSUE using the Problem Template :ref:`prm_templates`. For S-CORE labels are defined to mark affected
166+
ISSUEs:
167+
``safety``, ``security``, ``quality``
168+
169+
Combinations of them are allowed.
170+
171+
172+
:need:`[[title]] <gd_req__problem__attr_milestone>` is defined by the Milestone of a ISSUE.
173+
174+
175+
Problem Resolution Workflow
176+
^^^^^^^^^^^^^^^^^^^^^^^^^^^
177+
178+
In general, every Problem Resolution follows the following steps:
179+
180+
(color is refering to the following figure: Problem Resolution Simple Workflow Overview)
181+
182+
* 1. Create the Problem report (grey color)
183+
* 2. Analyse the Problem report (blue color)
184+
* 3. Initiate the implementation of the Problem Resolution and track it to closure (yellow color)
185+
* 3. Close Problem Resolution (purple color)
186+
187+
188+
**To 1. Create the Problem Report:**
189+
190+
An ISSUE is the **ONLY** way to create and manage a Problem in **S-CORE**.
191+
192+
The figure below shows the workflow for the simplest case of a Problem Resolution workflow.
193+
194+
An ISSUE with the type ``Bug`` is created in status ``Open``.
195+
The title of the ISSUE reflects the potential problem. Further add here the
196+
:need:`Problem Template <gd_temp__problem__template>` and fill it out accordingly.
197+
198+
Planning is done by setting the milestone of the ISSUE accordingly.
199+
200+
Problem status: ``open`` is implemented as
201+
ISSUE status ``Open`` and Projects status ``No Status``.
202+
203+
To trigger the next step: Problem status: ``in review``
204+
keep the ISSUE status ``Open`` and set the Projects status ``Todo``.
205+
206+
To reject the problem report: Problem status: ``rejected``
207+
set the ISSUE status to ``Closed as not planned``.
208+
209+
.. figure:: _assets/score_problem_resolution_workflow_simple.drawio.svg
210+
:width: 100%
211+
:align: center
212+
:alt: Problem Resolution Simple Workflow Overview
213+
214+
Problem Resolution Simple Workflow Overview
215+
216+
217+
**To 2. Analyse the Problem Report:**
218+
219+
The Problem Report is reviewed and analysed from the :need:`Committer <rl__committer>` and the
220+
review results are resolved by the :need:`Contributor <rl__contributor>`. The results
221+
are documented in the ISSUE. As long as the information is not sufficient, the related ISSUE is kept in
222+
status ``Open`` and Projects status ``Todo``, means ``in review``.
223+
224+
If the information is sufficient and it is decided to initiate the problem resolution, the
225+
ISSUE status is kept ``Open`` and the Projects status is set to ``In Progress``.
226+
227+
:ref:`prm_checklist` can help to verify whether the information is complete.
228+
229+
In case affected parties need to be informed :need:`Technical Lead <rl__technical_lead>` or
230+
:need:`Module Lead <rl__module_lead>` will notfiy them.
231+
232+
Otherwise, if no Problem Resolution is planned, the problem is rejected.
233+
To reject the Problem Report: Problem status: ``rejected``
234+
set the ISSUE status to ``Closed as not planned``.
235+
236+
237+
**To 3. Initiate and Monitor the Problem Resolution:**
238+
239+
:need:`Contributor <rl__contributor>` starts all required activities to resolve the problem.
240+
These may include starting Change Requests or in general plannig activites by creating ISSUEs and
241+
required PRs.
242+
243+
All ISSUEs or PRs created to resolve the problem are linked to the Problem Report ISSUE to enable
244+
monitoring of the activities.
245+
246+
All activities defined are tracked until closure, means that all linked ISSUEs or PRs are closed or
247+
merged, respectively.
248+
249+
If all are closed or merged :need:`Contributor <rl__contributor>` sets Projects status to ``Done``
250+
to trigger the final review from the :need:`Committer <rl__committer>` to close the Problem
251+
Resolution.
252+
253+
The Problem Resolution may also rejected in this phase, then the ISSUE status is set to
254+
``Closed as not planned``.
255+
256+
**To 4. Close the Problem Resolution:**
257+
258+
:need:`Committer <rl__committer>` checks finally if the problem is completely resolved. In this
259+
case all linked ISSUEs or PRs are closed or merged, respectively.
260+
261+
Especially the solution measure must be checked for their effectivness and the argumentation
262+
is convincing.
263+
264+
:ref:`prm_checklist` can help to verify whether it can be closed.
265+
266+
If this is the case the ISSUE status is set to ``Closed``, otherwise the Projects status is set
267+
back to ``In Progress``.
268+
269+
270+
Problem Resolution SW Platform Work Products
271+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
272+
273+
not applicable

Diff for: docs/process/_assets/score_process_area_overview.drawio.svg

+1-1
Loading

Diff for: docs/process/process_areas/change_management/change_management_workflow.rst

+2-2
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Workflow Change Management
2525
:supported_by: rl__technical_lead, rl__module_lead
2626
:input: wp__policies, wp__issue_track_system, wp__feat_request, wp__cmpt_request
2727
:output: wp__issue_track_system, wp__feat_request, wp__cmpt_request
28-
:contains: gd_guidl__change__change_request, gd_temp__change__feature_request, gd_temp__change__component_request, gd_temp__change__impact_analysis, gd_temp__component_classification, gd_req__change__attr_uid, gd_req__change__attr_status, gd_req__change__attr_title, gd_req__change__attr_impact_description, gd_req__change__attr_impact_safety, gd_req__change__attr_impact_security, gd_req__change__types, gd_req__change__attr_affected_wp, gd_req__change__attr_milestone, gd_req__change_tool_impact_analysis
28+
:contains: gd_guidl__change__change_request, gd_temp__change__feature_request, gd_temp__change__component_request, gd_temp__change__impact_analysis, gd_temp__component_classification, gd_req__change__attr_uid, gd_req__change__attr_status, gd_req__change__attr_title, gd_req__change__attr_impact_description, gd_req__change__attr_impact_safety, gd_req__change__attr_impact_security, gd_req__change__attr_types, gd_req__change__attr_affected_wp, gd_req__change__attr_milestone, gd_req__change_tool_impact_analysis
2929
:has: doc_concept__change__process, doc_getstrt__change__process
3030

3131
The Change Request is created and analyzed.
@@ -49,7 +49,7 @@ Workflow Change Management
4949
:supported_by: rl__safety_manager, rl__security_manager, rl__quality_manager
5050
:input: wp__issue_track_system, wp__feat_request, wp__cmpt_request
5151
:output: wp__issue_track_system, wp__feat_request, wp__cmpt_request
52-
:contains: gd_guidl__change__change_request, gd_temp__change__feature_request, gd_temp__change__component_request, gd_temp__change__impact_analysis, gd_temp__component_classification, gd_req__change__attr_uid, gd_req__change__attr_status, gd_req__change__attr_title, gd_req__change__attr_impact_description, gd_req__change__attr_impact_safety, gd_req__change__attr_impact_security, gd_req__change__types, gd_req__change__attr_affected_wp, gd_req__change__attr_milestone, gd_req__change_tool_impact_analysis
52+
:contains: gd_guidl__change__change_request, gd_temp__change__feature_request, gd_temp__change__component_request, gd_temp__change__impact_analysis, gd_temp__component_classification, gd_req__change__attr_uid, gd_req__change__attr_status, gd_req__change__attr_title, gd_req__change__attr_impact_description, gd_req__change__attr_impact_safety, gd_req__change__attr_impact_security, gd_req__change__attr_types, gd_req__change__attr_affected_wp, gd_req__change__attr_milestone, gd_req__change_tool_impact_analysis
5353
:has: doc_concept__change__process, doc_getstrt__change__process
5454

5555
The Change Request is evaluated based on the analysis result either approved, rejected or delayed.

Diff for: docs/process/process_areas/change_management/change_management_workproducts.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ Work Products Change Management
2727
:id: wp__issue_track_system
2828
:status: valid
2929
:tags: change_management
30-
:complies: std_wp__iso26262__support_852, std_wp__iso26262__support_853, std_wp__iso26262__support_854, std_req__aspice_40__iic-13-16, std_wp__isopas8926__4527
30+
:complies: std_wp__iso26262__support_852, std_wp__iso26262__support_853, std_wp__iso26262__support_854, std_wp__isopas8926__4527, std_req__aspice_40__iic-13-16, std_req__aspice_40__iic-13-07, std_req__aspice_40__iic-15-55, std_req__aspice_40__iic-15-12
3131

3232
| - Change request
3333
| - Change request plan

Diff for: docs/process/process_areas/change_management/guidance/change_management_guideline.rst

+2-4
Original file line numberDiff line numberDiff line change
@@ -55,15 +55,13 @@ For all Change Requests following mandatory attributes need to be defined:
5555

5656
.. needtable:: Overview of mandatory change request attributes
5757
:tags: change_management
58-
:filter: "mandatory" in tags and "attribute" in tags and type == "gd_req"
58+
:filter: "mandatory" in tags and "attribute" in tags and "chm" in tags
5959
:style: table
6060
:columns: title
6161
:colwidths: 30
6262

6363

64-
* ID: Unique integer number
65-
* For the remaining attributes only predefined values can be used. A more detailed description can
66-
be found here: :ref:`chm_attributes`
64+
A more detailed description can be found here: :ref:`chm_process_requirements`
6765

6866

6967
.. _workflow_chm_requirements:

0 commit comments

Comments
 (0)