<img height="1" width="1" style="display:none;" alt="" src="https://dc.ads.linkedin.com/collect/?pid=287945&amp;fmt=gif">

Workflow Process Distribution-Why It Matters

Posted by Dileepa WIjayanayake on Nov 12, 2018 7:49:00 PM

Today, FlowWright's workflow process platform automates processes in various domains and across multiple systems.  In order to perform at the expected speed across systems, FlowWright uses loosely coupled and intelligently integrated methods to achieve this.


Within the Pharmacy domain, FlowWright allows clients to process 500,000+ prescriptions one single day.  In order to processes this many drug prescriptions, FlowWright uses complex automated processes that take use of asynchronous steps.  What are asynchronous steps?  They are steps that tell an external system to perform the operation and the step goes to sleep immediately, and also making the parent workflow instance also to go to sleep.  Remember, unlike other workflow products, when an particular workflow instance within FlowWright is sleeping, it consumes zero resources.  When the external system performs the operations, the external system tells FlowWright the complete the sleeping step and to continue the workflow process.  Typically, operations such as Optical Character Recognition (OCR) can be offloaded to an external system to perform.  Prescription processing utilizes many asynchronous steps to perform operations in multiple external system, including running these steps in parallel within the workflow process.

Another way to distribute your process is by utilizing sub-processes, or sub-workflows.  These not only give you a better design that is hieratical, but also makes some of the processes reusable for future use cases.  FlowWright gives 2 options for sub-workflow: asynchronous and not asynchronous.  In the case of asynchronous,  a parent workflow will wait until the sub-workflow has completed to execute the next step on the parent workflow.  In the case of not asynchronous, a parent workflow executes and sub-workflow process and keeps executing the next steps within the parent workflow.  Given FlowWright’s engine architecture, each workflow process it executed by an engine child processes, giving the workflows utmost performance and environment resource management. This offers extreme time + costs savings to clients and positivity impacts their day-to-day processes. 

Another method our customers have expressed use and interest in process distribution is to have certain workflow steps run on certain machines.  This is on our product development plan, and can be done today by having a step that makes a REST API call to a certain machine to perform the operation. This way all processing of that step is transferred from the FlowWright application server to the external server.

As they say there are many ways to skin a cat, the same is true in workflow process automation.  FlowWright has many built-in processes distribution mechanisms built into the product, and this added feature greatly improves our customers ability to process 1000’s of instances each day with utmost performance, reliability and repeatability

Try FlowWright for FREE for 30 days! CLICK HERE 

New Call-to-action

Topics: .Net API, async workflow processing, Optimize BPM workflow performance