Kadir proposed a points system for estimating tasks in work days, which includes meetings, coordinating, production pushes, etc. This could be encoded as
[points:X] in the Bugzilla whiteboard.
Here’s the system as I recall it:
- 1 point (
[points:1]) Trivial task. For example, setting a waffle flag in the Django admin to enable shipped, working code.
- 2 points (
[points:2]) - Less than a work day
- 3 points (
[points:3]) - 1 - 2 work days
- 5 points (
[points:5]) - 3 - 5 work days
- More than that (
points:6+) - Must be broken into smaller parts for estimating
Safwan and Anthony also requested identification of how difficult a task is, to expose tasks that could be done by volunteers. I propose a tag
[lod:X] for Level of Difficulty, set to the sum of these points:
- +1 requires additional setup beyond the basic installation instructions (such as configuring the search index)
- +1 requires changing a little-used system (such as the API keys) or an important system not often used by staff (such as initial signup)
- +1 requires a significant amount of production or production-like data
- +1 requires back-end changes (views, celery workers, etc.)
- +1 requires front-end (JS, CSS, etc.) changes
- +1 requires database changes
- +1 requires infrastructure changes
- +1 requires access to production, production-like environment, or staff permissions
- +1 requires design and specification (such as adding new workflows)
We could have the following:
[lod:1] - Appropriate for first-time contributors, should be assigned a mentor
[lod:2] - Appropriate for regular contributors
[lod:3] - Appropriate for advanced contributors, contractors, etc.
[lod:4+] - Appropriate for MDN staff
We could go above 4 as well, to quantify the effort for staff tasks, but this would go beyond the needs of identifying work for external contributors.
The whiteboard for a triaged task may then look like