End to end control
Business process management (BPM) is one of those software technologies for which great claims are made, but which few people understand.
The grand and simple idea is that BPM software can be used to manipulate end-to-end automated and coded processes, in the same way that database management systems (DBMS) can be used to manipulate data. That should make it easier to write and change software – once the complex groundwork in process definition has been done. Among those at whom the technology is targeted, a small group of advocates sees BPM as truly revolutionary; a larger group, including many customers and users, finds it promising if not genuinely useful; and a much larger group simply does not understand it.
This last fact is partly because BPM involves some complex underlying ideas, even if its ultimate goal is to dramatically simplify the experience of managing IT. But it is also exacerbated by the fact that BPM is one of a cluster of overlapping technologies that fall in the nebulous area of middleware – software that links applications together to form end-to-end automated processes.
The Big Vision
The long term vision of the BPM evangelists is that business processes will become as manageable as data is today. Businesses will be able to use BPM systems, often using workflow-type techniques, to integrate existing applications together, to link web services together, or to construct or deconstruct processes from scratch. Importantly, they can also involve humans in the process – this is not just about application integration.
At the top level, Business Process Modelling Notation (BPMN) is a language for modelling processes and translating models into a lower level execution language. This lower level language will enable any participating system to exchange descriptions of business processes – the first step to interchangeability of processes between applications or models. The main candidate language today is BPEL4WS (business process execution language for web services).
It is also important for process databases to be able to manipulate processes.
A new language known as business process query language is being developed so that applications and programmers can use the facilities in the same way most programs today use the facilities of a relational database.
Effective BPM will ultimately require the development of a major new class of software – the business process management system (BPMS). This will serve the same role in process computing as databases do today in data-centric computing.
A BPMS will be complex and may contain tools from a variety of vendors, all integrated together. Among its functions: to draw on all available systems and services and integrate these as parts of business processes; to automate routine business processes; to manage processes from a single system; designing new processes and redesigning existing ones (using modelling tools); deploying new processes by executing code or interacting with underlying systems; and providing tools for optimising and analysing processes.
Crossing the Chasm
BPM is often viewed as an emerging technology – but that only applies if the stricter, more purist definitions are used. Hundreds of companies are using BPM today.
Most of these link underlying applications together through a workflow product. These cross application models are modelled using a workbench and are stored in a process engine. The effect on productivity can be dramatic, especially when re-engineering work is involved. Examples include processing of insurance claims, provisioning new customers for telecoms services, dealing with planning applications, and managing employees and customers. Many suppliers offer templates for certain common processes.
As the technology matures, the range of case studies is increasing, with less predictable and more intricate processes being managed by BPM systems.
Processing Pearls of Wisdom
"The purpose of BPM is to avoid writing, or generating, more software, its central thesis being to remove ‘process' from software as completely as possible, creating a new form of ‘data' that can be manipulated on a scale previously unimaginable."
Howard Smith, CSC CTO and passionate advocate of BPM.
"When you start to fiddle with business processes, you are touching raw nerves."
Katy Ring, analyst, Ovum
"If you replace a hand with another hand, no matter how good that hand is, the body rejects it."
Keith Whittingham of insurer Swiss Re warns that BPM is hard to sell to programmers. But, he adds, it's easier to sell to the business side.