Creating and managing task dependencies

When using Trello, you might need to work with task dependencies when the completion of a task requires prior completion of other tasks. With Butler, you can easily automate the management of such tasks to supercharge your Trello workflows.

Task dependencies overview

Typically, the task's dependencies can be:

  • Sub-tasks: a task is broken down into smaller tasks. When all sub-tasks are completed, the task is completed. For example, sending a product update email to customers might involve developing several email templates, each consisting of different elements. 
  • Prerequisites: a task requires some other task(s) to be completed before it can start. Once all prerequisites are complete, the task can start. For example, you cannot roll out a new feature until it is fully developed. 

An example task dependency chart: red lines depict prerequisites, green lines depict sub-tasks.

Trello doesn't have a built-in task dependency management, but you can use such elements as checklists and link attachments to represent and manage task dependencies. This allows you to develop the system in which: 

  • each task has a list of its dependencies.
  • the tasks are linked so it's easy to jump to a dependency and back.
  • when the dependencies for a task are completed, the task can be automatically moved to a new state.

Representing task dependencies in Trello

If you need to represent task dependencies in Trello, we recommend using the following system: 

  • Store each task in a Trello card.
  • Store the task's dependencies as items in a checklist on the card.
  • If your task has both pre-requisites and sub-tasks, separate them into two checklists.
  • In a dependency checklist, link each item to a card on which the task depends.
  • If the card depends on the linked card, add a link back to the former card in the attachments. If you have two cards— a dependent and a dependency—do the following:
    • In a checklist on the dependent card, add a link to the dependency card.
    • In the attachments of the dependency card, add a link back to the dependent card. 

Let's see it in action on a Trello board:

Automating task dependencies with Butler

Note: This section shows examples for managing task dependencies with Butler commands. 

Automate dependency links 

Instead of manually creating dependency links, you can automatically create them with two Butler Rules:

  • when an item is added to checklist "Sub-tasks" by anyone, convert the item into a linked card
  • when an item is added to checklist "Pre-requisites" by anyone, find a card titled "{checklistitemname}" in list "Project Tasks", and link the card with the item

Start the project with task dependencies

You can create a Card Button command to move all sub-tasks of the current task to a particular list such as "In Progress":

for each card linked from an incomplete item in checklist "Sub-tasks", move the card to list "In Progress"

Automate card state changes

When a task is completed, you can use Butler to automatically update the state of the card(s) that depend on it:

  1. Create a Rule that will check the corresponding checklist item(s). The next command will also add a comment with some tracking information—this action is optional and can be skipped.

    when a card is moved to list "Completed" by anyone, for each card linked in the attachments, check item "{triggercardlink}", and post comment "Dependency {triggercardlink} was completed on {date} by {username}."
  2. Create a Rule that will automatically change the state of the task when all dependencies are fulfilled (when the dependency checklist is complete):
    1. Sub-task completion means the task is completed:

      when checklist "Sub-tasks" is completed, move the card to list "Completed" and post comment "All sub-tasks completed on {date}."
    2. Prerequisite completion means the task is ready to be worked on:

      when checklist "Pre-requisites" is completed, add the yellow "Ready" label to the card and post comment "All prerequisites completed on {date}."

Let's see it all together:

Update dates of sub-tasks

When the date for a task moves, you might need to update the dates of all sub-tasks. This can be either a due date or a date in a custom field. For example, if the start date of a task is delayed by a week, you can move the dates of all the sub-tasks by the same amount of time:

when the due date is moved in a card, for each card linked from an item in checklist "Sub-tasks", move the due date by the same amount of time

Variations for representing task dependencies

The previous examples show a basic system for managing task dependencies with Butler. Trello and Butler give you enough flexibility to create a custom system that evolves to adapt to the way you work and to your organization's needs.

For example, you can use the following task dependency systems:

  • Have a separate list for all cards that are waiting for prerequisites.
  • Automatically assign tasks to users at certain stages.
  • Have alerts or email notifications for when due dates are not met.
  • Store task durations in a custom field and set the due date automatically based on this duration from the moment the prerequisites are completed (use custom field variables to specify the amount of time by which to move the due date).