When most people think about workflow they may think about a manufacturing process on a production line. And that’s really where the whole concept of workflow got started — when business and academic minds worked jointly to improve and control a process. Today, Workflow Management Systems (WFMS) have evolved to help manage the collaboration of individuals in a front office business process.
A Google search on this topic will retrieve literally hundreds of WFMS software packages. Selecting the right package for your company can be a daunting task. Two questions I hope to answer are: “What is a WFMS?” and, the primary focus of this article, “What functionality and capabilities should a WFMS provide for it to be impactful?”
Let’s briefly try to answer the first question – “What is a WFMS?” Simply speaking, a WFMS is a software tool that allows individuals in a company to collaborate and automate one or more business processes. Workflow management systems also automate redundant tasks and ensure that uncompleted tasks are followed up. The final statement in this definition directs you to another very important function of a WFMS – visibility. Visibility into a process so that escalation can be performed on a process step, if needed – and visibility into performance metrics that can be analyzed to determine if the process needs improvement.
Let’s look at a simple workflow process that would be common to many companies. The diagram below shows a defined business process that has a number of department users and a series of process steps which dictate how the workflow can be advanced. At each step the users have a pre-defined set of choices, where they may choose to advance the workflow either forward or backward. The goal is to reach the end of the business process as efficiently as possible. A WFMS should help facilitate this process by providing these users with a list of their tasks – and highlighting tasks that need immediate attention based on configurable measures. Managers should have an overall view of the tasks for the employees in their department that may highlight an employee that is over-tasked or under-performing. Executives should be able to see overall metrics showing the successes and failures in the process flow using an executive dashboard.
Now that we have a basic understanding of what a WFMS is, let’s answer the question “What functionality and capabilities should a WFMS provide for it to be impactful?” In the checklist below I’ve listed what I feel are key feature and functionality requirements for a WFMS and why.
Ability to fully integrate with your company’s line-of-business application
This requirement is critical to the successful implementation of a WFMS. If the WFMS is a bolt-on application where the user has to switch between the WFMS (to advance a workflow step) and the line-of-business (LOB) application (where the user performs the bulk of their work), the user will see this as additional work and inherently fight the process. The WFMS has to act as the gateway to the LOB application and not an outside entity. It should allow you to configure access to one or more of these application screens/forms so the user has easy access to what they need for the current workflow step. Access to these LOB screens should be controlled by authority levels for each user within the WFMS. For example, one user may have access to all the Credit Release evaluation screens except for the Credit Release override screen, which a manager-level authority may provide. Optionally, the interface between the WFMS and the LOB application could be driven by data obtained within the WFMS and delivered to the LOB application via Web services.
Ability to create and configure simple or complex processes
The WFMS you choose should provide ultimate flexibility in how you create/configure your workflow steps, as most workflow processes are not as simple as defined in the diagram above. Most workflow processes have to provide parallel process branches that may or may not recombine later based on a set of user-defined rules.
Intuitive and quick workflow process creation
The user interface for creating and configuring the workflow process should be intuitive and easy to follow. You will find once you create a workflow process that other processes may be similar, so you should be able to copy an existing process and modify as needed. Some WFMSs allow you to graphically define your business process workflows in a Business Process Model Notation (BPMN) diagram.
Ability to consume standard BPMN business process models developed with third-party software tools, translating the XML into database structures
Your company may have the need for the WFMS to consume a BPMN diagram created by a third-party tool that can help expedite configuration of your workflow processes. Some WFMSs actually allow you to create BPMN diagrams as part of the workflow process definition.
Processes can be enabled for either parallel or sequential single-, group-, or multi-tiered approval
A workflow process can be a simple set of sequential steps for a single user within each department. More commonly, a workflow process may start with an individual but may then advance to a group of individuals (roles) within a department. A WFMS should be flexible enough to not only allow sequential business processes, but also allow you to configure parallel workflow processes for a user or role. These parallel processes should then be allowed to merge back together to a single sequential process based on the successful completion of those individual process branches (see diagram below for details).
Role (Group) load balancing
At a minimum, a WFMS should be capable of allowing all users within a role to draw from the pool of tasks for that role, or perform automatic task load balancing for all users within a given role.
Enables subsequent checklist of activity within each workflow step
Defining checklists is a popular way of making sure a user has completed all the tasks for a workflow step. Checklist items can require manual user acknowledgement or include automated processes such as checking to see if all the required document/file(s) were attached to a given workflow step. The workflow process should not be allowed to advance until all the items have been checked, unless authority is given to the user to do so.
Role-based routing and task transfers of workflow
Unfortunately, there is always the need to have an exception to any rule. This exception may require transferring tasks to different users or roles. A manager may transfer a task from one user to another within a given role group. Or there may be a need to transfer a task to a different role altogether. Either way, the WFMS you choose must be flexible enough to allow exceptions to any process.
Task status indicators to flag processes that have various levels of urgency
All WFMSs should provide a way to flag statuses of a workflow task based on a number of configurable criteria. It’s important that a user knows which workflow tasks need their immediate attention. There can be a number of visual highlights that can draw attention to these tasks including color coding, priority sorting, icons, etc. For example, color coding task rows as Red is critical, Yellow is caution, with all other tasks in the list being in a normal status. These flags may be triggered based on time (latency) or a more complex set of business rules.
Configurable email notification and reminder capability
A common notification method within a workflow process may be to send an email to one or more internal or external recipients. Notifications may not be limited to just emails. Email content should be configurable and allow you to generate emails using a template with substitute variables from the WFMS or your LOB application. You may have the need to send an alert via SMS (text) to one or more recipients. Make sure you understand your requirements here before you make your selection.
Automated document generation based on configurable and predefined templates and supporting LOB data mapping
There is often the need to automate the task of creating Microsoft Word or Adobe PDF documents. For example, in a Credit Release process step the credit analyst is approving credit for a product based on a predetermined timeline of prepayments before the product is shipped. A payment contract could then be automatically generated by the WFMS based on a template that is merged with customer variables located in the WFMS or the LOB application. This relieves the user from having to type these documents from scratch and improves response times and efficiency for that task.
It’s important that your WFMS keep track of all the processes that have been completed and by whom, so you have an audit trail you can follow and analyze if needed. The audit trail should comprise a full set of time, date and user metrics so that proper analysis can be performed.
Management dashboard for performance metrics
The audit data mentioned above can also be summarized and analyzed for use by a Management Dashboard that can graphically display performance information about a workflow process. This can be helpful in determining where your bottlenecks are within a process.
Allow for multiple user interface deployment options
In the ever changing landscape of IT the WFMS has to allow flexibility in its offerings for a user interface. At a minimum you should be able to select either a Windows- or Web-based interface to drive the application. Optimally the application should have program interfaces such as .NET classes, or Web services for advancing and managing workflow, giving the company the option to automate one or more workflow steps.
Support all the popular Relational Database Management Systems
The WFMS should support all the popular Relational Database Management Systems such as Oracle, Microsoft SQL Server and IBM DB2.
Options for server O/S and hardware deployment
The WFMS should support all the popular server platforms such as Intel, Linux and iSeries.
If you use the checklist above balanced against your company requirements you should be successful in selecting a WFMS that is right for you. I also recommend you read some case studies to see how other companies have used a WFMS and how it impacted their ROI. Once the WFMS is properly configured — and seamlessly integrated with your LOB application — you should obtain savings through improved efficiency, reduced errors and enhanced overall performance.