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.
benfrancis
left a comment
There was a problem hiding this comment.
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.
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.
| 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 |
|
|
||
| ## 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.
| 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.
| 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.
| 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.
| 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.
| 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.
| 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.
| 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.
| 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.
| 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.
| 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.