first draft
What reports are needed?
- template:
- Use case
- Which data?
- How is it presented?
- design notes, algorithms, business logic
- "How old are our tasks?"
- As DC Ops manager, I know how old our tasks are, so that I can […?]reassign? re-prioritize?
- Data
- Task Name
- Assigned to
- Priority level (from Phab…)
- Effective Priority (some combo of Priority field, manual adjustments, implications of SLO; maybe a manually maintained stack ranking?)
- SLO
- Is this the static number from the SLO that applies to this type of task? If so, where does it come from? If not, what is it?
- Age (calculated from open date, closed date, and in some cases stalled time)
- Where is stalled time stored, or how is it calculated?
- Location (data center site or 'procurement', probably from a new tag)
- Type
- Presentation
- A table with all fields from above.
- Updated daily? hourly? on demand? every minute?
- Design/algorithms/logic
- How to determine the "Type"
- Procurement -
- Example: {T228214}
- tag=procurement
- assigned to=robh (instead of cmjohnson) → change process
- closed date=Oct 2, 2019
- create date=July 16, 2019
- SLO = closed date - create date - stalled time
- Priority Level = based on SLO or escalated tasks
- Install -
- Example: T229251: (2019-08-31)rack/setup/install db2131.codfw.wmnet
- assigned to=papaul (instead of marostegui) → change process
- closed date=Aug 14, 2019
- create date=July 29, 2019 → change process
- SLO = closed date - create date - stalled time
- Priority Level = based on SLO or escalated tasks
- Repair -
- https://phabricator.wikimedia.org/T237133
- assigned to=jclark-ctr
- closed date=Nov 13, 2019
- create date=Nov 1, 2019
- SLO = closed date - create date - stalled time
- Priority Level = based on SLO or escalated tasks
- Decommission -
- https://phabricator.wikimedia.org/T191362
- assigned to=papaul
- closed date=Jan 3, 2019
- create date=Apr 3, 2018
- SLO = closed date - create date
- Priority Level = based on SLO or escalated tasks
- Miscellaneous -
- https://phabricator.wikimedia.org/T241155
- assigned to=cmjohnson
- closed date=
- create date=Dec 19, 2019
- SLO = closed date - create date - stalled time
- Priority Level = based on SLO or escalated tasks```
- Procurement -
- "How long is it taking to close tasks?"
- As DC Ops manager, I know how old closed tasks are, so that I can [… know status? decide what to re-prioritize? how to assign tasks?]
- As a data center engineer, I know how old my open tasks are, so that I can know if I'm meeting commitments (SLO).
- Phabricator data:
- scope: all tasks for one project? For one data center? Per assignee?
- fields: name, date opened, date resolved, date stalled, tags
- Presentation
- minimum: table with columns: Task name, Lifespan.
- simplest: one number on a page, with label.
- "Average age of DC-Ops tasks upon completion: 47 working days"
- better: bar chart with different value for each data range. Monthly? Quarterly?
- Calculations:
- Lifespan = Date Resolved minus Date Opened
- Lifespan in working days (or Effective Lifespan, or Lifespan except stalled) = Calendar Age minus Stalled Time
- Could include open tasks as well by using 'today' as the [minimum possible] close time. Keep separate from closed tasks to avoid generating misleading data.
Lower priority
- "What should I work on next?"
- Use: As a data center engineer, I want to know what I should work on next, so that my customers' needs are met as well as possible.
- Use: As a customer, I want to know when my request is going to be worked on, so that I can decide whether to escalate my request.
- probably will be met with SLO plan.
- stack-rank all DC-Ops tasks per data center.
Technical Requirements
- where is the data hosted?
- how is the report generated?
- where would a script live?