The Technical Case for Case Management – Part 3 – Real-Time Events and Business Intelligence
If you’re just catching up on this discussion on the technical case for case management, please catch up on my earlier two posts listed at the end of this post.
In this section I will be introducing the technical feature and use of Real-Time Events and Business Intelligence in Case Management solutions.
As I discussed in the previous two posts, Case Management solutions adopt many BPM concepts, such as processes and BPMN ad-hoc activities, but their behavior can be seen as different from the normal sequential process flow. Case Management is really first about the results or data and not about the steps on how the result or data is achieved. The catch phrase for Case Management might be “The End Justifies the Means”.
So if a BPM or process centric solution is geared towards monitoring the state of the process steps or the “Means”, a Case Management solution is really focused on monitoring the data inside the case and determining if a result has been achieved, the “End”. A “Result” or “End” in this manner would be when the data for the case reaches a specified state, and not the steps of the process like normal BPM software.
Let me use an example. If you’ve never seen the medical drama show “House” on Fox, I highly recommend watching a few episodes as an education in case management and managing knowledge workers. One of the primary plots in House is the relationship between Dr. Gregory House (the dynamic, un-manageable, and brilliant doctor) and Dr. Lisa Cuddy, Dr. House’s boss who is constantly trying to make sure Dr. House doesn’t kill his patients in the process of healing them.
The behaviors and actions of Dr. House are certainly nothing that can be modeled or predicted, but he shares a common goal with Dr. Cuddy, healing the patient. Dr. Cuddy though operates in a world of rules and procedures. She must ensure Dr. House follows these rules to ensure the hospital doesn’t end up in a lawsuit. She must closely monitor Dr. House to ensure the latency between an ad-hoc action being taken and measuring it’s effect against the rules is very low.
In this example, Dr. House is the knowledge worker. He works dynamically towards a shared result but in an unpredictable fashion. Dr. Cuddy is the Case Management Solution. She is the human equivalent of the computerized case management system that enforces rules, ensures procedures are followed, and manages actions of the knowledge workers.
So how does this tie into Real-Time Events and Business Intelligence. It is one of Dr. Cuddy’s main issues in managing Dr. House. How can she keep tabs on her dynamic workforce, monitor their progress, and ensure procedures and rules are followed where necessary. Her latency time in responding to a decision being made by Dr. House and an action being applied to the patient can become a major bottleneck and even put the patient’s life in jeopardy. She requires a real-time events engine that can monitor all the “data” for that patient and make instant decisions upon that data to ensure both procedures are followed and there is no bottleneck to the knowledge workers.
For those of you not familiar with Real-Time Events and Business Intelligence, the first thing to understand is that “Real-Time” does not necessarily mean “at the same time”, but rather a reaction to an event with a very low latency. In the context of Case Management, a Real-Time Events and Business Intelligence engine becomes the heart of monitoring the state of a case and the enforcement of business rules. You do not have a true modern Case Management system without an ability to monitor and react to ad-hoc events and data changes in real-time.
Real-Time Systems can be implemented in a variety of ways, but each technique might impact the latency time for which the system can respond to an event. For example, typically Database Triggers are used to create event responses in a Relational Database system. Triggers though have some issues. They are programmatic and can only be built by experienced developers. They are often proprietary to the specific database platform being used. And, they cannot overcome the natural speed limitations of traditional relational databases in aggregating and measuring large sets of data.
The modern Case Management solution should empower a business user like Dr. Cuddy with the ability to easily define her own rules and actions to respond to real-time changes in data and events. She should not need to concern herself with optimizing the database for performance. The system should capture these rules and actions in a platform independent standard, and be read-able by non-technical users (i.e. BPMN). And, the system should also respond with extremely low latency (nano-seconds) to actions and data changes made by the knowledge workers.
As Appian has known for a long time (and many other competitors are just figuring out), the proper way to build a BPM and Case Management system that can process Real-Time Events and deliver Real-Time Business Intelligence is through the use of In-Memory data management technologies. Aside from high speed, in-memory data technologies afford benefits around dynamic schema management and fast data aggregation that removes much of the need to have trained IT developers constantly optimizing the database for performance. In short, it is the technology that empowers the business user to directly control the case management system.
Finally, let’s now look at an example of how Real-Time Events can be modeled in a BPM tool using BPMN notation. We are very fortunate that the smart people who wrote the BPMN specification defined Conditional and Message Events to accommodate just this type of behavior, but there are certainly still some gaps.
Below we can see that Dr. House has an “Ad-Hoc Activity” for creating a prescription for a patient. He can trigger this at anytime during the life of the case. When it is triggered, it will send a required task to the pharmacy to fulfill the prescription. Prescriptions though are complex. Drugs can easily conflict with each other and harm the patient, so there is a Real-Time Event Listener specified in a BPMN conditional rule to listen for any new prescriptions for this patient. When a new prescription is detected, it will automatically search the database of known conflicts with drugs this patient is currently taking. If a conflict is found, a BPMN message event will be sent to an exception event on the “Fulfill Prescription” task to immediately cancel the subscription. It will also trigger a task for Dr. Cuddy to investigate the reason for the conflict and ensure the behavior is not repeated in the future.
In my next post, I’ll begin a discussion on the value of Enterprise Content Management in Case Management systems.
As always, I look forward to your comments.
Director, Product Management
The Technical Case for Case Management Series
Part 1: Intro
Part 2: Ad-Hoc Activities
Part 3: Real-Time Events and Business Intelligence
Part 4: Enterprise Content Management
Part 5: Collaboration / Enterprise 2.0
Part 6: Reporting and Analysis
Part 7: The End ??