Joget DX 8 Stable Released
The stable release for Joget DX 8 is now available, with a focus on UX and Governance.
Table of Contents |
---|
English |
---|
In this article, we will discuss various process designs with performance and user experience at the back of our minds. |
Figure 1: Process Flow with Long Running Tools in Between Activities
...
We will discuss possible solutions to eliminate the need to wait for the users.
Use Multi Tools and have all the tools placed under it. It is important to set the Run Mode to Run tools sequentially in a new single thread.
Figure 3: Multi Tools with New Thread
Since the tools will run in a new thread, Joget will not wait for it to complete and move on to Activity 2.
In this solution, we are adding a parallel route and a new activity (Activity 3).
Figure 3: Process Flow with the use of synchronous deadline
...
Activity 3 is used as a dummy activity and mapped to a dummy user to serve as a "checkpoint" so that users do not need to wait at the "Please wait..." screen.
Upon completing Activity 1, the user will see Activity 2 immediately without the need to wait for all 3 tools to execute as shown in Figure 4 below.
Figure 4: Process Flow with the Use of Synchronous Deadline
The tools will only be executed upon the maturity of a synchronous deadline. This will not interfere with the end users' screens and they do not need to wait for their executions.
Figure 5: Process Flow with the Use of Synchronous Deadline - Deadlines
This solution is viable if Activity 2 does not have a dependency on the outcome of the tools' executions.
Read on how to handle the use case where executions of tools are needed in order to move to the next activity.
By retaining the synchronous deadline in Solution 1 earlier, upon completing the assignment Activity 1, users will be able to inbox listing or wherever they came from and continue their work as shown in Figure 6 below.
The tools will start executing upon deadline maturity and Activity 2 will only be created after that.
Figure 6: Process Flow with the Use of Synchronous Deadline to Cater to Dependency on Tools' Executions