-
Notifications
You must be signed in to change notification settings - Fork 16
docs: improve req process reqs for tooling #32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -24,15 +24,18 @@ Process Requirements | |
| :satisfies: wf__req__stkh_req, wf__req__feat_req, wf__req__comp_req | ||
| :complies: std_req__iso26262__support_6431, std_req__iso26262__support_6432 | ||
|
|
||
| Requirements shall be hierarchically grouped into different levels. | ||
| Requirements shall be hierarchically grouped into three levels. | ||
|
|
||
| Following levels are defined: | ||
|
|
||
| * Stakeholder requirement | ||
| * Feature requirement | ||
| * Component requirement | ||
|
|
||
| Additionally there shall be the following logical groups of requirements: | ||
| * Assumption of use requirement | ||
| * Process requirement | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. "gd_req" is a process requirement? What about e.g. "wf__req"? Is "process requirement" an undefined group here?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. wf__req should be a workflow of the requirements process, not a requirement. Process requirement = gd_req - Let's not mention standard requirements here as those are treated differently and I would say these are described in our process metamodel. |
||
| * Tool requirement | ||
|
|
||
| .. _process_requirement_attributes: | ||
|
|
||
|
|
@@ -46,13 +49,13 @@ Process Requirement Attributes | |
| :satisfies: wf__req__stkh_req, wf__req__feat_req, wf__req__comp_req | ||
| :complies: std_req__iso26262__support_6425, std_req__iso26262__support_6432 | ||
|
|
||
| Each requirement shall have a unique ID. It shall be in a format which is also human readable and consists of | ||
| Each requirement shall have a unique ID. It shall consist of three parts: | ||
|
|
||
| * type of requirement | ||
| * last part of the feature tree | ||
AlexanderLanin marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| * keyword describing the content of the requirement. | ||
|
|
||
| The naming convention is defined here: `REPLACE_doc__naming_conventions` | ||
| Consider the project's naming convention. | ||
|
|
||
| .. gd_req:: Requirement attribute: title | ||
| :id: gd_req__requirements_attr_title | ||
|
|
@@ -61,11 +64,9 @@ Process Requirement Attributes | |
| :satisfies: wf__req__stkh_req, wf__req__feat_req, wf__req__comp_req | ||
| :complies: std_req__iso26262__support_6424 | ||
|
|
||
| The title of the requirement shall provide a short summary of the description. This means that e.g. the word "shall" must not be used int the title for: | ||
| The title of the requirement shall provide a short summary of the description, but is not an "additional" requirement. | ||
|
|
||
| * Stakeholder Requirements | ||
| * Feature Requirements | ||
| * Component Requirements | ||
| This means that the word "shall" must not be used in the title for all requirements. | ||
AlexanderLanin marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| .. gd_req:: Requirement attribute: description | ||
| :id: gd_req__requirements_attr_description | ||
|
|
@@ -102,7 +103,7 @@ Process Requirement Attributes | |
| :tags: attribute, mandatory | ||
| :satisfies: wf__req__feat_req, wf__req__comp_req | ||
|
|
||
| Each requirement shall have a security relevance identifier: | ||
| Each requirement (apart from proccess req) shall have a security relevance identifier: | ||
AlexanderLanin marked this conversation as resolved.
Show resolved
Hide resolved
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. As mentioned above: do stakeholder and feature requirements also need the security attribute?
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. yes, why do you think, there is a difference from safety attribute? |
||
|
|
||
| * Yes | ||
| * No | ||
|
|
@@ -114,7 +115,7 @@ Process Requirement Attributes | |
| :complies: std_req__iso26262__support_6421, std_req__iso26262__support_6425 | ||
| :satisfies: wf__req__stkh_req, wf__req__feat_req, wf__req__comp_req | ||
|
|
||
| Each requirement shall have a automotive safety integrity level (ASIL) identifier: | ||
| Each requirement (apart from proccess req) shall have a automotive safety integrity level (ASIL) identifier: | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Tool requirements? |
||
|
|
||
| * QM | ||
| * ASIL_B | ||
|
|
@@ -138,7 +139,8 @@ Process Requirement Attributes | |
| :tags: attribute, mandatory | ||
| :satisfies: wf__req__stkh_req | ||
|
|
||
| Each stakeholder requirement shall provide a in the attribute rationale the reason why that the requirement is needed. | ||
| Each stakeholder requirement shall provide an attribute rationale. | ||
AlexanderLanin marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| The rationale shall contain the reason why the requirement is needed. | ||
|
|
||
| .. _process_requirement_linkage: | ||
|
|
||
|
|
@@ -154,9 +156,19 @@ Process Requirement Linkage | |
|
|
||
| Requirements shall be linked to its adjacent level via the attribute satisfies. | ||
|
|
||
| * stakeholder requirements <-> feature requirements | ||
| * feature requirements <-> component requirements | ||
| * workflow <-> process requirements | ||
| * stakeholder requirements <- feature requirements | ||
| * feature requirements <- component requirements | ||
| * workflow <- process requirements | ||
| * process requirements <- tool requirements | ||
|
|
||
| .. gd_req:: Requirement Traceability | ||
| :id: gd_req__req__traceability | ||
| :status: valid | ||
| :tags: attribute, automated | ||
| :complies: std_req__iso26262__support_6432 | ||
| :satisfies: wf__req__stkh_req, wf__req__feat_req, wf__req__comp_req | ||
|
|
||
| Bi-directional traceability shall be provided by adding a "back-link" via attribute satisfied by. | ||
AlexanderLanin marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| .. gd_req:: Requirement attribute: requirement covered | ||
| :id: gd_req__req__attr_req_cov | ||
|
|
@@ -200,21 +212,29 @@ Process Requirement Linkage | |
| * No | ||
|
|
||
| .. gd_req:: Requirement attribute: versioning | ||
| :id: gd_req__req__attr_hash | ||
| :id: gd_req__req__attr_version | ||
| :status: valid | ||
| :tags: attribute, automated | ||
| :satisfies: wf__req__stkh_req, wf__req__feat_req, wf__req__comp_req | ||
| :complies: std_req__iso26262__support_6425, std_req__iso26262__support_6434 | ||
|
|
||
| It shall be possible to provide a versioning for requirements. It shall be possible to detect if any of the mandatory attributes differ from the versioning: :need:`gd_req__req__attr_mandatory` | ||
|
|
||
| A more detailed description of the concept can be found here: :need:`gd_req__req__attr_hash` | ||
| It shall be possible to provide a versioning for requirements. For this all mandatory attributes shall be taken into account: :need:`gd_req__req__attr_mandatory` | ||
AlexanderLanin marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| .. _process_requirement_checks: | ||
|
|
||
| Process Requirements Checks | ||
| ''''''''''''''''''''''''''' | ||
|
|
||
| .. gd_req:: Requirement check: suspicious | ||
| :id: gd_req__req__attr_suspicious | ||
| :status: valid | ||
| :tags: attribute, automated | ||
| :satisfies: wf__req__stkh_req, wf__req__feat_req, wf__req__comp_req | ||
| :complies: std_req__iso26262__support_6425, std_req__iso26262__support_6434 | ||
|
|
||
| Based on the requirement versioning it shall be checked if a parent requirement was updated but not the linked child requirements. | ||
AlexanderLanin marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| In case an update was detected, the attribute requirement covered shall be set to "No" | ||
|
Comment on lines
+235
to
+236
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thanks for clarifying this. 'Requirement covered' still is a bit weird sounding for this explanation but I think this makes it clear for us what to do. 👍
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm not quite clear on the concept, as this sounds like we need to change the "requirement covered" automatically (and instantly) by modifying the rst files. But this is so far into the future, we don't need to clarify right now. |
||
|
|
||
| .. gd_req:: Requirements mandatory attributes provided | ||
| :id: gd_req__req__attr_mandatory | ||
| :status: valid | ||
|
|
@@ -240,6 +260,9 @@ Process Requirements Checks | |
| * Stakeholder Requirements | ||
| * Feature Requirements | ||
| * Component Requirements | ||
| * Tool Requirements | ||
|
|
||
| List of these weak words: just, about, really, some, thing, absolutely (to be extended) | ||
|
|
||
|
|
||
| .. gd_req:: Requirements linkage level | ||
|
|
@@ -249,7 +272,7 @@ Process Requirements Checks | |
| :complies: std_req__iso26262__support_6432 | ||
| :satisfies: wf__req__stkh_req, wf__req__feat_req, wf__req__comp_req | ||
|
|
||
| Every feature- and component requirement shall be linked to at least one parent requirement according to the defined traceability scheme: | ||
| Every feature- and component requirement shall be linked to at least one valid parent requirement according to the defined traceability scheme: | ||
|
|
||
| :ref:`traceability concept for requirements` | ||
|
|
||
|
|
@@ -260,7 +283,7 @@ Process Requirements Checks | |
| :complies: std_req__iso26262__support_6423 | ||
| :satisfies: wf__req__feat_req, wf__req__comp_req | ||
|
|
||
| It shall be checked if every feature- and component requirement is linked at least to one architectural element. | ||
| It shall be checked if every feature- and component requirement is linked at least to one valid architectural element on the same level. | ||
AlexanderLanin marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| .. gd_req:: Requirements linkage safety | ||
| :id: gd_req__req__linkage_safety | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On that thought: Do feature requirements also need the security attribute? Or is the security determined from the feature architecture. This would mean that only component requirements would contain the attribute security?