Page MenuHomePhabricator

Create Milestone tag
Closed, ResolvedPublic

Description

Immediate use: identify tasks as Milestones for purposes of grouping their "children" for Phlogiston burnup generation. Currently Phlogiston can group tasks with the same project, or projectcolumn, or wildcard match on project + projectcolumn. Several teams group their work via the "Blocked By" relationship, treating that like a parent/child relationship, so that the "parent" tasks are the goals or milestones. However, we don't have a global rule to identify these tasks. There are some possible definitions that come close, but not exactly matches the definition and use of a Milestone:

  1. Every task with children. - not all such tasks are true Milestones.
  2. Every Eve - every task with descendents but no parents. - not all such tasks are true Milestones; some Milestones may not have children.
  3. Every task without parents. - in practice, this would treat most tasks as Milestones, which is not useful for most purposes.
  4. Every task tagged Epic. - Epic is distinct and separate.
  5. Every task with a magic word in the title. - Bad data practice.

While the immediate use is for Phlogiston, this is a common vocabulary word for task management, much like Epic, and could be used for other purposes.

Event Timeline

JAufrecht raised the priority of this task from to Needs Triage.
JAufrecht updated the task description. (Show Details)
JAufrecht added a project: Project-Admins.
JAufrecht subscribed.

What is the definition for "milestone" and how is it supposed to use?
Not listed on https://www.mediawiki.org/wiki/Team_Practices_Group/Glossary

See https://www.mediawiki.org/wiki/Phabricator/Creating_and_renaming_projects#Guidelines for required data in project creation requests.

I have added my intended definition of Milestone to the TPG glossary. Teams which are working with Phlogiston will use the Milestone tag to designate tasks representing significant goals, such as quarterly goals or immediate components of quarterly goals. If these tasks have multiple "descendents" -- not really descendents, since the Blocked By relationship in Phabricator is not a parent-child relationship, but it is often used in that way and we will use it in that way for this purpose -- these descendents can all be accounted to the Milestone task for purposes of velocity tracking and forecasting. This would provide a new answer to the question How should TPG associate goals with tasks?. I would like to get @DarTar's feedback on whether this would be useful or conflicting for his Dao of DarTar method.

Once upon a time we had a Report project in https://phabricator.wikimedia.org/project/profile/1082/ which got partially superseded by Roadmap in https://phabricator.wikimedia.org/project/profile/1109/ which didn't work (and, for completeness, partially superseded by Notice etc used for weekly Tech News).
For quarterly goals we had 201516-Q1 in https://phabricator.wikimedia.org/project/profile/1447/ which was never used.

Hence my curiosity why the proposed approach would work better and how to make sure that people will actively and consistently use this tag.

I'm intending to use it actively in piloting Milestone-based Phlogiston forecasting. If the pilot doesn't produce results, it could be archived with the other tags, I guess. Is there a particular downside relative to the potential benefit?

Aklapper triaged this task as Medium priority.Dec 3 2015, 10:26 AM

Thanks for taking the time to explain. Appreciated.
Alright, let's try this (as I've explained my initial reluctance based on previous experience here, and I see how you'd like to use this and you state that you plan to actively use it for Phlogiston so that's cool).

Could you provide a good description for this tag, please? See https://www.mediawiki.org/wiki/Phabricator/Creating_and_renaming_projects#New_projects

Is this task somehow related to T120175: Use parent tasks as categories? Asking as this task mentions parent tasks, but not categories.

Yes. It goes in parallel with T115936: Provide Blocked By relationships in public dump: having parent-child relationship in the dump is useful, but you still need some way to figure out _which_ parents are of interest. Milestone tag solves that problem. Epic is close, but not the same thing because not all Epics are Milestones.

This tag designates a task and its descendents for reporting within Phlogiston. If you are reporting with Phlogiston, use it to define significant stopping points within planned work (e.g., a quarterly goal or portion thereof). See the Glossary for a more complete definition. See https://www.mediawiki.org/wiki/Phlogiston for usage within Phlogiston.

Aklapper claimed this task.
Aklapper mentioned this in Phlogiston-Category.

Requested project #milestone has been created: https://phabricator.wikimedia.org/project/profile/1656/