Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '.gitlab/issue_templates')
-rw-r--r--.gitlab/issue_templates/Design Sprint.md290
-rw-r--r--.gitlab/issue_templates/Feature Flag Roll Out.md25
-rw-r--r--.gitlab/issue_templates/Feature Proposal - lean.md7
-rw-r--r--.gitlab/issue_templates/Geo Replicate a new Git repository type.md33
-rw-r--r--.gitlab/issue_templates/Geo Replicate a new blob type.md33
5 files changed, 245 insertions, 143 deletions
diff --git a/.gitlab/issue_templates/Design Sprint.md b/.gitlab/issue_templates/Design Sprint.md
index 9eaa9da3675..2ad3bac0a05 100644
--- a/.gitlab/issue_templates/Design Sprint.md
+++ b/.gitlab/issue_templates/Design Sprint.md
@@ -2,18 +2,18 @@
This template outlines a sample set-up process, activities and deliverables for running a Remote Design Sprint. The specific activities and deliverables should be customized based on your objectives and timeline.
-Please refer to the [Remote Design Sprint Handbook page](#anchor-tag-to-handbook-page) for additional recommendations.
+Please refer to the [Remote Design Sprint Handbook page](https://about.gitlab.com/handbook/product/ux/design-sprint/) for additional recommendations.
## Design Sprint Focus
-* [ ] Have you [determined that a Design Sprint is appropriate for this project](#anchor-tag-to-handbook-page)?
-<!-- What is the focus of the [Design Sprint](https://about.gitlab.com/handbook/product/product-processes/#design-sprint)? What problem area will you be solving for and who is the target user? -->
+* [ ] Have you [determined that a Design Sprint is appropriate for this project](https://about.gitlab.com/handbook/product/ux/design-sprint/#when-to-opt-for-a-remote-design-sprint)?
+_What is the focus of the [Design Sprint](https://about.gitlab.com/handbook/product/product-processes/#remote-design-sprint)? What problem area will you be solving for and who is the target user?_
## Objectives
-
-<!-- Try to describe the objectives of the Sprint in detail. eg "We want to introduce a new feature but we are unsure that we are thinking about the solution from the customer's perspective and through the Sprint we want to rethink the solution, prototype it and validate it with our customers" or "We are unhappy with the direction of one of our categories and we want to explore new directions with different stakeholders, reach to one solution and test it with users" or "Among the team we have different visions for a specific category and we want to work towards a solution we all support and test it with users". -->
+_What is the objective(s) this Design Sprint will entail?_
+<!-- Try to describe the objectives of the Sprint in detail. e.g., "We want to introduce a new feature but we are unsure that we are thinking about the solution from the customer's perspective, and through the Sprint we want to rethink the solution, prototype it and validate it with our customers" or "We are unhappy with the direction of one of our categories and we want to explore new directions with different stakeholders, reach to one solution and test it with users" or "Among the team we have different visions for a specific category and we want to work towards a solution we all support and test it with users". -->
## Outputs
-
+_Select which outputs you want to have at the end of the Sprint._
- [ ] A User testing flow.
- [ ] A Prototype to be tested with users.
- [ ] User testing analysis.
@@ -27,14 +27,7 @@ Please refer to the [Remote Design Sprint Handbook page](#anchor-tag-to-handbook
| YYYY-MM-DD | YYYY-MM-DD |
| TT:TT PST | TT:TT PST |
-
-### WHEN
-
-**Start date:**
-
-**End date:**
-
-**Reference time zone:**
+**Reference time zone:** All times will be posted in [UTC](https://www.timeanddate.com/worldclock/timezone/utc).
### WHERE
@@ -57,89 +50,52 @@ Please refer to the [Remote Design Sprint Handbook page](#anchor-tag-to-handbook
Here is the list of tools for the Sprint preparation, collaboration and documentation. Prior to the Sprint make sure you have access to all of the following:
* **GitLab**<br/>
-Each Sprint day outcomes and material will be documented in a separate issue under the Design Sprint epic.
-
-* **Mural** (You can join as anonymous but we need to be able to identify input against names, so please create an account beforehand.<br/>
+Each Sprint day outcomes and material will be documented in separate issues under the Design Sprint epic:
+ * **Kickoff:** (Kickoff Issue Link)
+ * **Day One:** (Day 1 Issue Link)
+ * **Day Two:** (Day 2 Issue Link)
+ * **Day Three:** (Day 3 Issue Link)
+ * **Day Four:** (Day 4 Issue Link)
+
+* **Mural** (You can join as anonymous but we need to be able to identify input against names, so please create an account beforehand.)<br/>
We will use Mural for most of the Sprint collaboration. Some of the things we will do in Mural:
- * Create artifacts like affinity diagrams from participants' input
- * Use post-its to comment on each other's points and to add notes
- * Vote on ideas and solutions
+ * Create artifacts like affinity diagrams from participants' input.
+ * Use post-its to comment on each other's points and to add notes.
+ * Vote on ideas and solutions.
* Create the first draft of the prototype.
-The Mural link to the collaboration project will be provided in the issue before the start of the Design Sprint.
+ * **The Mural link can be found here:** (Mural Link)
* **Video and/or screen recording tool** (Loom, Quicktime, Zoom or another tool you are using).<br/>
-As part of the pre-Sprint homework, you will be asked to record a short Lightning Walkthrough video. You can use any tool you feel comfortable with as long as it can capture your screen, mouse pointer and your audio.
+As part of the pre-Sprint homework, you will be asked to record a short Lightning Walkthrough video (don't worry, this will be explained in detail during the Sprint :smile:). You can use any tool you feel comfortable with as long as it can capture your screen, mouse pointer, and audio.
-* **A4/Letter sized paper (preferably white blank), Sharpies/Pens** (please don't use a pencil because it doesn't create enough contrast for photos).<br/>
-Day 2 of the sprint involves some (async) ideation via sketching so you will need a writing utensil (Sharpies are preferred because they force you to draw at a lower fidelity because the small details aren't necessary at this point) and some paper. This is the most fun part of the Sprint where you get into a design thinking mindset and can appeal to your creative self. Don't worry, it's not about artistry, it's about ideas and collaboration.
+* **A4/Letter-sized paper (preferably white, blank), Sharpies/Pens** (Please don't use a pencil because it doesn't create enough contrast for photos).<br/>
+Day 2 of the Sprint involves some (async) ideation via sketching so you will need a writing utensil (Sharpies are preferred because they force you to draw at a lower fidelity because the small details aren't necessary at this point) and some paper. This is the most fun part of the Sprint where you get into a design thinking mindset and can appeal to your creative self. Don't worry, it's not about artistry, it's about ideas and collaboration. It'll be fun!
* **Camera (phone or other) or scanner**<br/>
You will need to upload sketches as images for the facilitator to prepare the material before the next sync meeting. You can take a photo with your phone or use a scanner if available.
* **Post-it notes (Optional)**<br/>
-If you enjoy taking notes using post-it notes make sure you have available some of them as well. The upside is that they will make you feel more like you are in a workshop and will help the ideas flow (I find that typing is distracting while ideating). The downside is that you will have to digitalise the ones you want to share with the team in Mural.
+If you enjoy taking notes using Post-it notes make sure you have some of them as well. The upside is that they will make you feel more like you are in a workshop and will help the ideas flow (I find that typing is distracting while ideating). The downside is that you will have to digitize the ones you want to share with the team in Mural.
## Artefacts & Pre-Read Material
-<!-- If there is material that will be useful for the participants to read before the Design Sprint add here. -->
+<!-- If there is material that will be useful for the participants to read before the Design Sprint add here, such as the sprint slide deck or design sprint material -->
### Handbook pages
<!-- Add a link to the category vision from the handbook -->
### Competitor resources
-<!-- Add any solutions by competitors that are relevant to the Design Sprint topic and could be used as source of inspiration. -->
-
+<!-- Add any solutions by competitors that are relevant to the Design Sprint topic and could be used as a source of inspiration. -->
### Articles on Design Sprints
* [The Design Sprint](https://www.gv.com/sprint/)
* [The Ultimate Guide To Remote Design Sprints](https://drive.google.com/file/d/16bwrAqHVf8qxovd87Q7LdzqwAgy7a6Rx/view?usp=sharing)
-## Asyncronus tasks
-
-### Design Sprint preparation
-
-<!-- Replace the roles with GitLab handles to assign to specific participants -->
-
-- [ ] Finalise participant list - `decider` and `facilitator`
-- [ ] Create [participation form](https://docs.google.com/forms/d/e/1FAIpQLSc0_BNltvRW8yXXaJd8sIKzgDmrSGqILMfkoCJrAj6sFcsMcg/viewform?usp=sf_link) and send to participants (**deadline**: [date]) - `facilitator`
-- [ ] Create a dedicated Slack channel and add participants - `facilitator`
-- [ ] Promote this issue to an epic - `facilitator`
-- [ ] Create issues under the epic for the pre-workshop tasks: Expert interviews ([example](https://gitlab.com/groups/gitlab-org/configure/-/epics/3#note_332412524)), Lightning walkthroughs and How might we.. notetaking assignment ([example](https://gitlab.com/gitlab-org/configure/general/-/issues/52)), Voting How might we... notes assignment ([example](https://gitlab.com/gitlab-org/configure/general/-/issues/54)) - `facilitator`
-- [ ] Create sync meetings in calendar and invite all participants (**deadline**: [date]) - `decider` or `facilitator`
-- [ ] Block 2 hours for Sprint activities in calendar for the Sprint week - `all participants`
-- [ ] Prepare material and tools (eg. presentation templates, Google folders, Instructions videos etc) and Mural board from the [Mural template ](https://app.mural.co/invitation/mural/gitlab2474/1586990879319?sender=jmandell0210&key=03c25e92-9a43-4a3d-8907-6f0c3b094ab8) - facilitator
-- [ ] Finalize Agenda - `facilitator`
-- [ ] Run a test with material and tools - `facilitator`
-- [ ] Start user recruiting for prototype user testing (EOD 1) - `facilitator` or `decider`
-
-### Pre-Sprint activities (Homework exercises)
-
-Each exercise should be explained and documented in a separate issue. You can use the example issues above as templates.
-
-- [ ] Fill form and submit (**deadline**: [date]) - `all participants except the facilitator`
-- [ ] Expert interview analysis - `facilitator`
-- [ ] Lightning walkthrough videos (**deadline**: [date]) - `all participants except the facilitator`
-- [ ] How might we... notetaking assignment (**deadline**: [date]) - `all participants except the facilitator`
-- [ ] Voting How might we... notes assignment (**deadline**: [date]) - `all participants except the facilitator`
-- [ ] Add all required material to the Mural board (**deadline**: [date]) - `facilitator`
-
-### During Sprint activities
-
-- [ ] Organise user testing sessions - `facilitator` or `decider`
-- [ ] Create the Prototype to be tested and task list (End of Day 3) - `Product designer` or `Front end developer`
-- [ ] Run user testing sessions - `facilitator` or `decider`
-
-### Post-Sprint activities
-
-- [ ] Create a feedback issue for the Design Sprint - `facilitator` or `decider`
-- [ ] Analyse user testing results - `facilitator` or `decider`
-- [ ] Create report and share with the Design Sprint participants and wider team - `facilitator` or `decider`
-
## Personas
Deciding which persona we are focusing on will be part of the Day 1 discussions in the workshop. The personas we are going to consider are:
-<!-- Choose which personas could be target users so that you choose from this list during the Sprint. Personas are described at https://about.gitlab.com/handbook/product/personas/
+<!-- Choose which personas could be target users, and choose from this list during the Sprint. Personas are described at https://about.gitlab.com/handbook/product/personas/
* [Parker (Product Manager)](https://about.gitlab.com/handbook/product/personas/#parker-product-manager)
* [Delaney (Development Team Lead)](https://about.gitlab.com/handbook/product/personas/#delaney-development-team-lead)
@@ -161,44 +117,162 @@ Deciding which persona we are focusing on will be part of the Day 1 discussions
-->
-## Agenda
-### Day 1
-
- | Activity | Duration | Tool | Description |
-|---|---|---|---|
-| Warm-up exercise | 5 mins | Mural | Write 1 post-it answering the questions: <br/>"My name is…"<br/>"My role is…"<br/>“Something about myself you may not know is…”<br/>"My wish for this workshop is…" |
-| Summarise the async activities & complete Map | 20 mins | Mural | The Map is intended to show the focus of the Sprint and doesn't need to be complete or detailed. Steps:<br/> Go through the Map and the top voted How might we’s tree as a warm-up/reminder. <br/> • Make appropriate adjustments and additions to the map based on the reviews from the team. <br/> • Add the most voted HMWs to the most relevant area on the Map. If a HMW can go to more than one place, add it to the most left area. |
-| Long term goals/Deciding the Sprint goal | 15 mins | Mural | • Long term goal: Everyone spends 5 minutes in silence and writes one (max 2) long term goal post-it note for the Sprint. (5 mins ) <br/> • One by one everyone will read their goal aloud to the team. (5 mins) <br/> Everyone besides the decider will vote on the goal of the Sprint (1 dot). (4 minutes) <br/> The decider then makes the final decision on the long term goal of the Sprint. (1 min) |
- | Sprint questions | 20 mins | Mural | • Referencing the Long Term goal, everyone will write 2-3 post-it note Sprint questions for the biggest challenges they think might stop us from achieving our long term goal (what might hold us back or hinder us from achieving this goal). The questions should start with “Can we...” (similarly to the HMW). (7 mins) <br/> • One by one everyone will read their Sprint questions aloud to the team. (5 mins) <br/> • Everyone (including the decider) votes on the top 3 questions they think we should focus on as Sprint challenges (3 dots). (5 mins) <br/> • Separate the 3 most voted questions and keep them on the side. (1 min) <br/> • Finally, the decider chooses one Sprint question that will be the question we will focus on more during the Sprint by placing a green smiley sticker on it. (1 min) <br/> • Move the long term goal and the Sprint questions to the dedicated Mural space, highlighting the ultimate Sprint question that the decider chose. (1 min) |
-| Recap day. <br/> Short intro to next day and share the video with the next day exercise instructions. | 5 mins | Mural, Zoom | Summarise activities of the day and decisions. Brief walkthrough of the next day's activities and wrap up the day. |
-
-### Day 2
- | Activity | Duration | Tool | Description |
-|---|---|---|---|
-| Summary of Day 1 outcomes | 5 mins | Mural | Go through the previous day's activities, the Long term goal and the top voted Sprint questions, highlighting the ultimate Sprint question, and summarise the concept solution sketching homework exercise. |
-| Concept gallery review | 20 mins | Mural | • Everyone takes some time to read through and look at every aspect of each of the sketches in the Concept Gallery. The concept sketches are anonymous to avoid bias (15 mins). <br/> • The team will then vote on their favorite concepts and/or components of a concept via the red dots. When they see something that interests them and they think it will help solve the long term goal/challenges they can add one or more dots. They can use as many red dots as they want. Be frivolous when adding dots but if you really like or think something is important, add more to draw attention to it (5 mins).<br/> Note: If anyone has any questions about a concept sketch create a red sticky and write that question down placing it under the concept sketches. |
-| Speed critique | 5 mins | Mural | • The facilitator walks through each of the concepts, briefly summarizing each concept (to the best of their ability) with a focus on the areas that have been dotted. <br/> • During this time the facilitator will also try to answer any of the red post-it questions. <br/> • When the facilitator believes they’ve reached the end of their summary for that concept, ask the team if there was a concept that was voted on but not discussed or if the point of the red dot vote was missed in the discussion.
-| Straw Poll | ~15 mins | Mural | • All the participants, besides the Decider, vote using the larger green dot by adding their initials to it and placing it on the concept sketch they believe is the best one that will best fulfill the long term goal and challenges of this sprint and is worthy of being prototyped (2 mins) <br/> • Each participant will create a post-it note that explains their reasoning for choosing the concept. (5 mins) <br/> • Each participant will then get 1 minute to read through their post-it and attempt to sell their preferred concept to the Decider and the other participants. (5-10 mins) |
-| Super Vote (The Decider) | 10 mins | Mural | • The Decider makes their final decision of which of the concepts is the one to move forward with. <br/> • The decider can discuss their thought process and any questions with the rest of the participants. <br/> • They will get 2 green smiley stickers to vote with. Placing one on the concept they want to move forward with and the second, optional smiley, can be used to mark any other area of any other concept they think should also be incorporated into the prototype. |
-
-
-### Day 3
- | Activity | Duration | Tool | Description |
-|---|---|---|---|
-| User test flow | 25 mins | Mural | • Each participant writes (on separate post-its) 6 steps/actions that represent a step of a flow (you can think of a high-level prototype flow) from start to finish. Place them in the appropriate location on the User Test section. (10 mins) <br/> • Each participant takes 1 minute to walk the team through their flows one-by-one (5-10 mins total). Note: It's best to have the Decider go last. <br/> • Voting: All the Sprint participants get one red dot (the Decider gets 2) to vote on the flow row they think is the best foundation for the prototype. <br/> • After everyone has voted the Decider will vote on the row they think is best with one dot using the second dot to, optionally, vote on an element of another flow they think should be incorporated into the prototype. (5 mins) <br/> • If the second dot is used copy the specific sticky into the main flow voted by the Decider. |
-| Storyboard | 45 mins | Mural | • Copy the winning flow from the User Test Flow exercise to the Storyboard/Prototype section placing each individual post-it note into its own container. <br/> • Look at the sketch concepts and move over any relevant screens that fulfill the needs of the sticky note in that container. You can move the entire concept or screen capture cut/paste parts of concepts. Note: Don’t add any unnecessary details or ideas that aren’t needed for the end result prototype <br/> • Fill in the details that are required for each step described in the sticky. |
-| Recap day | 5 mins | Mural, Zoom | Summarise activities of the day and decisions. Brief walkthrough of the next day's activities and wrap up the day. |
-
-### Day 4
- | Activity | Duration | Tool | Description |
-|---|---|---|---|
-| Validate Prototype | 30 mins | Mural | • Go through the Prototype created by the Product designer or Front end developer and discuss any inaccuracies or missing content. |
-| Wrap up the Sprint | 15 mins | Zoom, GitLab | • Recap the Sprint and discuss next steps. Create user testing issues. |
-
-### Day 5
- | Activity | Duration | Tool | Description |
-|---|---|---|---|
-| Prototype testing with 5 users | ~45 mins | Figma or code/Zoom | • Test the prototype with users. |
+## Pre-Sprint Preparation | Due Date: `Add Date`
+
+- [ ] Promote this issue to an epic.
+- [ ] Finalize objective and outputs.
+- [ ] Finalize participant list.
+- [ ] Create a dedicated Slack channel and add participants.
+- [ ] Create issues for each day of the sprint.
+- [ ] Prepare activity slide deck.
+- [ ] Prepare Mural Board and ensure participant access.
+- [ ] Prepare instructional videos for activities (Lightning Talks, HMWs, Crazy 8s etc).
+- [ ] Organize and inform team members who will be providing lightning talk recordings.
+- [ ] Open a recruitment issue for user testing.
+- [ ] Create sync meetings in calendars for all participants.
+- [ ] Record Kickoff Video.
+- [ ] Do a Sprint test run.
+
+## Sprint Kickoff | `Add Date`
+
+#### Pre-Day Facilitator Checklist:
+- [ ] Ensure [Kickoff Issue](Add Link) is complete.
+- [ ] Assign participants to the [Kickoff Issue](Add Link).
+- [ ] Ensure warm-up exercise Mural is set up.
+- [ ] Prep Q&A issue thread.
+- [ ] Send a `Welcome to the Sprint` slack message.
+
+ | Activity | Type of Activity | Duration | Tool | Description |
+|---|---|---|---|---|
+| Introduction to Design Sprints | Async | 20 Minutes | Video Recording | • The facilitator gives an overview of the Sprint, including details about what they are, why they are used, and why they can help solve the problem for this Sprint. <br/> • The facilitator gives participants an overview of what they need to complete a Design Sprint such as a run down of the rules, and supples, as well as an agenda and basic expectations. <br/> • The facilitator gives participants an overview of the problem we will be solving and allows for an async Q&A period. |
+| Icebreaker | Async | 5 Minutes | Mural | • All Sprint participants give an async introduction in Mural. |
+| Q&A Period | Async | 5 Minutes | GitLab and Slack | • Participants can ask questions about the Sprint. (Optional) |
+| Record Lightning Talk | Async | 10 Minutes | Zoom | • Participants record their Lightning Talk. |
+
+#### Post-Day Facilitator Checklist:
+- [ ] Answer any questions that come up during the Q&A period.
+- [ ] Send a homework reminder in the Slack channel.
+
+## Day 1 - Sprint Homework | `Add Date`
+
+#### Pre-Day Facilitator Checklist:
+- [ ] Ensure [Day 1 Issue](Add Link) is complete.
+- [ ] Ensure Lightning Talk recordings are added to the [Day 1 Issue](Add Link).
+- [ ] Ensure participants have access to the Note Taking Activity Walkthrough Video.
+- [ ] Ensure HMW section on Mural is organized.
+- [ ] Ensure participants have access to the HMW Activity Walkthrough video.
+
+ | Activity | Type of Activity | Duration | Tool | Description |
+|---|---|---|---|---|
+| Watch Lightning Talks | Async | 15 Minutes Per Talk | Video Recording and Note Taking Tool | • Participants will watch lightning talks and complete the note-taking activity async. <br/> • The Facilitator will provide an overview video of what is expected during the note taking portion of this activity. |
+| How Might We’s (HMWs) | Async | 20 Minutes | Mural | • Participants will take their notes from the Lightning Talk activity and craft some HMWs around the opportunities uncovered. <br/> • The facilitator will provide participants a video to describe the HMW activity and review what makes a good HMW statement. <br/> • The facilitator will also be available to sync on Slack for any questions around the activity. |
+
+#### Post-Day Facilitator Checklist:
+- [ ] Answer any questions that come up during the async HMW activity.
+- [ ] Send a sync session reminder in the Slack channel.
+
+## Day 1 - Sync Session | `Add Date`
+
+#### Pre-Day Facilitator Checklist:
+- [ ] Ensure all sync Mural boards are organized (Affinity Mapping, Goals, Hurdles, Squiggle Birds).
+- [ ] Ensure sync session is recorded.
+
+ | Activity | Type of Activity | Duration | Tool | Description |
+|---|---|---|---|---|
+| Affinity Mapping | Sync | 30 Minutes | Zoom and Mural | • Participants take turns reading aloud their HMWs. (5 minutes). <br/> • Once the review has completed, the facilitator will choose an Affinity Mapper who will be in charge of categorizing the HMWs with the help of the entire group (10 Minutes). <br/> • Once the HMWs are organized into categories, the group will do a round of dot voting on the categories we want to focus on for the Sprint. Each participant will get three votes, and vote individually on the category they feel is most important to work on (10 Minutes). <br/> • The facilitator will allow time for discussion around the HMW groups chosen, and see if there needs to be adjustments (5 Minutes). |
+| Sprint Goal | Sync | 20 Minutes | Zoom and Mural | • Based on the outcomes of the HMW activity, participants start by asking themselves the following question: “If everything worked out perfectly, what would that look like for this project?” <br/> • Each participant writes one Sprint goal on a Mural sticky starting with “By the end of the Sprint…” (10 Minutes) <br/> • Everyone on the team should share their Sprint Goal with the larger group and post them on the Mural (5 Minutes). <br/> • Everyone is given one dot to vote on what they think the Sprint Goal should be. (5 Minutes) |
+| Sprint Hurdles | Sync | 20 Minutes | Zoom and Mural | • Participants will list out possible critical hurdles, in the form of a question, that may stop you from reaching your goal: What could stop us or heavily impact us from reaching our goals? <br/> • Each question must start with ‘Can we...’ <br/> • Each person can only write 2 questions (10 Minutes) <br/> • Everyone on the team should share their Hurdles back to the larger group and post them up on the Mural (5 Minutes). <br/> • Everyone is given three to vote on what they think are the most important to focus on as challenges toward the Goal. (5 Minutes) |
+| Recap of Day | Sync | 5 Minutes | Zoom and Mural | • Facilitator gives and overview of what has been completed so far during Day 1 of the Sprint and expectations for Day 2 Homework |
+| Squiggle Birds | Sync | 5 Minutes | Zoom, Paper and Pen/Sharpie | • Sync warm-up drawing activity to prep for next async tasks. <br/> • The facilitator will draw a squiggle on Mural and encourage all participants to also make a squiggle. <br/> • Everyone will then turn the squiggle into a bird. <br/> • The facilitator will share that "Our minds are great at recognizing patterns." Sketches are only used to convey an idea, so they don't need to be super detailed or accurate. |
+
+#### Post-Day Facilitator Checklist:
+- [ ] Send a Day 1 overview and homework reminder in the Slack channel.
+- [ ] Post-sync session recording in the Slack channel.
+- [ ] Ensure [Day 2 Issue](Add Link) is complete.
+- [ ] Ensure participants have access to the Crazy 8s Walkthrough Video.
+- [ ] Ensure the Crazy 8s section on Mural is organized.
+
+## Day 2 - Sprint Homework | (Add Date)
+
+#### Pre-Day Facilitator Checklist:
+- [ ] Ensure Ideation recordings are added to the [Day 2 Issue](Add Link).
+- [ ] Ensure participants have access to the Ideation Walkthrough Videos.
+- [ ] Ensure the Ideation section on Mural is organized.
+
+| Activity | Type of Activity | Duration | Tool | Description |
+|---|---|---|---|---|
+| Note Recap | Async | Google Docs | 5 Minutes | • Review all the notes that were taken during Day 1. <br/> • Review all the HMW stickies to jog your memory. |
+| Ideas List | Async | Google Docs | 5 Minutes | • On a piece of paper jot down any solutions that come to mind around solving HMW statements. |
+| Crazy 8s | Async | Paper and Marker/Pen | 8 Minutes | • Grab your printer paper and create an 8-panel page by folding your paper in half 3 times. <br/> • Draw a sketch for an idea in each rectangle. <br/> • Start at the top of your HMW statements/ideas list from the previous activity.|
+| Share-out Prep | Async | Mural | 10 Minutes | • In preparation for the share-out, take a photo of your Crazy 8 paper and add it to the Mural. |
+
+#### Post-Day Facilitator Checklist:
+- [ ] Send a sync session reminder in the Slack channel.
+
+## Day 2 - Sync Session | `Add Date`
+
+#### Pre-Day Facilitator Checklist:
+
+- [ ] Ensure sync Murals are organized (Crazy 8s, Storyboarding).
+- [ ] Ensure sync session is recorded.
+
+| Activity | Type of Activity | Duration | Tool | Description |
+|---|---|---|---|---|
+| Crazy 8's Share out and Voting | Sync | 15 Minutes | Zoom and Mural | • Each person will have two minutes to present their ideas to the team. <br/> • After each team member has gotten the chance to present their ideas, we will do a round of dot voting. <br/> • Vote on the ideas you think will be best to solve our Sprint problem. <br/> • Each team member will get 3 votes. |
+| Storyboarding Key Moments | Sync - 2 Groups | 30 Minutes | Zoom, Paper and Sharpie/Pen | • Take the first 10 minutes to write down the 8-10 key moments individually. <br/> • As a team decide on the ideal storyboard together. <br/> • Try and bring out the task that needs to be done and the emotion that you would like the user to experience. <br/> • No drawing yet! |
+| Storyboard Details | Sync | 20 Minutes | Zoom, Paper and Pen/Sharpie | • Take your draft storyboard and give it more detail. <br/> • DRAW BIG! Sketch 1 key moment per 8.5x11 page. <br/> • Each person on the team should sketch at least 1 key moment. <br/> • Focus on actions and emotions. |
+| Put Together the Story | Sync | 10 Minutes | Zoom and Mural | • Each person will take a photo of their storyboard and add it to the Mural. |
+| Storyboard Share Out and Voting | Sync | 15 Minutes | Zoom and Mural | • Each group takes turns presenting their story to the Sprint team. <br/> • Once both teams have had the chance to present their storyboard, we’ll hold a round of voting. <br/> • Each person will be given 3 votes to vote for any part of each experience they like. <br/> • The Decider gets 6 votes for this activity, 3 mega-likes and 3 dislikes. |
+| All in One or Rumble | Sync | 5 Minutes | Zoom | • Decide as a group if you want to incorporate the best parts of both storyboards into one or if you want to test both storyboards against each other during the testing phase. |
+
+#### Post-Day Facilitator Checklist:
+- [ ] Send a Day 2 overview and homework reminder in the Slack channel.
+- [ ] Post-sync session recording in the Slack channel.
+- [ ] Ensure [Day 3 Issue](Add Link) is complete.
+
+## Day 3 - Group Sprint Homework | (Add Date)
+
+#### Post-Day Facilitator Checklist:
+- [ ] Set up a Figma File for the prototype and ensure it's shared with the group.
+
+| Activity | Type of Activity | Duration | Tool | Description |
+|---|---|---|---|---|
+| Prototyping | Async | 1 Hour | Figma | • The Designer will craft out a prototype based on the storyboard for the team to review. |
+| Prototyping Feedback | Async | 10 Minutes | Figma | • Once the Designer has completed the prototype, the team will review it and leave feedback. <br/> • There will only be a single round of feedback before hallway testing (where we will receive additional feedback from users). |
+| Review Hallway Testing Slides | Async | 10 Minutes | Slides | • Review the details on what Hallway Testing is to prepare for the next sync session. |
+
+#### Post-Day Facilitator Checklist:
+- [ ] Send a sync session reminder in the Slack channel.
+
+## Day 3 - Sync Session | (Add Date)
+
+#### Pre-Day Facilitator Checklist:
+
+- [ ] Ensure sync Murals are organized (Hallway Testing Prep).
+- [ ] Ensure sync session is recorded.
+- [ ] Ensure the prototype is done and has been adjusted from the feedback.
+- [ ] Gathered a few potential Hallway Test Volunteers.
+
+| Activity | Type of Activity | Duration | Tool | Description |
+|---|---|---|---|---|
+| Define a Research Objective | Sync | 10 Minutes | Zoom and Mural | • As a group, write a research objective for your hallway test. Make sure to capture: What you want to learn, Who you want to talk to, What you plan to do with what you learn. |
+| Write a Test Scenario | Sync | 10 Minutes | Zoom and Mural | • As a group, write a test scenario for your hallway test. <br/> • Write down a list of key tasks that you’d like the participant to complete while using the prototype. |
+| Write Test Questions | Sync | 10 Minutes | Zoom and Mural | • As a group, write a test scenario for your hallway test. <br/> • Craft a list of questions and / or tasks that you’ll ask participants to answer or complete in order to answer your research objectives. |
+| Hallway Testing | Sync | 50 Minutes | Zoom | • Working in groups of 2-3, review the discussion guide and prototype. <br/> • Determine who will ask questions and who will take notes. Remember to switch roles after each test! <br/> • It’s up to you where you take notes. <br/> • Join the Zoom meeting with your assigned person & test your prototype. <br/> • Have the team document what they hear and be prepared to share back with the larger sprint team. |
+| Hallway Testing Share-out | Sync | 20 Minutes | Zoom | • Each group will have roughly 5 minutes to present their findings from Hallway Testing. Each team should present: <br/> • What were the common themes? <br/> • What did you hear that was surprising? <br/> • Any red flags? <br/> • Thank participants for their time. |
+
+#### Post-Day Facilitator Checklist:
+- [ ] Summarize themes of Hallway Testing and share with the Slack channel and the [Day 3 Issue](Add Link).
+- [ ] Optionally, share with UX, Product, and other relevant Slack channels.
+- [ ] Share with team next steps related to Day 4 and Usertesting.
+
+## Day 4 - Usertesting | (Add Date)
+
+<!-- Day 4 can happen at a later date when it makes the most sense. Use the problem validation issue template for Day 4. -->
+
+Day 4 consists of a round of user testing which typically happens a week or more after the first three days complete.
+
+* **Day Four Issue:** (Day 4 Issue Link)
## Ground Rules
* Honor the Facilitator's directions. They're the guide for the entire process.
diff --git a/.gitlab/issue_templates/Feature Flag Roll Out.md b/.gitlab/issue_templates/Feature Flag Roll Out.md
index 5efc9304a4e..6e878a18aae 100644
--- a/.gitlab/issue_templates/Feature Flag Roll Out.md
+++ b/.gitlab/issue_templates/Feature Flag Roll Out.md
@@ -20,8 +20,8 @@ that is currently behind the `<feature-flag-name>` feature flag.
- Team: NAME_OF_TEAM
- Most appropriate slack channel to reach out to: `#g_TEAM_NAME`
-- Best individual to reach out to: NAME
-- PM: NAME
+- Best individual to reach out to: NAME_OF_DRI
+- PM: NAME_OF_PM
## Stakeholders
@@ -82,7 +82,7 @@ Note: Please make sure to run the chatops commands in the slack channel that get
as this is the first environment deployed to. Note you will need to make sure you are configured to use canary as outlined [here](https://about.gitlab.com/handbook/engineering/infrastructure/environments/canary-stage/)
when accessing the staging environment in order to make sure you are testing appropriately.
-For assistance with QA end-to-end test failures, please reach out via the `#quality` Slack channel. Note that QA test failures on staging-ref [don't block deployments](https://about.gitlab.com/handbook/engineering/infrastructure/environments/staging-ref/#how-to-use-staging-ref).
+For assistance with QA end-to-end test failures, please reach out via the `#quality` Slack channel. Note that QA test failures on staging-ref [don't block deployments](https://about.gitlab.com/handbook/engineering/infrastructure/environments/staging-ref/#how-to-use-staging-ref).
### Specific rollout on production
@@ -194,6 +194,25 @@ You can either [create a follow-up issue for Feature Flag Cleanup](https://gitla
In this scenario, labels must be related to it, for example; ~"type::feature", ~"type::bug" or ~"type::maintenance".
Please use /copy_metadata to copy the labels from the issue you're rolling out. -->
+<!--
+Template placeholders
+
+- name: MAIN-ISSUE-LINK
+ description: the URL of the issue introducing the feature flag
+- name: <feature-flag-name>
+ description: the feature flag name
+- name: NAME_OF_TEAM
+ description: the label of the responsible team, e.g. group::foo
+- name: #g_TEAM_NAME
+ description: the Slack channel name of the responsible team, e.g. #g_foo
+- name: NAME_OF_DRI
+ description: the GitLab username of the best individual to reach out to, e.g. @foo
+- name: NAME_OF_PM
+ description: the GitLab username of the relevant PM, e.g. @foo
+- name: <your-username>
+ description: the GitLab username of the person who would enable the feature flag on GitLab.com, e.g. @foo
+-->
+
/label ~group::
/label ~"feature flag"
/assign me
diff --git a/.gitlab/issue_templates/Feature Proposal - lean.md b/.gitlab/issue_templates/Feature Proposal - lean.md
index 7b7402e4d18..c82907a2401 100644
--- a/.gitlab/issue_templates/Feature Proposal - lean.md
+++ b/.gitlab/issue_templates/Feature Proposal - lean.md
@@ -47,6 +47,13 @@ Create tracking issue using the Snowplow event tracking template. See https://gi
-->
+### Does this feature require an audit event?
+
+<!--- Checkout these docs to know more
+https://docs.gitlab.com/ee/development/audit_event_guide/#what-are-audit-events
+https://docs.gitlab.com/ee/administration/audit_events.html
+--->
+
<!-- Label reminders
Use the following resources to find the appropriate labels:
- Use only one tier label choosing the lowest tier this is intended for
diff --git a/.gitlab/issue_templates/Geo Replicate a new Git repository type.md b/.gitlab/issue_templates/Geo Replicate a new Git repository type.md
index b77247954de..9e7d2634f3a 100644
--- a/.gitlab/issue_templates/Geo Replicate a new Git repository type.md
+++ b/.gitlab/issue_templates/Geo Replicate a new Git repository type.md
@@ -2,19 +2,22 @@
This template is based on a model named `CoolWidget`.
-To adapt this template, find and replace the following tokens:
-
-- `CoolWidget`
-- `Cool Widget`
-- `cool_widget`
-- `coolWidget`
-
-If your Model's pluralized form is non-standard, i.e. it doesn't just end in `s`, then find and replace the following tokens *first*:
-
-- `CoolWidgets`
-- `Cool Widgets`
-- `cool_widgets`
-- `coolWidgets`
+To adapt this template, find and replace the following:
+
+Template placeholders
+
+- name: Cool Widgets
+ description: the human-readable name of the model (plural)
+- name: Cool Widget
+ description: the human-readable name of the model (singular)
+- name: cool_widgets
+ description: the snake-cased name of the model (plural)
+- name: cool_widget
+ description: the snake-cased name of the model (singular)
+- name: CoolWidget
+ description: the ActiveRecord class name of the model
+- name: coolWidget
+ description: the camel-cased name of the model
-->
@@ -188,7 +191,7 @@ The Geo primary site needs to checksum every replicable so secondaries can verif
```yaml
---
table_name: cool_widget_states
- description: Separate table for cool widget verification states
+ description: Separate table for Cool Widget verification states
introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/XXXXX
milestone: 'XX.Y'
feature_categories:
@@ -427,7 +430,6 @@ That's all of the required database changes.
let(:model_record) { build(:cool_widget) }
include_examples 'a repository replicator'
- include_examples 'a verifiable replicator'
end
```
@@ -506,7 +508,6 @@ That's all of the required database changes.
end
include_examples 'a Geo framework registry'
- include_examples 'a Geo verifiable registry'
end
```
diff --git a/.gitlab/issue_templates/Geo Replicate a new blob type.md b/.gitlab/issue_templates/Geo Replicate a new blob type.md
index 94c93bd27e4..11ad6614bc2 100644
--- a/.gitlab/issue_templates/Geo Replicate a new blob type.md
+++ b/.gitlab/issue_templates/Geo Replicate a new blob type.md
@@ -2,19 +2,22 @@
This template is based on a model named `CoolWidget`.
-To adapt this template, find and replace the following tokens:
-
-- `CoolWidget`
-- `Cool Widget`
-- `cool_widget`
-- `coolWidget`
-
-If your Model's pluralized form is non-standard, i.e. it doesn't just end in `s`, find and replace the following tokens *first*:
-
-- `CoolWidgets`
-- `Cool Widgets`
-- `cool_widgets`
-- `coolWidgets`
+To adapt this template, find and replace the following:
+
+Template placeholders
+
+- name: Cool Widgets
+ description: the human-readable name of the model (plural)
+- name: Cool Widget
+ description: the human-readable name of the model (singular)
+- name: cool_widgets
+ description: the snake-cased name of the model (plural)
+- name: cool_widget
+ description: the snake-cased name of the model (singular)
+- name: CoolWidget
+ description: the ActiveRecord class name of the model
+- name: coolWidget
+ description: the camel-cased name of the model
-->
@@ -191,7 +194,7 @@ The Geo primary site needs to checksum every replicable so secondaries can verif
```yaml
---
table_name: cool_widget_states
- description: Separate table for cool widget verification states
+ description: Separate table for Cool Widget verification states
introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/XXXXX
milestone: 'XX.Y'
feature_categories:
@@ -384,7 +387,6 @@ That's all of the required database changes.
let(:model_record) { build(:cool_widget) }
include_examples 'a blob replicator'
- include_examples 'a verifiable replicator'
end
```
@@ -463,7 +465,6 @@ That's all of the required database changes.
end
include_examples 'a Geo framework registry'
- include_examples 'a Geo verifiable registry'
end
```