Patterns in a Business Workflow Automation System
In a commercial entity usually hundreds of business processes occur on a daily basis for deriving economic benefits. Several business processes include information systems, humans, networks, and paper trails for completion of the processes from their start to their finish. In order to improve productivity and for proper record-keeping more and more of these processes are being digitized. While business process management software helps manage business processes, business workflow automation systems are key enablers of digitized business workflows where all transactions are electronic which helps enforce accountability, data integrity, and non-repudiation. Moreover, electronic databases can store all activities in the workflow for future audit and process improvement activities. In our experience with business workflow automation systems’ development we identified ten basic patterns of electronic workflows that are essential to business processes in several organizations. These patterns are described below. Also described later are a few of the features of dMACQ’s own workflow system where some of these patterns are embedded.
When describing the workflow patterns we used symbols as mentioned in the legend below.
1. Sequential Pattern
This is a linear pattern with fixed steps where one step follows the other. This is applicable for simple workflows. An invoice payment is an example of this: invoice is submitted to Finance for payment, the Finance department verifies that the service or good has been provided, issues the check, and then mails the check to the vendor; these steps are in sequence.
2. Single Feedforward Pattern
Here there is a path from one step to a step that is more than one step away from the current one in the process. Let’s consider this sequence: invoice is submitted to Finance for payment, Finance department issues a check, and then mails the check which is then received by the Customer. The Finance department also sends an intimation to the Customer by email - this intimation is an example of feedforward pattern since there are now at least two paths out of the Issue Check activity, with one path going to the next stage and the other path going to a future stage in the process.
3. Single Feedback Pattern
If there is a path from a future step to a preceding step then a single feedback pattern exists. Let's take an example of a legal contract where specific clauses of an agreement are prepared by the Legal department as an initial workflow step and then sent forward to a Commercial approver. The Commercial approver reviews and sends his revisions to the preparer. If the Commercial approver has no revisions to make then the agreement is sent to the Vendor.
4. Multiple Feedforward Pattern or Parallel Workflow Pattern
There are multiple paths leaving a step in a process and going to steps that are not immediately the next one in the sequence. Multiple steps originating from a single step is also called as Parallel Workflow Pattern. Businesses often require urgent/immediate/escalated approval processes such as, for example, urgent provisioning of raw material for unplanned production needs. In such situations, authorised users can move the workflow to multiple business approvers and take simultaneous approvals. As shown in the figure below, upon receipt of payment by the Accounting department, both the Customer and the Warehouse are informed, the former for confirming receipt, and the latter for making the shipment.
5. Multiple Feedback Pattern
There are multiple paths leaving a step in a process and going back to one or more previous steps in a work-flow. Collaborative-work situations especially in document preparations for e.g. tender documents, agreements, contract etc. are use cases where such multiple feedback patterns are commonly applied. Real-estate, construction, and infrastructure/project businesses typically work on large contracts and documentation where multiple functions need to provide inputs to a common document. As shown in the figure below, after the Finance department verifies salary impact, this is informed to both HR and the Employee who are in the earlier steps of Leave Request workflow.
6. Multiple Termination Pattern
Termination of a workflow can be linked to an approval, rejection, or even a hold for that workflow transaction. Further, such termination options for individual patterns can be provided to approved users at desired workflow steps. Mostly all business workflows will need such multiple termination pattern to align with the day to day operation and business decisions. As shown in the figure below, the vendor agreement may be terminated by either Purchase or Legal before approval by the Finance department.
7. Loops Pattern
Workflow which is set to follow a looped pattern from the origin followed by parallel or sequential patterns to end with the originator of the workflow. Such loop patterns are used in law firms, consultancy projects, etc where single document controller handles the transaction. The example shown in the figure below depicts multiple flows along the same paths due to a loop: Customer requests a contract, based on which the Law Associate drafts the contract, which is then approved by the Attorney and then sent to the Customer for approval; if it is not approved then the contract goes through revision and approval cycle again until the Customer accepts the contract (this can be a multiple termination pattern as well).
8. Form Creation Pattern
Forms are used to collate a bunch of data that is routed in a workflow for approval. Form creation pattern includes data entry field creation, review, and approval of specific fields or forms. Use of form creation pattern is common in workflow associated with account opening forms, know your customer (KYC) documentation, trade advance etc. The example given in the figure below shows the KYC process: when a potential customer’s documents are initially received, the Customer Support creates the basic form in the CRM; this initial form may be updated later by the Verification Team based on background checks or other information regarding the customer; this form is then approved by the Manager at which point the form is stored in the CRM for future reference and the potential customer is either approved or denied.
9. Email/Messaging Pattern
Email and messaging patterns are communication elements of workflow. This pattern associates email triggers with the events of the workflow. For example, on approval of a form in a workflow, an email or message can be triggered to a specific user. The helpdesk ticket resolution process is shown in the figure below: when the ticket is first created by the user, it goes to the Helpdesk for triage; if escalation is required an email is sent to the Tech Support for Level2 (L2) Support; if further escalation is required, an email is sent to the Engineer for L1 Support for fixing the problem. Subsequent steps in the workflow are invoked through emails.
10. System Integration Pattern
Data needs to flow into workflow or pushed out of the workflow from/to enterprise systems in a seamless manner. System integration requirements to fetch or push data is a central need for effective workflow management. Integration with external information systems or the Internet may be required. The figure below shows how upon receipt of a payment, the Accounting department verifies the payment using Tally software, after which the Warehouse checks out the inventory in SAP system and sends the item to Shipping which uses the UPS system to courier the package to the customer. At each step either one or more external systems may be involved.
Besides these basic ten patterns there are several complex patterns including combination patterns, workflow splitting patterns, and workflow joining patterns; in a combination pattern several of the patterns discussed above happen simultaneously such as loops within loops or forms inside loops. In a workflow split pattern, a workflow splits into several parallel workflows; similarly, in a workflow join, multiple workflows join into one.
dMACQ’s Workflow Automation System
dMACQ makes business workflow automation systems. An example workflow user interface is shown in the figure below. The workflow name is ‘Exerion-28’. There are three actors in this workflow: Initiator, Fin Approver, and Bus Approver. The green circle indicates completed step while red circles with halos indicate next steps (here two steps in parallel indicated by the “shuffle” symbol next to the actor’s name). The red circle without the halo indicates a future pending step. The workflow record is also captured below the workflow animation.
The workflow above consists of several business patterns: a sequential workflow pattern, multiple feedforward pattern, and a loop. Here the origination step and termination step are the same, and the paths in the loop can be traversed several times. Steps 1 and 4 in the figure above belong to the same actor: the Initiator. The equivalent diagram with patterns is shown below.
dMACQ system also allows users to update the status of a step with comments as shown below. The status can be set to one of the predefined processes: approve, approve with forward (to next step in the process), reject with forward, reject with backward or simply reject. Comments can be added as well.
dMACQ system also allows users to view the activity log as shown below. The activity log shows the step (or actor), the user who performs the role of the actor, the status of the step, the time stamp when this status was updated, and any comments posted by the actor.
Administrators and workflow owners can also see the global view of their processes as shown in the figure below. Workflow summary and open items with drill down ability are provided.
Business process automation software helps to automate key business processes. There are repeating patterns in business processes identification of which helps to significantly improve the capabilities of the automation software. In this white paper, we presented ten common business automation patterns including sequential pattern, single feedforward pattern, single feedback pattern, multiple feedforward or parallel workflow pattern, multiple feedback pattern, multiple termination pattern, loops pattern, form creation pattern, email/messaging pattern, and system integration pattern. We also presented some of the features available in dMACQ’s own workflow automation software where several of these patterns and more are available for configuration. We hope the reader has a better appreciation of business workflow automation software after reading this white paper.