By Peter Hilton
Another new feature in the recent Effektif 3.0 release makes it possible to re-use decisions within a process, using process variables. This article explains what that means and shows you an example of how you might use this feature.
For this tutorial’s example, suppose that you’re using Effektif to keep track of proposals that your sales team sends to customers, using a process called ‘Send Commercial Proposal’.
Instead of selling standard products or services, some companies send the customer a custom proposal for every sale. To keep track of the sales pipeline, these companies typically use some kind of tracking tool.
If you’re using Effektif to manage this sales process, you might start with a basic process that consists of a one or two tasks. There’s no complex process here, but it’s still useful to have an overview of cases.
After using this process for a while, you might discover that you sometimes have a different process for larger opportunities.
It might turn out that the process has extra steps, for ‘large’ opportunities – bigger sales that are worth more sales effort.
For example, you might assign a larger team to work on the proposal, and add an extra management review step before sending the proposal. A sales team will typically qualify the size of an opportunity, in order to prioritise sales efforts, and choose between these two process variations.
You can add this qualification task to the start of the process, to decide whether this opportunity is large or small. The decision is modelled here as an exclusive gateway that forks the process flow:
Now the decision – the choice between large and small – determines whether the ‘Assign proposal team’ task will be added. However, you also want to use this decision to only include the ‘Management review’ task for large opportunities, without adding the same manual decision to the process a second time. This is where you can use a decision variable.
If an Effektif process model includes a ‘Customer name’ field, you can refer to the ‘Customer name’ elsewhere in the process, either to display the entered value on another form, or to use the value in an automatic decision’s condition. In Effektif, these reusable values are called variables.
When an Effektif process includes a decision, there is also a variable that holds the result of the decision. In this example, the first decision determines the ‘Size’ (of the sales opportunity): there are two choices, so there is a variable called ‘Size’ that has the value ‘Large’ or ‘Small’.
This model has a second decision after the ‘Write proposal’ task, labelled ‘Size’. This exclusive gateway branches to the ‘Management review’ task is added if the Size is ‘Large’. To make this work automatically, configure this as an Automatic decision that uses the value of the Size variable, set by the Manual decision at the start of the process.
This configuration sets the workflow to continue with the ‘Management review’ task when the value of the Size variable is ‘Large’ – the result of the first manual decision. The default condition is to continue to the ‘Send proposal’ task, via the unnamed final exclusive gateway that joins the split flow.
Re-using a previous decision is just one way to use decision gateway variables. Other modelling patterns are possible, such as combining multiple manual decisions into an automatic decision that depends on whether some or all of them have a particular value. The possibilities are, as they say, endless.