1 Introduction

Organizations are constantly trying to improve their business processes to make them more efficient in terms of time, cost, quality and flexibility [6, 11, 13], and also to deal with exigencies. Thus, under higher workload conditions an Australian insurance service company may decide to escalate its claim handling by collecting less information than they normally do, e.g. during the storm season when the call volume doubles [18]. Escalation may involve changing the routing of work, the work distribution, or the requirements with respect to available data. Such temporary or periodic redesign measures are necessary to maintain the service quality during a busy season, while other redesigns may be permanent. In a similar vein, a car rental company may decide to make the car wash task before renting out a car optional or replace it by an express wash when the demand is too high or there is a resource shortage. Clearly, this can save on the cost and time of a car wash but it may hurt customer service.

A bank that normally requires two officers to approve a mortgage application may instead have only one officer approve them when the workload is very high. In this situation, it is possible that the quality of the customer service will not suffer but the likelihood of making a bad loan may go up and may impact profitability. Sometimes there are alternative designs for the same process. For example, the bank may choose to use a faster credit appraisal service that does appraisals in 3 days instead of the normal 6 days but at a higher cost than the normal cost. Thus, there is a tradeoff between the two scenarios that has both cost and time implications. The bank must decide whether to pursue scenario 1, scenario 2 or both scenarios. In a medical context, there may be a tradeoff between a normal test that takes 5 days and costs $100, and an expedited test that takes 3 days and costs $300. In such a situation, deciding whether to select the normal test or the expedited test is also an optimization issue.

Our goal in this paper is to develop a way to model such process design scenarios and find the optimal design in view of business constraints. Hence, the ideal design will depend on the actual realities of a dynamic situation. In the literature there have already been efforts to develop best practices and heuristics to improve processes, notably by Mansar and Reijers [11]. Our work is in part inspired by these ideas, and we wish to apply them in the context of a formal model that can help us determine and recommend the best design that satisfies cost and time constraints. We also build upon our previous work on approaches for modeling and optimizing temporal workflows [8] by extending that model to add support for redesign. In particular we show how to add support in our model for 6 different types of process improvements: optional tasks; task replacement; task restructuring (from sequence to parallel); task combination; task splitting; and task postponement.

In qualitative terms we can see that each alternative scenario in the situations described above represents a clear tradeoff with other scenarios. But it is also important to have a mechanism to evaluate and compare them systematically. We will show how such tradeoffs can be evaluated and optimized using metrics like cost, time, quality and flexibility. To the best of our knowledge this paper is a first effort towards a formal approach for evaluating alternative options for redesign.

The main contributions of this paper are as follows: First, we develop a new approach to model process improvement alternatives correctly. Second, we show how these different scenarios can be evaluated in terms of key metrics like cost, quality, time and flexibility. Third, we show how the scenarios and the metrics can be combined into an optimization model. Fourth, we present results of analysis using a realistic case study. Finally, we also describe an implementation approach for our proposal.

This paper is organized as follows. In Sect. 2 we discuss a basic model for describing temporal constraints and show how it can be translated into structural and temporal constraint equations. Then, in Sect. 3, we describe common improvement scenarios based on best practices. Next, Sect. 4 develops an optimal redesign model using evaluation metrics. Section 5 illustrates our approach with a detailed case study. Later, Sect. 6 discusses the main features and limitations of our approach, and Sect. 7 concludes the paper with some thoughts for future work.

2 Preliminaries

To be able to evaluate redesign alternatives the first step is to have a formal method to describe the control flow of a model and the temporal constraints for each task. In this section we describe a simple temporal model and show how structural and temporal constraints are represented.

2.1 A Simple Temporal Model

A temporal model of a process is made by combining two types of constraints: (1) structural constraints, and (2) temporal constraints. The structural constraints capture the control flow of the process to coordinate the proper sequence in which the tasks occur. The temporal flow model considers the permitted durations of each activity and the minimum or maximum gaps between them.

Definition 1.

A general temporal process model TP can be represented as:

\( {\text{TP }} = \, \left( {{\text{T}},{\text{ A}},{\text{ X}},{\text{ E}},{\text{ TD}},{\text{ TI}}} \right) \)

Where

T: set of task nodes, \( {\text{T}}_{ 1} ,{\text{ T}}_{ 2} , \, \ldots \)

A: set of AND control nodes, \( {\text{A}}_{ 1} ,{\text{ A}}_{ 2} , \, \ldots \)

X: set of XOR control nodes, \( {\text{X}}_{ 1} ,{\text{ X}}_{ 2} , \, \ldots \)

E: set of edges among the nodes in \( \left\{ {{\text{T}},{\text{ A}},{\text{ X}}} \right\} \)

TD: set of task duration ranges: \( \left\{ {({\text{T}}_{\text{i}} ,{\text{ D}}_{{{\text{i}}\_{ \hbox{min} }}} ,{\text{ D}}_{{{\text{i}}\_{ \hbox{max} }}} ), \ldots } \right\} \), where \( {\text{D}}_{{{\text{i}}\_{ \hbox{min} }}} ,{\text{ D}}_{{{\text{i}}\_{ \hbox{max} }}} \in {\text{R}} + \)

TI: set of additional inter-task constraints: \( \left\{ {({\text{T}}_{\text{i}} ,{\text{ T}}_{\text{j}} ,{\text{ S}}\left| {{\text{F}},{\text{ S}}} \right|{\text{F}},{\text{ TI}}_{{{\text{i}}\_{ \hbox{min} }}} ,{\text{ TI}}_{{{\text{i}}\_{ \hbox{max} }}} ), \ldots } \right\},{\text{ TI}}_{{{\text{i}}\_{ \hbox{min} }}} ,{\text{ TI}}_{{{\text{i}}\_{ \hbox{max} }}} \in {\text{R}} + \)

Figure 1 is an example of a simple temporal model. It shows the control flow, along with [min, max] durations of each task and inter-task constraints. It is expressed as:

Fig. 1.
figure 1

A basic temporal model with XOR and AND connectors

  • \( {\text{T}}: \, \left\{ {{\text{T}}_{ 1} ,{\text{ T}}_{ 2} , \, \ldots ,{\text{ T}}_{ 6} } \right\} \)

  • \( {\text{A}}: \, \left\{ {{\text{ A}}_{ 1} ,{\text{ A}}_{ 2} } \right\} \)

  • \( {\text{X}}: \, \left\{ {{\text{ X}}_{ 1} ,{\text{ X}}_{ 2} ,{\text{ X}}_{ 3} ,{\text{ X}}_{ 4} } \right\} \)

  • \( {\text{E}}:\left\{ {({\text{start}},{\text{ X}}_{ 1} ),({\text{X}}_{ 1} ,{\text{ T}}_{ 1} ),({\text{X}}_{ 1} ,{\text{ T}}_{ 2} ),({\text{T}}_{ 1} ,{\text{ A}}_{ 1} ),({\text{A}}_{ 1} ,{\text{ T}}_{ 3} ),({\text{A}}_{ 1} ,{\text{ T}}_{ 4} ),({\text{T}}_{ 3} ,{\text{ A}}_{ 2} ),({\text{T}}_{ 4} ,{\text{ A}}_{ 2} ), \ldots } \right\} \)

  • \( {\text{TD}}: \, \left\{ {({\text{T}}_{ 1} ,{\text{ D}}_{{ 1\_{ \hbox{min} }}} ,{\text{ D}}_{{ 1\_{ \hbox{max} }}} ),({\text{T}}_{ 2} ,{\text{ D}}_{{ 2\_{ \hbox{min} }}} ,{\text{ D}}_{{ 2\_{ \hbox{max} }}} ),({\text{T}}_{ 3} ,{\text{ D}}_{{ 3\_{ \hbox{min} }}} ,{\text{ D}}_{{ 3\_{ \hbox{max} }}} ), \ldots } \right\} \)

  • \( {\text{TI}}: \, \{ ({\text{T}}_{ 1} ,{\text{ T}}_{ 5} ,{\text{ S}},{\text{ S}},{\text{ TI}}_{{ 1\_{ \hbox{min} }}} ,{\text{ TI}}_{{ 1\_{ \hbox{max} }}} ),\left( {{\text{T}}_{ 4} ,{\text{ T}}_{ 5} ,{\text{ S}},{\text{ F}},{\text{ TI}}_{{ 2\_{ \hbox{min} }}} ,{\text{ TI}}_{{ 2\_{ \hbox{max} }}} } \right)\} \)

In addition to the time intervals of each task, an inter-task constraint (TI) can also be represented by a dashed line connecting the start or end of a task to the start or end of another task. For example, in Fig. 1, the inter-task constraint TI2 between T4 and T5 requires that the elapsed time from the start of T4 until the end of T5 must lie in the \( [{\text{TI}}_{{ 2\_{ \hbox{min} }}} ,{\text{TI}}_{{ 2\_{ \hbox{max} }}} ] \) interval. Also note that while we only consider task and inter-task durations, fixed time activities can also be modeled by setting their relative time with respect to the start of a process and converting them into delays with respect to the start activity.

2.2 Structural and Temporal Constraints

Next we show how to map the above model into structural and temporal constraint equations that can be solved using a constraint satisfaction approach. The flow constraints capture the coordination sequence among tasks, while the temporal constraints specify the task and inter-task durations.

Structural Constraints (SC).

Structural constraints are represented by structural equations to capture the flow of a process. In doing so, each task, and also the start and end tasks, are treated as binary 0–1 variables (where 1(0) denotes the presence (absence) of a task in a process instance). The structural balance equations for sequence, choice and parallel patterns expressed in terms of their corresponding variable names are shown in Fig. 2. These equations describe the correct behavior of a workflow consisting of various structures. A sequence structure (see row 1 of Fig. 2) requires that two sequential tasks T1 and T2 must have the same value, i.e. T1 = T2 = 0; or T1 = T2 = 1. Further, at a choice-split node, the balance equation ensures that when a choice-split is activated, only one outgoing branch becomes active but not both (see row 2 of Fig. 2). The behavior at a choice-join node (row 3) forces X2 = 1 only when exactly one but not both of T1 and T2 are 1. Note that in row 3, M is a very large number (say, 10000), and Y is an auxiliary variable used to hold a temporary binary value that in turn is used to determine X2. Rows 4 and 5 capture the correct behavior at an AND-split or-join node.

Fig. 2.
figure 2

Structural balance equations for process modeling structures

Similarly one could describe mandatory, prohibited, co-existing, exclusive and constrained choice patterns. As discussed in [8] a complete structural process model is one that includes: (a) one equation that captures the link of each task Ti (or connector Xi, Ai) to its preceding task(s) and/or connector(s) unless Ti is the first task in the process; and (b) one equation that captures the link of each task Ti (or connector Xi, Ai) to its succeeding task(s) and/or connector(s) unless Ti is the last task in the process. By solving the system of equations simultaneously for a sound process model a solution for an instance of the process is found with values for Ti, Xi, and Ai variables.

Temporal constraints (TC).

The temporal constraints express a variety of temporal relationships. Here we consider three types of constraints: flow, task duration and inter-task gap constraints. Temporal Flow (TF) constraints are derived from the edge set E. For every node ni and successive node pair (ni, nj) in E, we add two constraints as:

  • TSi \( \le \) TFi

  • TFi \( \le \) TSj

where

  • TSi: start time of node i relative to the start time of the workflow instance

  • TFi: finish time of node i relative to the start time of the workflow instance

The Task duration (TD) constraints ensure that the duration of a task Ti lies between the permitted range [Di_min, Di_max]. They are specified as: Di_min \( \le \) TFi – TSi \( \le \) Di_max. The Inter-task (TI) constraints ensure that the gap or delay between the start (end) of an activity pair (i, j) lies in the permitted [Gij_min, Gij_max] range. They are specified as: Gij_min \( \le \) TFj (TSj) − TSi (TFi) \( \le \) Gij_max. Finally, duration constraints for X and A-split connectors are: XFi – XSi = 0; and AFi – ASi = 0, respectively. For A-join connectors, AFj = Max(TFi), \( \forall \) TFi s.t. (TFi, AFj) \( \in \) E. A solution of a (combined structural and temporal) process model is of the form:

  • \( \forall \;{\text{T}}_{\text{i}} \), (Ti, TSi, TFi), Ti = 0 or 1, TSi, TFi \( \in \) R+

  • \( \forall \) Xi, (Xi, XSi, XFi), Xi = 0 or 1, XSi, XFi \( \in \) R+

  • \( \forall \) Ai, (Ai, ASi, AFi), Ai = 0 or 1, ASi, AFi \( \in \) R+

  • if Ti (Xi or Ai) = 0 then TSi (XSi or ASi) and TFi (ASi or AFi) are not valid.

It has been shown previously [8] that a process model is consistent if for every valid and complete execution path (from start to end) there exists a solution that satisfies the duration and inter-task constraints.

3 Process Redesign Strategies

In [11] various process improvement strategies to redesign a process are discussed. After analysis, we identified six important strategies that are amenable to our formal approach as shown in Table 1. The first row shows a baseline, existing process and subsequent rows show the effect of applying various strategies to it.

Table 1. Process improvement strategies

Strategy 1 is to make a task optional so at run time it may be skipped (e.g. skip the car wash task when work load is high). Strategy 2 replaces a normal task with an alternative task (e.g. replace a regular car wash with an express wash). Strategies 3 and 4 combine two (or more) small tasks into one, and split a large task into multiple tasks, respectively. Strategy 5 aims to take two tasks in sequence and run them in parallel to save time. Finally strategy 6 would reorder the tasks in a process such that one task is postponed from its normal position and performed later. Along with the strategy we describe how it can be modeled by modifying the temporal model discussed above. The last three columns show whether the effect of the improvement on time, cost and quality metrics is positive or negative.

Next we show how these strategies can be captured into the modeling framework developed in the previous section. The modeling approach for each strategy is described in Table 2. The last three columns show the positive or negative effect of applying each strategy on time (T), cost (C) and quality (Q) on the base model. To make task Ti optional, we introduce another task variable Oi. In addition we make the duration of Ti a function of variable Oi such that it will be 0 when Oi = 1. This is equivalent to skipping Ti. Similarly, we introduce a variable Ri to allow replacement of Ti. If Ri = 1, then the duration of Ti is adjusted by \( \Delta_{\text{r}} \) to be the same as the duration of Ri. For task combination, two tasks Ti and Tj are combined into a new task Ti (with a duration \( [{\text{D}}_{\text{imin}} + C_{ij} *\Delta_{\text{c}} ,{\text{ D}}_{{{\text{imax}}}} + {\text{ C}}_{\text{ij}} * \) \( \Delta_{\text{c}} \)]) and Tj with a duration of 0. In a task split (Si = 1), we replace task Ti with two tasks Ti and \( {\text{T}}_{{{\text{i}}^{\prime } }} \) and change their durations. If a variable Pij = 1 then tasks Ti and Tj are restructured into a parallel structure. To do so the sequential constraint \( {\text{TS}}_{\text{j}} \ge {\text{ TF}}_{\text{i}} \) between Ti and Tj is relaxed to \( {\text{TS}}_{\text{j}} \ge {\text{ TF}}_{\text{i}} - {\text{M}}*{\text{P}}_{\text{ij}} \), where M is a very large number (say, 10000). Two more constraints are added to maintain the ordering relationship of Ti and Tj with their preceding (TSi_pred) and succeeding (TSi_succ) tasks. The effect of M in these constraints is to activate them only when Pij = 1, and disable them when Pij = 0.

Table 2. Modifying constraints to capture redesign alternatives in the model:

For task postponement the ordering of tasks may be changed in a similar way. Thus, T1−T2−T3 may be reordered as T2−T3−T1 or as T1−T3−T2. This requires relaxing the temporal relationship between a postponed task Ti and its successor task Tj. Table 2 summarizes the benefits and costs of each improvement discussed and also shows the modified or additional constraints. We will discuss the correctness of our approach later in the paper.

4 Building and Solving a General Optimal Redesign Model

Above we have described a general framework for incorporating various model improvements into a formal model. In this way a model can be designed by simply setting parameter values for Oi, Ri, Cij, Pij, Si, POi, etc. suitably. However, in general we would like the model to give us an optimal solution that tells us which design to select particularly when several improvements are possible and they cannot be applied at the same time. This means that we need a metric to evaluate each design. In quantitative terms we wish to study the effect of key metrics like cost, time and quality (where a positive effect is good and a negative effect is bad). Thus, we could have an objective function to express the total benefit (or net effect) of a design as the weighted sum of the redesign variables:

$$ {\mathbf{max}}\;\varvec{Obj} = \mathop \sum \limits_{i}^{{}} BO_{i} *O_{i} + BR_{i} *R_{i} + BS_{i} *S_{i} + \mathop \sum \limits_{i,j}^{{}} BC_{ij} *C_{ij} + BP_{ij} *P_{ij} $$

Where

\( BO_{i} \) = Benefit coefficient of parameter O i

\( BR_{i} \) = Benefit coefficient of parameter R i

\( BP_{ij} \) = Benefit coefficient of parameter P ij

\( BC_{ij} \) = Benefit coefficient of parameter C ij

\( BS_{i} \) = Benefit coefficient of parameter S i

\( BPO_{i} \) = Benefit coefficient of parameter PO i

Each BXi or BXij term in the objective function above represents a net benefit of making the design change. Thus, each term captures the main factors of cost and quality. The time factor is reflected in the model separately as we have seen above. Cost is already in dollar terms and would represent the savings if an optional task i is skipped or the increase/decrease if a task j is replaced by another task and would be a component of coefficient BOi and BRj, respectively. Another consideration in these coefficients is the quality factor. Skipping an optional task may hurt the quality of the process and lead to extra cost in repairs or loss because a task was skipped. This would be a second component of the BOi and BRj coefficients.

The net effect of these two components would produce a value that may be negative or positive. A negative value of BOi or BRj may be compensated by a reduction in the throughput time of the process. For example, consider the effect of skipping task T2 (‘check credit report and appraisal’) in the process of Fig. 4. This will clearly have a positive effect on cost (since a resource does not have to work on this task) but negative effect on quality (as it may raise the chances of making a bad loan). Say the imputed effect on cost is a savings of $50. However, the negative effect on quality has an imputed value of $100 based on the higher risk of a bad loan. Thus, BO2 = 50 − 100 = − 50. Similarly, say, task T2 can be outsourced to another service that is faster by 5 h but costs more. In this case the quality does not suffer but there is an additional cost of $25 in using this service. Hence, BR2 = − 25.

As we shall illustrate in the next section, the general problem can be framed in different ways by modifying the objective function and the set of constraints. The objective function can be a weighted sum (using weights W1, W2, …) of cost, time, quality, and flexibility terms. The constraints may be modified to impose various limits on these metrics as well. Then we can frame the problem in terms of a generic mixed integer linear programming (MILP) model as shown in Fig. 3.

Fig. 3.
figure 3

An optimization model for selecting the best redesign

5 A Case Study

In this section we discuss a realistic case to illustrate how our redesign optimization approach works. We first describe an example of a mortgage loan approval process, then show how it is modeled using our approach and finally, solve the model to create alternative redesign scenarios.

Consider the example in Fig. 4 of a loan approval process. In this process an application is received (T1), then a credit report for the applicant and an appraisal report for the property are obtained (T2) from an external service provider. Depending upon the contents of the reports, some applicants are automatically rejected and in these cases the instance follows the lower path at the XOR node. Along this path, a manager approves the rejection (T4), an assistant prepares the rejection notice (T5) and then the applicant is notified (T10). If the reports are ‘OK’, then the instance follows the upper path at the XOR node. Along this path a financial officer makes a recommendation (T3) and this is followed by two approvals (T6 and T7 - by a manager and a VP) in the next two steps. An assistant then prepares the notification (T8) and it is sent to the applicant (T10).

Fig. 4.
figure 4

An example base process model

There are several redesign possibilities in this process model as follows:

  • Task T2 may be replaced by another task R2 that takes 5 time units less

  • Tasks T6 and T7 are each optional (but not both together)

  • Tasks T6 and T7 may be performed in parallel if they are not skipped

  • Tasks T6 and T7 are combined into a new task T67 that takes 5 units more than T6

Now in this situation, we are interested in creating scenarios that help us to answer the following kinds of questions by solving the optimization model at design/run time:

  1. 1.

    Find the design in which a process instance can finish in the fastest time?

  2. 2.

    Find the design in which a process instance gives the maximum benefit?

  3. 3.

    Find the maximum benefit design subject to an instance finish time limit?

Next we will show how the process of Fig. 4 can be modeled for redesign. Figure 5 (a) shows the original (partial) model and Fig. 5(b) shows the corresponding changes made to the constraint set to ensure that the above design constraints are satisfied. There are three important observations with respect to Fig. 5(b). First we modify the temporal flow constraints to model the effect of a change in the structure of Ti and Tj from sequence to parallel. This is achieved by relaxing the strict TSj ≥ TFi requirement by adding –1000 * Pij term to the right hand side. Thus, if Pij is 1 then the sequential requirement is relaxed. Moreover, two other constraints are needed to ensure that the sequential relationships of Ti with the successor of Tj, and Tj with the predecessor of Ti, are maintained.

Fig. 5.
figure 5

Original model and modifications needed to incorporate improvements

Second, we modify the duration of an optional task Ti based on whether it is skipped (Oi = 1), replaced by task Ri (Ri = 1), or combined with task Tj (Cij = 1). Thus,

$$ \begin{array}{*{20}l} {{\text{TF}}_{\text{i}} {-}{\text{TS}}_{\text{i}} \ge {\text{ D}}_{{{\text{i}}\_{ \hbox{min} }}} {-}{\text{O}}_{\text{i}} *{\text{D}}_{{{\text{i}}\_{ \hbox{min} }}} {-}{\text{R}}_{\text{i}} *\Delta_{{{\text{r}}1}} + {\text{ C}}_{\text{ij}} *\Delta_{{{\text{c}}1}} } \hfill \\ {{\text{TF}}_{\text{i}} {-}{\text{TS}}_{\text{i}} \le {\text{D}}_{{{\text{i}}\_{ \hbox{max} }}} {-}{\text{O}}_{\text{i}} *{\text{D}}_{{{\text{i}}\_{ \hbox{max} } }} {-}{\text{R}}_{\text{i}} *\Delta_{\text{r2}} + {\text{C}}_{\text{ij}} *\Delta_{\text{c2}} } \hfill \\ {{\text{TF}}_{\text{i}} \ge {\text{TS}}_{\text{i}} } \hfill \\ \end{array} $$

Third, additional constraints are needed to ensure the integrity of the design: The duration of a constraint must be non-negative (C0). Also, if Pij = 1 or Cij = 1, then Ti and Tj should not be optional tasks (constraints C1, C2). Moreover, Pij and Cij are mutually exclusive (C3). Oi and Ri are also exclusive as a task cannot be optional and be replaced by another task at the same time (C4).

It is important to note that our formulation will revert to the original “baseline” model if the Oi, Ri, Cij and Pij variables are all set to 0. Now we discuss the scenarios that were introduced above. In each case we modify the Obj function. Also note that in these solutions we focus on the upper path in the process of Fig. 4 that corresponds to the credit report and proposal being ‘OK’ since this is the more interesting case.

Scenario 1:

Shortest finish time redesign. Here we set Obj = TF10. On solving the model we get TF10 = 70. The solution for this model using CPlex [2] is:

  • T1 = T2 = T3 = T6 = T7 = T8 = T10 = 1; O2 = O6 = 1.

All other variables are 0. The interpretation of this solution is that tasks T2 and T6 are skipped since O2 and O6 are 1. In doing so we obtain the solution that takes the least time. Note that in the way we construct the model, the values of variables T2 and T6 are still 1, but their durations are 0, i.e. they are skipped.

Scenario 2:

Max benefit redesign. Now we modify the objective Obj to a benefit function by aggregating the effect of various redesign options as follows:

Obj = Maximize

BO2 * O2 + BR2 * R2 + BO6 * O6 + BO7 * O7 + BP67 * P67 + BC67 * C67 – 0.01 * TF10;

Where

  • BO2: net benefit from skipping optional task T2 = – 50

  • BR2: net benefit from replacing task T2 with task R2 = – 25

  • BO6: net benefit from skipping optional task T6 = 25

  • BO7: net benefit from skipping optional task T7 = – 50

  • BP67: net benefit from doing T6 and T7 in parallel = – 10

  • BC67: net benefit from combining T6 and T7 into one task = 50

The objective function consists of the sum of the individual benefit from each design option. The last term in the objective function includes the finish time of the last task TF10 so that among solutions of equal benefit one with the smallest finish time is found. The solution for this model is:

  • T1 = T2 = T3 = T6 = T7 = T8 = T10 = 1.

  • C67 = 1.

  • TF10 = 95.

  • Obj = 50. (neglecting the effect of 0.01 * TF10 in the objective function)

In this design tasks T6 and T7 are combined. One can see that this design finishes in a time of 95 which is more than for the design in scenario 1.

Scenario 3:

Maximum benefit within a time limit. In this scenario, we keep the same objective function as in scenario 2 but add a new constraint: TF10 ≤ 75 to impose a finish time limit. We know from scenario 1 that a solution exists with a finish time of 70. Now we get a solution that is similar to the one in scenario 2 with two changes:

  • O6 = 1.

  • R2 = 1.

  • TF10 = 75.

  • Obj = – 50.

This means that a solution does exist within a time limit of 75 by skipping the optional task T6 and replacing task T2 with a faster task. However, now the Obj value drops to – 50 because a negative benefit of 50 occurs from each adjustment.

Scenario 4:

Maximum benefit within a relaxed time limit. Now we modify scenario 2 slightly by relaxing the time limit from 75 to 80. In this case we get a new solution:

  • O6 = 1.

  • TF10 = 80.

  • Obj = – 25.

This shows that by accepting an increase of 5 in the time limit, we have a new design with a benefit of – 25, a gain of 25 over scenario 3. In this case task T6 is optional in the optimal solution.

Table 3 summarizes the four scenarios above and two more scenarios (5,6) by showing the finish time, net benefit and the values of the various design variables. By considering these alternatives a decision can be made on the most suitable design. Row 1 shows that the minimum flow time for an instance is 70 which is an improvement of 30 over the base case, but at a net benefit of –75. However, optimizing the maximum benefit (Row 2) shows that the baseline case is dominated by a design (C67 = 1) where the flow time is 95 and the benefit is 50. The remaining rows (3-6) show tradeoffs between time and benefit by imposing a different time constraint and finding the design with the maximum benefit. It is interesting to note how the design changes in each setting. In fact, no two designs are the same. Most of the design options are selected in some design or another except for the one with the parallel structure. On trying to force a solution by setting P67 = 1 in the model we get a design with a finish time of 90 and benefit of –10 which is dominated by scenario 6.

Table 3. Understanding tradeoffs among redesign scenarios

Of course, other scenarios may also be created by a user on demand. The results above suggest that as the various parameters of the model change (e.g. resource cost, service cost, time constraints, etc.) the choice of the best design can change. Hence, it is necessary to revisit the baseline model periodically. Moreover, the ability to change the design of a process instance in response to constraints adds flexibility as illustrated in Table 3. An organization can price its time sensitive services based on the benefit calculations and adjust its process model for each instance accordingly.

6 Discussion and Related Work

We did not model flexibility explicitly. It needs deeper exploration along the lines suggested in [14] based on mix, labor, routing, volume and process flexibility. We also did not consider interactive effects. So, the cost of skipping task T2 is BO2 and that of skipping T6 is BO6. However, the cost of skipping both could be a function f(BO2, BO6). It is also possible to make the values of benefit coefficients a function of case data. Thus, consider:

  • If (Loan_amount ≤ 100 K) then BO2 = –50;

  • If (100 K < Loan_amount ≤ 200 K) then BO2 = –75;

  • If (200 K < Loan_amount ≤ 300 K) then BO2 = –100;

Here Loan_amount is a case variable whose value is provided by the user at run time to determine BO2. Other parameter values can also be functions of case variables. In practice the values of these parameters have to be determined by the end users based on an understanding of the time required to perform a task (from process logs), wage rate of an employee (from payroll), and other internal records of a company.

The modeling power of our approach is comparable to that of first order logic. To informally argue correctness of our approach we first note that the basic structural and temporal model has been shown to be correct elsewhere [8]. In this paper we extend this formulation by allowing certain tasks to be optional (case 1) or replaceable (case 2). We also allow a pair of tasks to combine into a single task (case 3) or restructure into parallel (case 4). In cases 1–3 there is no structural change in the formulation; only the task duration expressions are changed by introducing new variables like Oi, Ri and Cij respectively as explained in Sect. 5. In case 4, the structure of two tasks, say, Ti and Tj, is changed from sequence to parallel. This requires relaxing the sequence constraint between Ti and Tj by adding a M * (1 – Pij) term and modifying the successor and predecessor relationships of Ti and Tj. In all four cases existing relationships are modified to satisfy the alternative designs by introducing new variables. But this does not affect correctness. The split and postponement cases can also be explained with similar reasoning.

Flexibility and the need for managing change, customization and adaptation are important issues in BPM research (see e.g. [15, 17, 18, 20, 21]. . One aspect of change is the need for systematic business process redesign. In [4, 11], many different best practices and heuristics for redesign have been proposed. In a related work [6], performance measures like cost, time, quality and flexibility for evaluating a new design are discussed at length. An evolutionary approach for generating redesign alternatives by applying best practices to an existing process is proposed in [13, 14]. While their goals are similar to ours their evaluation method is mostly based on simulation or enumeration. In contrast our approach is novel in that if offers an optimal solution and also the ability to add/modify constraints. Other work on redesign relates to identifying process improvement patterns [22], applying them effectively to processes [10] and detecting weaknesses in models [1]. Approaches based on goal models expressed in KAOS or Tropos/i*  notations can offer guidance for process (re)design strategies [12]. Since the same goal model can be converted into multiple process designs it is possible to select the optimal one based on considerations of time, cost, quality and flexibility.

Our work also relates closely with research on configurable processes [3, 5]. Configurable processes are designed for flexibility using constructs like hidden and blocked tasks, and flexible gateways. Some early work on configurable processes was done in the context of EPC diagrams [3] and reference models [16]. A fine survey of business process modeling for variability that covers many configuration approaches appears in [9]. An approach for modeling flexible processes using templates and rules is discussed in [7]. Basically, a configurable model allows for the various kinds of improvements we have discussed here as configuration possibilities. Hence, each configurable node or gateway can be modeled as a redesign option in our framework and optimized with our approach.

7 Conclusions

In this paper we presented a novel approach for optimizing the redesign of process models. It is based on capturing process improvement strategies as constraints in a structural-temporal model. Each improvement strategy is represented by a binary variable. An objective function that represents a net benefit function of cost and quality is then maximized subject to these constraints to find the best combination of process improvements that can be made to maximize the objective. The strategy variable values in the solution to this MILP formulation show the optimal strategies. We tested this model with a realistic case study and showed that it is possible to generate multiple redesign solutions by modifying the objective function and constraints.

In future work we would like to explore ways to model flexibility and resources in more depth. It will also be useful to extend the current approach to more patterns like knock out, numerical involvement, contact reduction, case types, etc. [11, 13, 19]. There is also a need to study ways to determine the parameters of the objective function more accurately and to analyze the sensitivity of the objective function to them. Further, in our current model a user must identify all valid strategies and include them in the model. However, it would be nice to investigate a recommendation system that will suggest the Top-3 or Top-5 process redesign scenarios to a user by systematically considering the application of all valid improvement strategies. To do so more semantic information about the process model may be needed by the system.