Read this article for an analysis of batch processing and cycle time efficiency. The article is quite technical but gives insight into how batch processing can be evaluated in business processes and manufacturing environments.
Evaluation
In this section, we present the evaluation of our approach. First, we use a synthetic event log with artificially injected batches. With this experimentation, we validate the ability of our technique to discover batching behavior and analyze the different types of waiting times. Second, we apply our approach to a real-life event log to demonstrate its applicability in real-life scenarios. The implementation of the approach, as well as the event logs and results of the experiments, are available on GitHubFootnote.
Experiments with Synthetic Data
For the synthetic evaluation, we artificially added batches to a simulated event log of a loan application process with the specific purpose of evaluating if our technique was able to detect them. To do this, we first grouped the activity instances of three activities of the process. Then, we assigned a new resource to each group to ensure that the activity instances of a batch did not share their resource with other activity instances. Finally, we delayed the start and end timestamps of the activity instances of each group (as well as the timestamps of succeeding activity instances) to force their execution as a batch.
To increase the variety in the synthetic evaluation, we added batches of different sizes (10, 12, and 14) and types (parallel, sequential, and concurrent) to three different activities. We left some activity instances unaltered, so not all their executions were processed in a batch. Furthermore, for some batches, we designed the batch activation to be performed based on temporal rules, e.g., at a specific time of a specific day of the week. Finally, the waiting times were also altered to create batches with different characteristics, e.g., with or without the waiting time of a ready batch.
We evaluated our approach with this event log, resulting in the discovery of all artificially added batches. Moreover, due to the displacement of the batch processing activities and their successors, batch processing was also detected in other activities. The discovered activation rules corresponded to the designed temporal constraints, indicating the day of the week and hour of activation. Finally, the performance analysis detected the correct waiting times and CTE, accurately reporting cases in which some waiting times were set to 0.
Experiments with a Real-Life Log
This section demonstrates how batch processing inefficiencies can be identified by applying our approach to a real-life event log of a manufacturing production process. This event log has 225 traces, 26 activities, 4953 events, 48 resources and does not contain multitasking (i.e. the resources do not work in more than a task at the same time).
Batch Processing Discovery. We applied our approach to a real-life event log. First, we discovered batch processing activities from the event log. We set the minimum batch size threshold to two cases with no in-batch time gaps (intervals between the case processing within a batch) allowed. The output of this step is a report showing each batch processing activity, their case frequency, and batch processing frequency (see Table 1). From the report, we see that, for this event log, 12 activities had batch processing. The activities are sorted in descending order based on batch processing frequency. For each activity, the report shows the case frequency and the batch processing frequency. From the report (Table 1), we note that activities "Lapping", "Packing", and "Turning Rework", have high batch processing frequencies (91.07%, 83.75%, and 66.67% respectively). These cases are predominantly processed in batches and, therefore, relevant for batch efficiency analysis. However, the "Turning Rework" activity is executed for a comparatively negligent amount of cases (for 1.33% of total cases) and, therefore, has little impact on the process efficiency and is not considered for further analysis. Thus, the report shows that "Lapping" and "Packing" have high batch processing and case frequencies, and therefore, an analyst might decide to select these as an input for the next step.
Table 1. Batch processing discovery results.
Activity |
Case frequency |
Batch processing frequency |
---|---|---|
Lapping |
58.67% |
91.07% |
Packing |
77.78% |
83.75% |
Turning rework |
1.33% |
66.67% |
Turning & Milling |
72.00% |
45.78% |
Final Inspection Q.C. |
78.22% |
35.64% |
Turning & Milling Q.C. |
75.11% |
27.78% |
Grinding rework |
14.67% |
23.71% |
Laser marking |
74.22% |
18.25% |
Round grinding |
49.33% |
14.08% |
Turning Q.C. |
12.00% |
10.91% |
Flat grinding |
26.22% |
7.02% |
Turning |
10.67% |
2.35% |
Batch Processing Analysis. The next step is to analyze the behavior of selected batch processing activities. The output of this step is a report that captures batch processing type, activation rules, and batch size distribution for each batch processing activity (see Table 2). As can be seen from Table 2, the batch processing activity named "Lapping" follows parallel, sequential task-based, and concurrent task-based batch processing types, i.e., in this activity cases can be processed at the same time, sequentially one after another, with or without an overlap in processing time. It indicates that there is no specific style of activity execution. The activity "Packing", on the contrary, follows only a parallel batch processing type, i.e., cases in a batch are processed simultaneously.
Next, we discover the batch activation rules. For instance, for "Lapping", batch processing occurs from 4 to 6 h. This rule has a confidence of 0.94 and a support of 0.12. Finally, the report (Table 2) also captures the discovered batch size distribution per activity. Batch size distribution describes the number of cases that are processed in one batch. In this case, for "Lapping", the batch size distribution is 2 to 4 cases. Most commonly, in 85% of batch processing, batches include 2 cases.
Table 2. Batch processing analysis results.

Waiting time analysis. Having discovered the batch processing behavior, we focus on quantitatively analyzing the waiting times. The output for this step is a report that measures average waiting times per type and their impact on batch processing CTE (Table 3). For each activity, the average processing time (PT in Table 3) and the average waiting times per type are calculated (,
,
in Table 3).
Table 3. Waiting time analysis results.
Batch processing activity |
PT |
|||||||
---|---|---|---|---|---|---|---|---|
Lapping |
0d,1h,50m |
4d,4h,39m |
153% |
2d,15h,31m |
62% |
34m |
0% |
1.1% |
Packing |
0d,1h,0m |
10d,8h,34m |
267% |
3d,17h,56m |
33% |
0d,0h,0m |
0% |
0.3% |
The waiting times show how long, on average, cases wait for the batch to be accumulated and then processed. For instance, cases wait on an average of 4d,5h,7m while the batch is accumulated for "Lapping". Then, once the batch is accumulated, the cases wait for 2d,14h,20m before the batch processing starts. When cases are processed sequentially or concurrently, these cases wait for an additional 34m on average while other cases are processed. The existing batch processing strategy, therefore, results in a CTE of 1.10% (
The analysis demonstrates that attempts to reduce