Here is how case management is described in the overview volume of my 2006 report:
Case management is another special type of process that only some BPMS support well. Its key artifact is an electronic folder of case documents, which are added while the case process is running. The classic example is mortgage origination, but examples include other types of underwriting for insurance and loans, financial advisory processes, and many types of benefits adjudication. What makes case management different is that the number and identities of documents may not be known at design time, and each document may have its own workflow (create, review, approve) in addition to the overall case process. Many case management processes involve complex business rules and require integration of a business rule engine. Look for: - Electronic case folder of independent work objects - Ability to add case objects and flows at runtime - Content management integrationI agree that is a bit narrowly drawn, and also hard to distinguish from other process types, notably content-centric and collaborative. So what exactly is the essence of case management, or case handling, as it is sometimes called? One paper from Wil van der Aalst, a BPM academic from Eindhoven University of Technology, describes case management as something not handled particularly well by traditional workflow or BPM systems.
- In case management, a process task ("atomic" from BPM perspective, performed by single individual, a single "state" from the process perspective) may contain various subtasks (van der Aalst calls them "activities", but that term has a different meaning in BPMN) -- all done by the task performer, but not necessarily in a prescribed order, and depending on the context, perhaps not all need to be done. The BPM process engine controls the flow of tasks, but not the internal subtasks.
- Also, in case management, the task performer should be empowered to do what is necessary to handle the case, which may be more than is allowed by traditional process design. Traditional BPM gives each task just enough information to perform the functions envisioned by the process designer. To make a long story short, case management should allow task performers to add data objects to the instance at runtime, even if such data elements were not specified in the process model.