By Peter Hilton
There are many ways to apply a process model. Implementing a process in computer software is just one possible application. After all, a lot of work gets done without using computers to tell people what they need to work on.
If you do implement a process model in a software system, there is more than one kind of end result. You might end up with any one of:
These approaches have different benefits and costs. It is not the case that one size fits all, and so each one deserves a closer look.
The most basic kind of process software is an ad-hoc solution using office tools, principally spreadsheets and email. This is by far the most common approach.
For example, you could manage order fulfilment in a spreadsheet, with one row per order, and order details in the first few columns. While working on the order, you could email different people to ask them to do various tasks, such as checking stock levels. Later on, additional spreadsheet columns would record completed tasks, such as the order shipment date.
With this approach, you can get started with tools you already have. With a small enough number of cases, and everyone in the same room, you can use the same approach with an overview on a whiteboard and verbal communication.
However, ad-hoc solutions quickly become unwieldy, error prone and expensive when more people handle a larger number of cases. Also, since there is no explicit workflow, quality suffers when people forget to do things. Spreadsheets aren’t a great tool for shared use by multiple people, and getting too much email is just as time-consuming as writing it by hand.
When you want better access to shared information, and automated notifications, then it’s time to consider a workflow tool.
The next kind of process software is a lightweight workflow platform that executes a simple process model with a standard user interface and basic integration capabilities. In Effektif’s case, the software runs in the cloud and provides a web interface.
A workflow tool gives you a user interface for specifying a repeatable process, such as an order fulfilment process, and ‘executing cases’ – handling customer orders. Instead of using a spreadsheet to enter information, you define forms for entering order details in the web interface. Instead of entering status information manually, completing tasks automatically updates the workflow status, and records dates in a timeline.
Automatic notifications keep the right people informed about the progress of each customer order. Effektif sends email notifications to the participants when one of them creates an order, completes a task, adds a comment, or interacts in some other way.
The benefits of a simple workflow tool are increased automation: specifying your processes means that the software can do more work for you by structuring information, presenting it more clearly in the context of a specific case – such as a customer order – and handling details like notifications, access permissions and integration.
Simple workflow tools also have limitations, and Effektif is no exception. The simplification that makes the software easy to use means, for example, that process model diagrams only support the most commonly-used features of the standard Business Process Model & Notation (BPMN).
A heavy-duty Business Process Management System (BPMS) avoids the limitations of simpler software. For example, it may support all of BPMN, and provide more options for customisation and systems integration. A BPMS usually has more management and reporting functionality, to support the ‘management’ part of BPM. Similarly, an ‘Intelligent BPMS’ (iBPMS) adds data analytics support.
The benefit of a heavy-duty BPMS is that this software category aims to support all of the features that you require, and gives you far more flexibility in how you automate processes.
The clear disadvantage of these additional capabilities is far higher costs in several areas:
A BPMS isn’t the only approach for implementing BPM automation without any limitations. You can also build your own software.
Finally, custom software development makes everything possible, provided that you have access to a good software development team. A software team can either build business process software from scratch, by hard-coding the process in its application logic, or use an embedded process engine – part of a developer-centric BPM platform.
Compared to simplified workflow, custom software has similar benefits and disadvantages as a BPMS – high flexibility and high costs – with the choice between the two often a philosophical or cultural consideration as much as anything else.
As with most (or perhaps all) kinds of software, there’s more than one way to do it. A one-size-fits-all solution would be nice, but there are too many orders of magnitude price difference between the various approaches for that to be realistic. In practice, this means that you either adopt one of the more cost effective approaches, or adopt an expensive BPM platform and end up using a simpler solution most of the time anyway.
This blog post is part of the Workflow management for beginners white paper.