Page MenuHomePhabricator

Project templates
Closed, WontfixPublic

Description

Would like the ability to create a project template of various tasks and workboards and then clone that template for live projects. We often have many buildout projects that have the same tasks, dependencies, etc and creating them from scratch each time is painful.

Event Timeline

bryceburnet raised the priority of this task from to Needs Triage.
bryceburnet updated the task description. (Show Details)
bryceburnet added a project: Restricted Project.
bryceburnet added subscribers: jhurwitz, angie, bryceburnet.

There's some prior discussion of something similar in T7190. Is your use case a lot like that, or a lot different, or somewhere in between?

Can you give me an example of the kind of task you'd like to template?

Broadly, my thinking is that "run through an operational workflow with a small number of variables" (e.g., "provision a new server") is probably a better fit for some new "Manual QA / Process / Workflow / Checklist" tool, where you build some kind of "Checklist" and can then clone it. This would work well for manual QA (do X, then do Y, then check if Z is the same as Q, then...), provisioning (bring up a host, then add a DNS record, then update the manifest, then...), and other collections of relatively routine, non-automatable tasks.

Are the things you're interested in templating somewhere in this general umbrella, or do these sorts of checklists sound very different from what you're after?

Broadly, we're much more able to solve problems if you describing the problem you're facing rather than just the solution you're interested in:

https://secure.phabricator.com/book/phabcontrib/article/feature_requests/#describe-problems

The best solution for a problem is sometimes not the most obvious one, but if we don't understand the problem we can't recognize that and can't suggest a better approach.

Yes, would say similar to T7190.

Here is my problem: At any given time, I have between 6-8 very large, cross-functional projects with up to 100 primary tasks and another 20-30 subtasks. These are organized on a workboard with 6 different categories (Initial, Planning and Design, Procurement, Build and Construction, Fitout and Closeout). It takes me hours to setup a new project, creating all the tasks from scratch. 85% of the tasks are the same project to project, the only variance is the person the task is assigned to. Having the ability to setup a "gold" template and clone it as needed would save a tremendous amount of time.

Anecdotally, there are other Maniphest users at DBX that are interested in a template and clone feature. In fact, because this feature is not available, there are teams that have decided to use other project tracking tools.

Can you give me a better idea of what these huge, extremely similar projects are? I can't come up with any guesses from my experience, and the categories don't precisely sound like operations or software engineering. I've never heard the term "Fitout" before and Google is only giving me hits in the context of interior design.

In particular, I'd be interested in knowing:

  • Is this approach ideal? That is, is the best way to manage this work definitely human execution of 130 tasks, or would many of them be automated or represented differently in an ideal world? From experience, I'd expect an operations workflow with 130 steps to be heavily under-automated; I'd expect a manual QA workflow with 130 steps to be way too large in scope, etc.
  • How large are the individual tasks? Are they essentially checkboxes (like "Add a DNS record" or "Fill the carafe with water"), or are they complex human-intelligence tasks which often, e.g., require individual discussion, reassignment, prioritization, reorganization, etc? That is, is a full task for each step usually the right "size"/"complexity" of object, or is a task often much larger/more complex than necessary (e.g., are most steps straightforward with little or no discussion, and a checkbox would be good enough)?
  • Is assignee always the only value you ever want to parameterize? You don't need to parameterize names, details, priorities, projects, etc?
  • Are all the tasks assigned to the same person? Given that these projects are large and cross-functional, I'd guess they aren't? How do you imagine the UI for choosing which users they're assigned to working?
  • Suppose you tracked this by making one task for each project with a big checkmark list, like this:
  • Fill the carafe with water
  • Change the filter
  • Check the oil level

You could copy-paste this in like 10 seconds instead of multiple hours. What are the major problems you'd encounter representing the projects like this instead? That is, why is spending hours making tasks a better solution than representing tasks in a very lightweight way?

Copied, from T7605, but I do something similar to this.

The way my install handles this is by composing task creation URL's which set a lot of the fields. Then we throw this onto a panel in the default dashboard.

So we have a link like "File Product Bug" which opens up a ticket template, prepopulates CC's, projects, and message template. You could put this into the project's main page.

As an example, I have the following link in a panel labeled: "Run SQL"

/maniphest/task/create/?title=run sql - XXXXXX&priority=50&assign=seth&projects=ops_tasks&description={rSQL%23%23%23%23}%0A%0A%0AStatus%3A%0A[] applied to live%0A[] applied to backup%0A%0A----%0ATables%2Fschemas to backup before applying%3A%0A- table1%0A- table2%0A%0AServices to bounce%3A%0A- app1%0A- app2

My comments are inline.

Can you give me a better idea of what these huge, extremely similar projects are? I can't come up with any guesses from my experience, and the categories don't precisely sound like operations or software engineering. I've never heard the term "Fitout" before and Google is only giving me hits in the context of interior design.

This is precisely my problem. These are not software engineering or operations projects, they are physical construction/buildout projects (offices and datacenters). Phabricator is not the right tool to manage these efforts, but it is what are using.

Is this approach ideal? That is, is the best way to manage this work definitely human execution of 130 tasks, or would many of them be automated or represented differently in an ideal world? From experience, I'd expect an operations workflow with 130 steps to be heavily under-automated; I'd expect a manual QA workflow with 130 steps to be way too large in scope, etc.

Ideal? Debatable. But, there are many things to track, done by a host of different people. These are not automatable tasks.

How large are the individual tasks? Are they essentially checkboxes (like "Add a DNS record" or "Fill the carafe with water"), or are they complex human-intelligence tasks which often, e.g., require individual discussion, reassignment, prioritization, reorganization, etc? That is, is a full task for each step usually the right "size"/"complexity" of object, or is a task often much larger/more complex than necessary (e.g., are most steps straightforward with little or no discussion, and a checkbox would be good enough)?

Task size/complexity varies, although most take at least a day and, at the upper end, a month or more.

Is assignee always the only value you ever want to parameterize? You don't need to parameterize names, details, priorities, projects, etc?

Are all the tasks assigned to the same person? Given that these projects are large and cross-functional, I'd guess they aren't? How do you imagine the UI for choosing which users they're assigned to working?
No, there are 10-12 people across different teams to whom tasks are assigned.

Suppose you tracked this by making one task for each project with a big checkmark list, like this:
Fill the carafe with water
Change the filter
Check the oil level

This wouldn't work. Tasks need to be discreet, as assignees on other teams need to track them on respective workboards

bryceburnet claimed this task.
angie moved this task from Restricted Project Column to Restricted Project Column on the Restricted Project board.Aug 14 2015, 8:36 PM