Exception Handling at Case Level
Exceptions always occur in the context of one or more cases that are in the process of being executed. In addition to dealing with the specific work item to which the exception relates, there is also the issue of how the case should be dealt with in an overall sense, particularly in regard to other work items that may currently be executing or will run at some future time. There arc three alternatives for handling workflow cases:
- continue with case (CWC) - the case can be continued, with no intervention occurring in the execution of any other work items;
- remove current case (RCC) - selected or all remaining work items in the case can be removed (including those currently executing); or
- remove all cases (RAC) - selected or all remaining work items in both this and all other currently executing cases which correspond to the same process model can be removed.
In the latter two scenarios, a selection of work items to be removed can be specified using both static design time information relating to the corresponding task definition (e.g. original role allocation) as well as relevant runtime information (e.g. actual resource allocated to, start time).