-
Notifications
You must be signed in to change notification settings - Fork 3k
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
doc(rfc): Add requirements / non requirements section to RFC. #1818
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 |
---|---|---|
|
@@ -21,6 +21,28 @@ | |
> alternative solutions. In other words, enumerate the constraints you are trying to solve without coupling them too | ||
> closely to the solution you have in mind. | ||
|
||
## Requirements | ||
|
||
> What specific requirements does your design need to meet? This should ideally be a bulleted list of items you wish | ||
> to achieve with your design. This can help everyone involved (including yourself!) make sure your design is robust | ||
> enough to meet these requirements. | ||
> | ||
> Once everyone has agreed upon the set of requirements for your design, we can use this list to review the detailed | ||
> design. | ||
|
||
### Extensibility | ||
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. Why is this a sub-section of requirements? Shouldn't it be top level or a sub-section of detailed design? 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. Extensibility requirements? I'm fine either way, but this a little clearer is it still a list of requirements. 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. Would be good to have this as a separate section as part of "Future Work". |
||
|
||
> Please also call out extensibility requirements. Is this proposal meant to be extended in the future? Are you adding | ||
> a new API or set of models that others can build on in later? Please list these concerns here as well. | ||
|
||
## Non-Requirements | ||
|
||
> Call out things you don't want to discuss in detail during this review here, to help focus the conversation. This can | ||
> include things you may build in the future based off this design, but don't wish to discuss in detail, in which case | ||
> it may also be wise to explicitly list that extensibility in your design is a requirement. | ||
> | ||
> This list can be high level and not detailed. It is to help focus the conversation on what you want to focus on. | ||
|
||
## Detailed design | ||
|
||
> This is the bulk of the RFC. | ||
|
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.
Do you think
Goals
&Non-goals
would be better?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.
No, those can be too high level imo. "Goals" says high level, "requirements" says specific, to me at least.
For most designs I really think we need a detailed, bulleted list. We need to consider the design's requirements/goals in detail from the outset, and in plain English (outside of detailed design).