Tracking missed deliverables
Introduction
Per the product meeting on 2018-07-10 we need a better way to track work that has slipped from a given milestone.
Meeting notes: https://docs.google.com/document/d/1dAs9HoAbuiRzYYvk-AFMggbN-1Hb1l6L17jMzLePbkA/edit#heading=h.55rfjdebou1g
Problem statement
- As issues are rescheduled or pushed out of the release, its milestone changes. We need to be able to track how many milestones an issue has slipped.
- Tracking via issue discussions/activity does not scale. It requires reading through the issue. We need a quick and high-level indicator of the time slide.
- We need to know what may slip ahead of time. E.g. a temp check should occur around the 7th-8th to groom the current open issues that is scheduled for the current milestone.
This proposal is to come up with a label taxonomy and process to track said workload.
Proposal
Semi-automated process with human in the loop grooming. Have an automated grooming mechanism that notifies each team to triage and apply a missed:xx.x label after code freeze.
-
Automated Use gitlab-bot to flag a generic missed deliverable issue and add the missed-deliverable label after the feature freeze on the 8th. Post a message to tell the people on the issue to add the specific missed deliverable milestone. Detailed criteria below:
- Criteria for triggering The bot will add the label missed-deliverable on current open issues that has the current milestone and has the Deliverable label.
- In the message the bot will recommend the current
missed:xx.xto use and also mention the respective EM if the issue has a team label assigned. - Continous nightly grooming
- After a milestone has passed. All opened issues Deliverable and with passed milestones will be labeled with missed-deliverable where the milestone value
< CurrentMilestone - If an issue has
missed:xx.xlabel, the bot will ensure that missed-deliverable is also applied. - The variable
currentMilestonewill be revved up on the 8th of each month.
- After a milestone has passed. All opened issues Deliverable and with passed milestones will be labeled with missed-deliverable where the milestone value
-
Manual Once the gitlab-bot has flagged down the issue, EMs and the creator of the issue adds the
missed:xx.xlabel manually.- If the issue is NOT deemed a missed deliverable e.g. out of scope and etc the missed-deliverable can be removed.
-
Taxonomy Introduce a new label
missed:xx.xto build granular taxonomy around specific milestones for missed deliverables.- For 11.0 and onwards we will create this label for every release. e.g.
missed:11.0missed:11.1missed:11.2missed:11.3and etc - For 10.x and releases prior, we will track at a high level. e.g.
missed:10.xmissed:9.xmissed:8.x - The label stays with the issue and is not removed.
- For 11.0 and onwards we will create this label for every release. e.g.
The data here will be fed into a release dashboard or a release page later. We will ensure that we have proper data hygine with automated grooming via missed-deliverable vs manual triage into milestone buckets via missed:xx.x
Data slicing with labels
This will also allow us to slice data further on missed deliverables.
| Data slice | Labels to use |
|---|---|
| All missed deliverables for the team |
team_label + missed-deliverable
|
| Missed deliverable for team in a milestone |
team_label + missed:xx.x
|
| All Engineering missed deliverables | missed-deliverable |
| All Engineering missed deliverables for in a milestone | missed:xx.x |
| All Engineering missed deliverables for 2 milestones |
missed:xx.x + missed:xx.y
|
@victorwu @jramsay @rymai @markglenfletcher @godfat Starting with you folks first, what are your thoughts?