Skip to content

Commit c46b17b

Browse files
authored
Merge pull request #172 from eclipse-score/aschemmel-tech-req-milestone-attribute
Improvement: Requrements validity for milestones
2 parents f00d9b6 + f35d267 commit c46b17b

File tree

3 files changed

+61
-1
lines changed

3 files changed

+61
-1
lines changed

process/process_areas/requirements_engineering/guidance/requirements_guideline.rst

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ Following roles should be included in the review:
198198

199199

200200
Workflow for Creating and Linking Assumption of Use (AoU)
201-
*********************************************************
201+
=========================================================
202202

203203
An AoU is a category of requirement which is originates from a safety concept of an architectural element (and thus it is confirmed by a safety analysis). As it can not be fulfilled by the architecture element (e.g. component) itself, it needs to be fulfilled by the user of the module.
204204
In Safety Elements out of Context (SEooC) the AoUs will normally be part of the safety manual.
@@ -221,3 +221,32 @@ AoUs can be of different class and shall be handled by tracing those
221221
AoU Traceability
222222

223223
:numref:`aou_traceability` is an extension of the workproduct traceability to show the handling of (external) AoU. Note that the component level displayed in green shows two components - on the right the one exporting AoU to be fulfilled by others, left the component which fulfills and exports AoU (but without the traceability shown on the right to reduce complexity).
224+
225+
Special cases
226+
=============
227+
228+
Requirements for future (or past) milestones
229+
--------------------------------------------
230+
231+
A project release is always consistent, i.e. all development artefacts linked to each other do not contradict each other
232+
and complete, i.e. all requirements are derived into dependent work products down to the implementation.
233+
This is also the case for the selection of the scope of a platform by feature flags, as these
234+
select a part of the platform but this part is complete.
235+
236+
In this chapter we cover a special use case where requirements not for the next milestone but for later milestones are specified.
237+
This could be the case when a function is already specified but it is decided to delay its implementation.
238+
239+
A use case where the specification AND implementation of a new/modified feature is done
240+
already during the development time of an earlier milestone than the feature is planned
241+
can be realized by the feature flags (for new features) or by branching off.
242+
243+
For the "only specification" use case, the following attributes can be used:
244+
- :need:`gd_req__req_attr_valid_from`
245+
- :need:`gd_req__req_attr_valid_until`
246+
247+
These attributes can be used for stakeholder and feature requirements, but not for
248+
the component requirements, as these are expected to be developed during small implementation cycles.
249+
250+
If an existing requirement needs to be reworked for the new function it will be split in two.
251+
The requirement with the old specification will be valid_until the milestone before the
252+
new function is planned and the requirement with the new specification is valid_from the planned milestone.

process/process_areas/requirements_engineering/guidance/requirements_process_reqs.rst

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,24 @@ Process Requirement Attributes
140140
Each stakeholder requirement shall provide an attribute called rationale.
141141
The rationale shall contain the reason why the requirement is needed.
142142

143+
.. gd_req:: Requirement attribute: valid_from
144+
:id: gd_req__req_attr_valid_from
145+
:status: valid
146+
:tags: manual, attribute
147+
:satisfies: wf__req_stkh_req, wf__req_feat_req
148+
149+
Stakeholder and feature requirements can have a validity attribute that tells
150+
from which milestone onwards the requirement is part of a feature.
151+
152+
.. gd_req:: Requirement attribute: valid_until
153+
:id: gd_req__req_attr_valid_until
154+
:status: valid
155+
:tags: manual, attribute
156+
:satisfies: wf__req_stkh_req, wf__req_feat_req
157+
158+
Stakeholder and feature requirements can have a validity attribute that tells
159+
until which milestone the requirement is part of a feature.
160+
143161
.. _process_requirement_linkage:
144162

145163
Process Requirement Linkage
@@ -305,5 +323,14 @@ Process Requirements Checks
305323

306324
Note: This ensures that safety requirements are properly derived into their children. Also a mix of safe and QM aspects in a parent is avoided by this.
307325

326+
.. gd_req:: Requirements validity
327+
:id: gd_req__req_validity
328+
:status: valid
329+
:tags: prio_3_automation, check
330+
:satisfies: wf__req_stkh_req, wf__req_feat_req
331+
332+
Validity attributes (:need:`gd_req__req_attr_valid_from` and :need:`gd_req__req_attr_valid_until`) shall be checked for correctness (i.e. they denote an existing milestone) and consistent (e.g. the until is not before from)
333+
Several of the above checks are not to be executed on requirements not valid in the next milestone, these are TBD
334+
308335
.. needextend:: docname is not None and "process_areas/requirements_engineering" in docname
309336
:+tags: requirements_engineering

process/process_areas/requirements_engineering/guidance/requirements_templates.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@ Templates
3030
:security: <YES|NO>
3131
:safety: <QM|ASIL_B>
3232
:rational: <The rationale provides the reason that the requirement is needed.>
33+
:valid_from: <milestone version>
34+
:valid_until: <milestone version>
3335
:status: <valid|invalid>
3436
3537
.. gd_temp:: Feature Requirements Template
@@ -45,6 +47,8 @@ Templates
4547
:security: <YES|NO>
4648
:safety: <QM|ASIL_B>
4749
:satisfies: <link to stakeholder requirement id>
50+
:valid_from: <milestone version>
51+
:valid_until: <milestone version>
4852
:status: <valid|invalid>
4953
5054
.. gd_temp:: Component Requirements Template

0 commit comments

Comments
 (0)