An interesting question was raised at the recent Lombardi Driven 2008 Conference.
The question was (and I paraphrase):
I am new to Teamworks, but I have a number of content management, asset management, approval and other systems that all have workflow features. How do I know which workflow tool to use and where does BPM fit in the whole picture?
I got to thinking about this question, and the simple fact is.
Pretty much any enterprise class application suite that manages any business assets, will include some form of task routing or workflow feature. They must have in order to define and enforce the business rules for the assets in question.
So, it's pretty easy to understand how someone new to BPM has a hard time determining what is special about BPMN diagrams and BPM in general. Especially if you are being introduced to BPM from the perspective of the vendor tool.
So, what is the answer?
In my opinion, the appropriate tool really depends on the domain of influence for the application.
Let's take a portion of a simple on-boarding (everyone loves on-boarding) process.
In the above process there are at least three systems that would likely have a workflow engine as part of their feature set:
- Document Management System.
- Identity Management System.
- Badge/Access Control System.
Likely, it would be possible to build out approval, escalation and task assignment for the entire process in any one of the above tools. It may not be pretty, or efficient, but quite possible.
So, let's ask the question again.
What is the appropriate tool, and where does BPM fit?
I think it is obvious the management of offer/acceptance letter and employment contract should be handled using the workflow of the document management tool. This is what it is designed to do, the tool has direct access to the document repository and the rules governing the handling of the documents are likely to already exist within the system.
Accordingly, badge access and system accounts (email, login, salesforce.com etc) should be created in the badge access and identity management systems for the same reasons.
But the marshaling of these process steps, this is the role of a BPM engine.
In the process above, we don't want to start the badge or user account process until the acceptance letter is received. Equally, we want to be able to place CSF and KPI measurements against each of these process steps.
- All activities are necessary to successfully complete the on-board process.
- All activities could likely be optimized
- All are in the critical path.
This is the purpose of BPM, to provide end to end visibility, integration and control of a complete process, not just the pieces that make up a process.
Like I said, this is my own opinion, but I was happy to hear that this was the consensus from the other experts in the room at Driven as well.