-
Notifications
You must be signed in to change notification settings - Fork 133
Proposed Requirements Policy #1229
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
base: main
Are you sure you want to change the base?
Conversation
A proposed policy defining a process to use User Stories to document requirements. The process also defines how to manage and update requirements in the Use Case and Requirements document with TF or WG approval as appropriate.
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.
I would like to suggest a requirements document for each specification, derived from top level use cases. I think this would make it more clear which specification is intended to fulfil each requirement, and provide a set of requirements for each specification to be tested against to determine when it is complete. See w3c/wot-usecases#361
are published we should be able to specify exactly what problem each new feature | ||
(or change to an existing feature) is solving. | ||
|
||
The following requirements capture process is centered on User Stories, which link Use Cases to Features |
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.
How exactly are Use Cases & User Stories meant to be used together? When should someone use one or the other and what is the relationship between the two?
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.
Also see w3c/wot-thing-description#2098
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.
See also: w3c/wot-usecases#358
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.
The following requirements capture process is centered on User Stories, which link Use Cases to Features | |
The following process of requirement capture is centered on User Stories, which link Use Cases to Features |
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.
Language, markup, and such.
|
||
## Requirements | ||
New WoT specification Features should be motivated by Use Cases, as when updated specifications | ||
are published we should be able to specify exactly what problem each new feature |
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.
are published we should be able to specify exactly what problem each new feature | |
are published we should be able to specify exactly what problem each new feature |
are published we should be able to specify exactly what problem each new feature | ||
(or change to an existing feature) is solving. | ||
|
||
The following requirements capture process is centered on User Stories, which link Use Cases to Features |
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.
The following requirements capture process is centered on User Stories, which link Use Cases to Features | |
The following process of requirement capture is centered on User Stories, which link Use Cases to Features |
User Stories and Use Cases | ||
will be captured in the [Web of Things (WoT) Use Cases and Requirements](https://w3c.github.io/wot-usecases/) document. | ||
As a general principle the Use Case TF is tasked with managing only the *form* of | ||
the document and the *process* of adding new Use Cases and User Stories but not with specifying the |
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.
the document and the *process* of adding new Use Cases and User Stories but not with specifying the | |
the document and the *process* of adding new Use Cases and User Stories, and _not_ with specifying the |
1. A TF develops User Stories internally, as well as any supporting documentation such as a detailed | ||
design or technical requirements. | ||
See the [TD TF suggested process](https://github.com/w3c/wot-usecases/blob/main/tf-issue-process.md). | ||
Detailed design or technical requirements will generally *not* be captured in the | ||
WoT Use Case and Requirements document. | ||
The Use Case and Requirements document is only meant to | ||
capture a high-level summary of the motivation for each Feature by linking it to one or more Use Cases. |
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.
1. A TF develops User Stories internally, as well as any supporting documentation such as a detailed | |
design or technical requirements. | |
See the [TD TF suggested process](https://github.com/w3c/wot-usecases/blob/main/tf-issue-process.md). | |
Detailed design or technical requirements will generally *not* be captured in the | |
WoT Use Case and Requirements document. | |
The Use Case and Requirements document is only meant to | |
capture a high-level summary of the motivation for each Feature by linking it to one or more Use Cases. | |
1. A TF internally develops User Stories, as well as any supporting documentation such as a detailed | |
design or set of technical requirements. | |
See the [TD TF suggested process](https://github.com/w3c/wot-usecases/blob/main/tf-issue-process.md). | |
Detailed designs or technical requirements will generally *not* be captured in the | |
WoT Use Cases and Requirements document. | |
The Use Cases and Requirements document is only meant to | |
capture a high-level summary of the motivation for each Feature by linking it to one or more Use Cases. |
3. The TF proposes User Stories using the Use Case TF’s User Story issue template, one issue per User Story. | ||
A User Story links Use Cases to Features (or Work Items, if the work is still in progress). | ||
A Feature can be defined by an individual assertion or a normative section of a specification. |
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.
3. The TF proposes User Stories using the Use Case TF’s User Story issue template, one issue per User Story. | |
A User Story links Use Cases to Features (or Work Items, if the work is still in progress). | |
A Feature can be defined by an individual assertion or a normative section of a specification. | |
2. The TF proposes User Stories using the Use Case TF’s User Story issue template, one issue per User Story. | |
A User Story links Use Cases to Features (or Work Items, if the work is still in progress). | |
A Feature can be defined by an individual assertion or a normative section of a specification. |
4. The Use Case TF Creates a PR based on content in the submitted User Story, Use Case, or Use Case Category issue(s). | ||
This PR converts the issue to a HTML form to update the Use Case and Requirements document. The Use Case TF | ||
does *not* merge the PR at this point, but leave it open to solicit comments. Each such PRs is linked to the | ||
related issue. |
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.
4. The Use Case TF Creates a PR based on content in the submitted User Story, Use Case, or Use Case Category issue(s). | |
This PR converts the issue to a HTML form to update the Use Case and Requirements document. The Use Case TF | |
does *not* merge the PR at this point, but leave it open to solicit comments. Each such PRs is linked to the | |
related issue. | |
5. The Use Case TF Creates a PR based on content in the submitted User Story, Use Case, or Use Case Category issue(s). | |
This PR converts the issue to an HTML form to update the Use Cases and Requirements document. The Use Case TF | |
does *not* merge the PR at this point, but leaves it open to solicit comment. Each such PR is linked to the | |
related issue. |
This PR converts the issue to a HTML form to update the Use Case and Requirements document. The Use Case TF | ||
does *not* merge the PR at this point, but leave it open to solicit comments. Each such PRs is linked to the | ||
related issue. | ||
6. The HTML form and rendering for each PR is reviewed by the original submitters of the related issue. |
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.
6. The HTML form and rendering for each PR is reviewed by the original submitters of the related issue. | |
6. The HTML form and rendering of each PR is reviewed by the original submitters of the related issue. |
7. Once both the original submitters and the Use Case TF approve, the PR may be merged. In the case of a User Story, | ||
approval must be in the form of a formal Resolution by the proposing TF, as long as the User Story only impacts | ||
the deliverable that TF has responsibility for. In all other cases, including TF's proposing User Stories that | ||
impact deliverables of other TFs, in addition to the original submitters and the | ||
Use Case TF approving the submission, a formal Resolution by the entire WG is required before a new User Story can be merged. | ||
However, PRs for Use Cases and Use Case Categories can be merged at the discretion of the Use Case TF as long as the original | ||
submitters also agree. |
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.
7. Once both the original submitters and the Use Case TF approve, the PR may be merged. In the case of a User Story, | |
approval must be in the form of a formal Resolution by the proposing TF, as long as the User Story only impacts | |
the deliverable that TF has responsibility for. In all other cases, including TF's proposing User Stories that | |
impact deliverables of other TFs, in addition to the original submitters and the | |
Use Case TF approving the submission, a formal Resolution by the entire WG is required before a new User Story can be merged. | |
However, PRs for Use Cases and Use Case Categories can be merged at the discretion of the Use Case TF as long as the original | |
submitters also agree. | |
7. Once both the original submitters and the Use Case TF approve, the PR may be merged. In the case of a User Story, | |
approval must be in the form of a formal Resolution by the proposing TF, as long as the User Story only impacts | |
the deliverable for which that TF has responsibility. In all other cases, including TF's proposing User Stories that | |
impact deliverables of other TFs, in addition to approval by the original submitters and the | |
Use Case TF, a formal Resolution by the entire WG is required before a new User Story can be merged. | |
However, PRs for Use Cases and Use Case Categories can be merged at the discretion of the Use Case TF, as long as the original | |
submitters also agree. |
9. The Use Case TF will publishes updates to the WoT Use Case and Requirements document as a W3C Note periodically, | ||
and in particular if there are any changes to the document, at the end of each charter period. |
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.
9. The Use Case TF will publishes updates to the WoT Use Case and Requirements document as a W3C Note periodically, | |
and in particular if there are any changes to the document, at the end of each charter period. | |
9. The Use Case TF will periodically | |
— particularly, if there have been any changes to the document, at the end of each charter period — | |
publish updates to the WoT Use Cases and Requirements document as a W3C Note. |
9. The Use Case TF will publishes updates to the WoT Use Case and Requirements document as a W3C Note periodically, | ||
and in particular if there are any changes to the document, at the end of each charter period. | ||
|
||
There are some additional details in the Use Case TF repo's [README](https://github.com/w3c/wot-usecases) |
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.
There are some additional details in the Use Case TF repo's [README](https://github.com/w3c/wot-usecases) | |
There are some additional details in the Use Case TF repo's [README](https://github.com/w3c/wot-usecases). |
A proposed policy defining a process to use User Stories to document requirements. The process also defines how to manage and update requirements in the Use Case and Requirements document with TF or WG approval as appropriate.