Skip to content
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

Update Review Guidelines #25

Merged
merged 7 commits into from
Jan 20, 2022
Merged

Update Review Guidelines #25

merged 7 commits into from
Jan 20, 2022

Conversation

ghislaineguerin
Copy link
Contributor

@ghislaineguerin ghislaineguerin commented Jan 18, 2022

Fixes #18

Copy link
Contributor

@kgodey kgodey left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ghislaineguerin The updates look good overall, I've requested some changes.

Please also change your PR description to "Fixes #18". This will link the PR to the issue and also ensure that #18 is automatically closed when this PR is merged.


# Review Process
The spec creation process begins when a design issue is started and finalizes when the spec is approved and merged. When a design issue is ready for review, a spec is created, and a PR is opened. Finalizing a design spec means, in most cases, that the design issue has also been solved. If this is not the case, the reason and additional requirements must be communicated in the design issue and the spec.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add something about needing to create additional GitHub issues to track unresolved requirements in case the design issue is not solved.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It might also be worth explaining what a "design issue" is; new contributors may not be familiar with our process of creating GitHub issues with the work: design label to track design problems.


## Authors
- Write your design spec on the wiki under the [Documents](/design/specs) folder and link to it from the top-level [Documents](/design/specs) page.
## Review Process
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why make this a second level heading? We don't have any first level headings.

I think it would also be good to explain the review process under the heading here. Maybe move this from the first paragraph:

Every spec goes through a review process so that the team can discuss it and ask questions.

I think it would also be good to explain the goals of the review process here. Why is the team discussing it and asking questions? I can think of some answers: to make sure the design is technically feasible, to ensure that all the scenarios needed for implementation are covered, to look at the design from the perspective of a new or advanced user and imagine using the product, etc. You may be able to think of more reasons. I think having those here will help reviewers.

- Once you think the spec is ready for review, create a GitHub Discussion that includes:
- the design document and all related resources such as wireframes, prototypes, etc.
- Add the [spec content](##spec-content) to the page. Make sure the page date is updated as well.
- Once you think the spec is ready for review, create a PR that includes:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I assume by "includes" you mean in the PR description? Please specify.

- the design document and all related resources such as wireframes, prototypes, etc.
- Add the [spec content](##spec-content) to the page. Make sure the page date is updated as well.
- Once you think the spec is ready for review, create a PR that includes:
- a link to the referenced design issue from the [Mathesar Repo](https://github.com/centerofci/mathesar)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be listed as "Fixes <link to the issue>" so that the issue will be automatically closed when the PR is merged.

- Specify explicitly if you want another look at the design spec before it is finalized.
- Assign the required reviewers by their GitHub username.
- Always request a review from the Mathesar members with Product or Design roles (see [Team](/team) for handles.
- If the issue contains technical implementation details, you can request a review from a member with Engineering role as well. Keep in mind that a review from a single Engineering role member should be enough for most design issues. If you are tagging more than one Engineering member, specify the type of feedback that is required from them.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We decided in yesterday's meeting that we would assign one backend engineer and one frontend engineer (with rotation among backend and frontend engineers) for each spec.

### Reviewers

- Check for outstanding [design spec review requests](https://github.com/centerofci/mathesar-wiki/pulls?q=is%3Aopen) at least once a day.
- Comment on the GitHub PR with feedback. Please follow the general advice above.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the advice is actually below, not above :)

- By sharing feedback, you actively participate in the UX process; make sure you read the context documents and are clear on the user's needs. If needed, ask questions, don't make assumptions.

# Advice for Reviewers
#### Advice for Reviewers
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please have this be a top level heading so that it's easier to find from the table of contents on the wiki.

- Use descriptive words such as "clear", "helpful", "obvious", "confusing", "complex", rather than "bad", "wrong", "off", etc.
- Think backward from the end-goal
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Think backward from the end-goal
- Think backwards from the end-goal

- Go from simplest to complex so that new details are added incrementally, for example, 'User opens a table' to 'User opens multiple tables at once.
- A link to a prototype or wireframes or any artifact used to demonstrate the design solution.
- Including video walkthroughs for prototypes or wireframes can help the team better understand the proposed solution.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe mention that we have a Loom account you can request access to if you don't have access already.

@kgodey
Copy link
Contributor

kgodey commented Jan 20, 2022

@ghislaineguerin I made some updates for clarity in 4c2b2e8

@kgodey kgodey merged commit 0ed561c into master Jan 20, 2022
@kgodey kgodey deleted the spec-update branch January 20, 2022 20:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

Update spec process section on wiki
2 participants