The questions of BPM vs Case Management, process vs case, and – almost too horrible for some Case people to contemplate – BPMN extensions for case management – are getting all frothy again. Here is my take on the topic.
1. The question is BPM part of case management, or is case management part of BPM? is a metaphysical one. I think, however, it is a proxy for the real question, can a BPMS do a good job with case management, or do you need a special dedicated tool? It’s obvious that if a single offering could provide both, users would prefer it over separate dedicated offerings. And it’s equally obvious that it can be done, although it’s fair to say that the offerings may not be good enough yet. Back in 2005, people said you needed separate BPM platforms for human workflow and integration processes. It was just a matter of time, and not that long a time.
2. The question how is a case different from a process? is a more interesting one. I am not sure there is a precise definition for a case, but there is one for a process, provided by the BPMN standard. And a case, by any definition, is not the same thing. A process is what BPMN calls an orchestration, meaning a sequence of activities, performed repeatedly in the course of business, with well-defined start and end, in which the activity flow logic is explicitly defined. Each process activity is likewise a discrete action, performed repeatedly not continuously, each instance having a well-defined start and end. Some in the case community have latched on to the term unpredictable to distinguish case from process, but I think this is off target. The path any particular process instance will take is similarly unpredictable, since the internal logic of a process task – an approval, for instance – may be completely arbitrary: a flip of a coin. But the process logic – if approved do task B next, otherwise do task C next – is explicit and handles all possibilities.
A case is defined differently. The fundamental unit of work is also an activity, which may or may not be identical to a BPMN activity, i.e. action performed repeatedly with a well defined start and end of each instance. A case is a set of activities related to each other in some way, but the logic of the activity flow is not necessarily an orchestration:
a. It could be that a single case is composed of more than one orchestration, i.e. more than one process. In fact, this is usually true. Most of the case management offerings promoted by ECM vendors fall into this category. It differs from ordinary BPM in superficial ways only. For example, it requires a shared case folder that aggregates all the case artifacts – activities, processes, documents, and data – and manages the status of the case of the whole, in addition to the states of the processes and tasks. This type of case management will surely be subsumed into regular BPM Suites.
b. The next activity may be determined by the performer at runtime on an “ad-hoc” basis. And let’s distinguish two meanings here.
b1. If the next activity is selected from an enumerated menu or list, this is really orchestration, but one in which an orchestration diagram like BPMN would be visually confusing, too hard to construct, etc.
b2. If the performer at runtime can define some purely ad-hoc action and insert it as the next task to perform, this is something different than a process as defined in BPM.
To my way of thinking, b1 calls for a BPMN extension – a notational change more than a change to the metamodel. I suspect this is the real need here, certainly more than b2. There may be a need for b2, purely ad-hoc case management (beyond the ad-hoc task management Apple and Google will give you on your phone)… but I doubt it.
c. “Activities” in case management, or some of them, may not be what BPMN means by activity, i.e. having a well-defined start and end. What case people call the “inflexibility” of BPMN is mostly due to the fact that when a BPMN activity is complete it is done, finished. It cannot suddenly wake up again and say, Oh my God, I forgot something, or I found a problem in that document I approved earlier. Those are real world things, and I would love BPMN to see them as further examples of b1 above, i.e. bending but not breaking the BPMN metamodel, and calling for a notation extension that makes the behavior simpler to draw and understand. This is possibly just one example of a broader definition of a case activity, which is more like a state than an action. In fact, case logic is frequently better described by some kind of state diagram than an orchestration diagram like BPMN.
3. All of these examples (except for b2) could, I believe, be incorporated into an extension of BPMN. One that possibly might require something fundamentally different is where the logic is goal-directed, similar to backward chaining in the rules world. Some case management might fit this definition, but probably most of it does not.
[…] BPM and Case Management – Bruce Silver The question is BPM part of case management, or is case management part of […]
[…] Silver, never one to shy from a debate, weighs in with a post I largely agree with: The question is BPM part of case management, or is case management part of BPM? is a metaphysical […]
Bruce, you have persuasive logic but it starts from a misunderstanding of who uses an ACM system. You have defined case management using BPM terms and positioning it as a special case of BPM and then you conclude that you basically just need an extension to a regular BPM system.
ACM (or case management) is about non-programmers getting work done. When you remember that, you will come to a different conclusion. Lets start over from the beginning, but this time remember who it is that is “driving” the system.
1. You are a doctor who just read about a new kind of treatment for a disease in a medical journal. You happen to have a patient with that particular illness, and since other things have not worked well, you decide to try this new treatment. You sit down to edit the BPMN diagram describing that patient’s care to include steps for the new treatment.
2. You are a judge presiding over a court case. The defense attorney just made a huge procedural blunder. You and everyone in the court have invested a lot of time and effort into this case. You want to see justice done. You would like to avoid having the case thrown out for procedural issues, probably causing the whole thing to start again. You come up with an idea on how to satisfy everyone and keep the case going forward, so you quickly verify this with everyone, and then sit down to edit your BPMN diagram that describes the progress of the court case.
3. You are an executive of a large oil company. You have just learned that there was an explosion on your oil platform. You are going to have assess the situation and come up with some pretty creative responses as this situation is not like any you have been in before. You get an idea, so you sit down to edit the BPMN diagram that describes how you manage oil drilling operations.
4. You are a director sitting on the board of a consumer product corporation. A large industrial giant has just announced that they are launching a new product in a space your company has been dominant in for many years. Furthermore, their offering has a creative new feature that ties the product back to their very successful and stylish other product lines. You need to come up with a strategy. You have people who can access the real value/quality of the product. You have contacts who might be able to tell you if they are selling the product below cost and destroying the market. There might be patent issues. There will be wave of press interest around this product launch, and if you can get some halo leverage if you can get the marketing program together quickly enough. So you sit down to edit your BPMN diagram on how you run marketing campaigns.
The part where the people edit BPMN is unrealistic. The point should be clear: none of these people will EVER use BPMN to describe the work that they need done. The doctor is too busy keeping up with changes in medicine to learn BPMN. The judge will not have a BPMN diagram that has been kept up to date about the court case. The oil executive has no time to draw up a careful and fully detailed diagram of what is to be done. The executive has no need to go to the trouble to make a process suitable for reuse.
Neither will these case managers have BPMN experts sitting at their elbow to make such changes for them. Without the process expert instantly at hand to modify the diagram, the time delay will eliminate any benefit of having the diagram in the first place. To expect the judge to send off instructions to someone else in the department to modify the course case will take too long, even if it takes only a few minutes — which would be uncharacteristically fast for any government institution anyway. These are knowledge work cases, and they will never be described using BPMN. In every one of these cases, the value in making a clear documentation of what should be done is wasted because you are not likely to need to use that diagram ever again.
BPMN is a language that is used by process professionals. It is used to create a clear and unambiguous diagram of a process for repeated use. The only way to recuperate the cost of drawing the diagram is to use it many times, which is not what a knowledge worker is doing.
The stock and trade of a knowledge worker is use their expertise and knowledge of the specific situation to figure out the best path. Doctors incorporate 11 new facts into their practice EVERY DAY. If a doctor had BPMN diagrams to describe their treatment plans, they would be spending nearly full time just keeping them up to date. A board of directors is presented with new and unexpected situations EVERY TIME THEY MEET. None of these professional will use BPMN directly: executives will never draw up action plans in BPMN, stock brokers will never use BPMN to describe their investment plans, police detectives will never use BPMN to manage their investigations, salespeople will never use BPMN to manage a sale, social workers will never use BPMN to manage social cases, nurses will never use BPMN to define care schedules, marketing directors will never use BPMN to design campaigns, …
Saying the all we need is an extension to BPMN in order to support case management completely misses the point of what case management is about: Case management allows the case manager to be in control, to leverage their expertise, to do what needs to be done. For the case manager (i.e. the doctor, the nurse, the lawyer, the executive, etc) to be in control, they need to be able to directly manipulate case. If the case depends upon BPMN to work, then the case manager must know how to edit and modify the BPMN, and in most professions they will NOT.
BPMN was designed by and for IT folks as a kind of computer language that hopefully business people can validate. But there is no evidence that business people will ever draw or modify those diagrams. That is a job for a process professional. BPM is for process professionals to use, and it is only useful in repeatable, predictable processes.
Case management is what the rest of us use: the process non-professional. ACM is not competition for BPM, it is competition for Email. Most case management today is done with documents sent by email.
Return to the post. See how it states as an axiom that “A case is a set of activities related to each other in some way.” Even at this first step, you have forgotten that the fundamental aspect that a case is a place where an professional DOES WORK as an intelligent human being. What you have really describe here, is not case management, but instead a kind of BPM, with some extra flexibility, and then we are not surprised that you reach the conclusion that BPM can handle it. But case management is about real professionals doing real work in real time. Such professionals have no need to model anything. They doing the job, not modeling it.
When you say that BPMN can be easily extended to incorporate flexible activity patterns — I agree. I am simply saying that case managers — professionals outside of IT — will never use BPMN regardless of the extensions that are included.
Keith,
A few points in rebuttal…
First off, I don’t think I ever said that a BPMN extension was “all you need” to do case management. From your comments, you don’t seem to think any kind of modeling notation is needed at all, but for folks that do, the issue is whether it makes sense to extend BPMN for case management or start over completely. My view is that extending makes more sense than starting over, but others may disagree.
Second, your use cases. The doctor, the judge, the oil company executive, the corporate board member… I will agree these are not the target users of BPM, but I submit they are also not the target users of ACM, either. I doubt the case management products I am familar with – IBM, Pega, G360, Singularity – have customers in the use cases you list, or would be particularly appropriate for them. The case management use cases that come to my mind are things like complex benefits claims, employee and customer onboarding, customer service and support, permitting and licensing, etc. Such cases are much more closely aligned with BPM but have the distinctions I listed in my post.
Third, the tooling canard. Keith, I’m surprised at you on this one. Whether it’s BPM or ACM, end users are not process/case designers. Conventional BPMS’s have ad-hoc activities, task delegation, etc., and none of them require any kind of modeling in BPMN. Are you really unaware of that? The ACM scenarios you list seem to me best implemented as self-contained applications. I doubt they would expose much modeling at all to anyone. But even those that did, like the aforementioned case management products I am familiar with, certainly don’t require end users to do the modeling (BPMN or not).
Finally, your last point stumps me. “A case is a place where a professional DOES WORK as an intelligent human being,” not a set of activities. If you do not like the term “activity” for the pieces of WORK that the intelligent human being does, then say what the ACM term for it is. And if a case is a “place” not an instance of something, then just say what the word for the instance is.
In short, why all the “ACM versus the world” rhetoric? It doesn’t seem all that productive.
Excellent points, Bruce, and a great rebuttal, and entertaining discussion. It won’t come as a surprise to anyone that I largely agree with Bruce’s point of view in this debate.
As do I (agree with Bruce).
Thanks for this article about the blurring lines between case management and BPM systems. It has me reconsidering my architecture for my upcoming project which is to help automate and monitor the processing of repetitive claims which we receive as batch documents.
I had been considering Alfresco to store the claim documents and using its workflow system called Activiti. This is how I came to look into BPMN 2.0. However, Alfresco is a large deployment and we already use Pentaho ETL for validating the claims so I decided to use a mix of Pentaho BI server for validation, end user login and report viewing with Activiti added for the human activities (just the workflow taken from Alfresco).
However, I was stuck on how to represent scheduled future claims in Activiti executable BPMN. In one of your other articles you mention a timer start event but what if the event can be started late? In my process I think the timer start event can be used a supervisor process that checks whether another process started on time. In a case management system this is easily accomplished with a shared calendar and reminders. This made me consider going basing the solution on a full Alfresco deployment or Liferay and its built in workflow so as to leverage the built-in shared calendar.
An article about how to integrate scheduling with BPMN would be most welcome. Or if this is covered in your book I will gladly pick it up.
I talk about timer start events in the book but not the use case you are describing. Timer start means the process start is based on a schedule, not on receiving something like a claim (even if that occurs more or less on a schedule)… that would be Message start. With Timer start, the trigger is the calendar; with Message start, the trigger is receiving something.
This sounds like we need to separate the debate on the language for expressing business processes (BPMN notation in the solution domain ) versus the problem domain related to business process (Case Management). It seems the question here is whether Case Management should be a first class citizen in the BPMN notation or not, and if not, can the basic BPMN notation building block handle it?
This is much like UML to keep on expanding itself to include super-structure construct as first class citizen in the language.
The problem of keeping addition of more constructs can result in a complex language that may render it less effective to learn and to become ubiquitous.
“The question is BPM part of case management, or is case management part of BPM? is a metaphysical one.”
In metaphysical perspective: take UML structure. Need we add super-structure when we have nested structure?
In a problem-solution separation of concern: Is Case a problem to be solved by the existing BPMN constructs (using the existing construct to solve the Case problem) ? or is Case a fundamental construct just like BPMN process (a solution right out of BPMN)?
[…] This position is not without its controversy. Just have a look at the argument here on Bruce Silver’s blog between two BPM luminaries – Bruce Silver and Keith Swenson. This is the place where we are […]