PerfectApps

How Defining Task Dependencies Improves Forms and Workflows

The foremost principle behind creating effective and efficient workflows is that complex tasks must be broken down into discrete steps.

It sounds easy, and in many cases it is. But what if some steps depend on the start or completion of other steps? And what if one step involves the initiation of a whole new workflow? Here’s how task dependencies work. Understanding them can help you design your forms and workflows to minimize unforeseen issues and get them into operation more quickly.

Finish to Start Dependencies

Finish to start dependencies are the most common types of task dependencies your workflow software will deal with. It means that one step or task cannot begin until the preceding task finishes. A cake makes a good analogy here. You can’t begin frosting the cake until the preceding step (baking the cake) is finished. In other words, you have to finish this to start that.

Start to Start Dependencies

With a start to start dependency, a second task doesn’t begin until the preceding task has started. That preceding task doesn’t necessarily have to finish, but it must have begun. Staying with the cake example, you may find that the most efficient workflow is to make the frosting while the cake is baking. Therefore, the baking must begin before the frosting-making begins.

Finish to Finish Dependencies

Sometimes one task cannot finish until another task finishes. The two tasks may or may not be done simultaneously. In other words, the second task may finish any time after the first task finishes. Suppose there are some finishing decorations to our cake that we can’t finish until the cake is delivered. We have a finish to finish dependency between “decorate cake” and “deliver cake.” If the “decorate cake” task is finished, then we know that the “deliver cake” task has been finished.

Start to Finish Dependencies

Person sending an email.

You can start the billing process before other tasks, but you generally
won’t send the invoice until some later step in the overall process is completed. 

Start to finish dependencies are trickier. The first task doesn’t finish until sometime after the second task starts. Say we’re making our cake to order. We start the billing process when the customer places the order. But we don’t complete the billing process until after the cake is on its way to its destination. In other words, once the “deliver cake” task begins, the earlier “bill customer” task can finish.

Here is a summary table.

Name of Dependency Definition Example
Finish to start Step 2 begins when step 1 concludes You can’t frost the cake until baking the cake is done
Start to start Step 2 begins when step 1 begins You can make the frosting while the cake is baking
Finish to finish Step 2 can finish any time after step 1 finishes You finish final decorations after the cake is delivered
Start to finish Step 1 doesn’t finish until sometime after step 2 starts You initiate billing for the cake first, but don’t finish billing until delivery of the cake begins

Parent-Child Workflows

Parent-child workflow dependencies are simply when one workflow kicks off another workflow. The child workflow won’t be initiated unless the parent workflow is happening. Our start to start dependency listed above could be viewed as a parent-child workflow dependency: putting the cake in the oven to bake kicks off the workflow of making the frosting.

When you understand the relationships between steps in a process, it’s easier to time them for maximum efficiency. And when your workflow software has an intuitive user interface, dragging and dropping discrete task elements into place and testing them is easy.

PerfectApps offers just such a drag-and-drop user interface, so you can create the most efficient custom workflows without having to program. You can find out more about how it works by having a look at some of our training videos, especially “Process Planning” and “Workflow.” And if you have questions, we encourage you to contact us at any time.