11
Dynamic execution planning for reliable collaborative business processes Jeyeon Oh a , Nam Wook Cho b,, Hoontae Kim c , Yunhong Min a , Suk-Ho Kang a a Department of Industrial Engineering, Seoul National University, Seoul, Republic of Korea b Department of Industrial and Information Systems Engineering, Seoul National University of Science and Technology, Seoul, Republic of Korea c Department of Industrial Management Engineering, Daejin University, Kyunggi, Republic of Korea article info Article history: Received 3 June 2008 Received in revised form 9 September 2010 Accepted 19 September 2010 Keywords: Collaborative business process Quality of service QoS of web services Web service Workflow Fault-tolerance abstract Collaborative business processes, implemented and carried out via web services and enabling dynamic interaction among organizations, are becoming more indispensable to competitiveness in the global market. As dynamic collaboration prevails, the quality of ser- vice (QoS) of collaborative processes becomes more important. A critical requirement in cases where processes involve long-term activities is to guarantee successful completion within time constraints. In this study, we developed a methodology for dynamic planning of web service execution that imparts reliability to collaborative business processes. In order to ensure that processes successfully execute within time constraints and at mini- mum cost, the proposed method dynamically modifies execution plans at run-time by means of fault-tolerance techniques. Since generation of an execution plan of minimum cost while guaranteeing successful completion is classified as an NP-hard problem, a heu- ristic algorithm was developed. Additionally, to compare the proposed algorithm’s perfor- mance with those of the branch-and-bound method and the genetic algorithm (GA), a set of experiments was conducted. Ó 2010 Elsevier Inc. All rights reserved. 1. Introduction In order to stay competitive in the global business environment, enterprises have tried to expand the boundaries of their business process management beyond the intra-organizational to the inter-organizational. Because business management processes are defined and executed as combined internal processes/external web service processes [16,25], they are referred to as collaborative business processes. These processes, with the advance of web service technologies, enable collaboration among different organizations, allowing expansion of an organization’s business process management to include the busi- ness processes of its partners. In this dynamic and loosely-coupled collaborative environment, quality of service (QoS) of business processes is one of the most important aspects [18]. However, the QoS of collaborative business processes is difficult to control by one organi- zation, as such processes are composed of activities that are executed by various external vendors. Therefore, if the organi- zation desires to control the global QoS of its entire collaborative process, limited methods such as web service selection have to be employed, though resorting to such methods renders the assurance of QoS at run-time problematic. Another prob- lem is that a collaborative business process entails long-term transactions that take several days or more to complete, whereas traditional QoS management methods focus on the round-trip time of messages in handling the time variable, assuming that processes are composed of instant transactions. QoS aspects such as processing time or long-term-transaction reliability should be different from those of instant transactions, because time delays beyond the due date, in cases of col- laborative processes that entail long-term transactions, are considered to constitute failure. 0020-0255/$ - see front matter Ó 2010 Elsevier Inc. All rights reserved. doi:10.1016/j.ins.2010.09.019 Corresponding author. Tel.: +82 2 970 6448; fax: +82 2 974 2849. E-mail address: [email protected] (N.W. Cho). Information Sciences 181 (2011) 351–361 Contents lists available at ScienceDirect Information Sciences journal homepage: www.elsevier.com/locate/ins

Dynamic execution planning for reliable collaborative business processes

Embed Size (px)

Citation preview

Page 1: Dynamic execution planning for reliable collaborative business processes

Information Sciences 181 (2011) 351–361

Contents lists available at ScienceDirect

Information Sciences

journal homepage: www.elsevier .com/locate / ins

Dynamic execution planning for reliable collaborative business processes

Jeyeon Oh a, Nam Wook Cho b,⇑, Hoontae Kim c, Yunhong Min a, Suk-Ho Kang a

a Department of Industrial Engineering, Seoul National University, Seoul, Republic of Koreab Department of Industrial and Information Systems Engineering, Seoul National University of Science and Technology, Seoul, Republic of Koreac Department of Industrial Management Engineering, Daejin University, Kyunggi, Republic of Korea

a r t i c l e i n f o

Article history:Received 3 June 2008Received in revised form 9 September 2010Accepted 19 September 2010

Keywords:Collaborative business processQuality of serviceQoS of web servicesWeb serviceWorkflowFault-tolerance

0020-0255/$ - see front matter � 2010 Elsevier Incdoi:10.1016/j.ins.2010.09.019

⇑ Corresponding author. Tel.: +82 2 970 6448; faxE-mail address: [email protected] (N.W. Cho).

a b s t r a c t

Collaborative business processes, implemented and carried out via web services andenabling dynamic interaction among organizations, are becoming more indispensable tocompetitiveness in the global market. As dynamic collaboration prevails, the quality of ser-vice (QoS) of collaborative processes becomes more important. A critical requirement incases where processes involve long-term activities is to guarantee successful completionwithin time constraints. In this study, we developed a methodology for dynamic planningof web service execution that imparts reliability to collaborative business processes. Inorder to ensure that processes successfully execute within time constraints and at mini-mum cost, the proposed method dynamically modifies execution plans at run-time bymeans of fault-tolerance techniques. Since generation of an execution plan of minimumcost while guaranteeing successful completion is classified as an NP-hard problem, a heu-ristic algorithm was developed. Additionally, to compare the proposed algorithm’s perfor-mance with those of the branch-and-bound method and the genetic algorithm (GA), a setof experiments was conducted.

� 2010 Elsevier Inc. All rights reserved.

1. Introduction

In order to stay competitive in the global business environment, enterprises have tried to expand the boundaries of theirbusiness process management beyond the intra-organizational to the inter-organizational. Because business managementprocesses are defined and executed as combined internal processes/external web service processes [16,25], they are referredto as collaborative business processes. These processes, with the advance of web service technologies, enable collaborationamong different organizations, allowing expansion of an organization’s business process management to include the busi-ness processes of its partners.

In this dynamic and loosely-coupled collaborative environment, quality of service (QoS) of business processes is one ofthe most important aspects [18]. However, the QoS of collaborative business processes is difficult to control by one organi-zation, as such processes are composed of activities that are executed by various external vendors. Therefore, if the organi-zation desires to control the global QoS of its entire collaborative process, limited methods such as web service selectionhave to be employed, though resorting to such methods renders the assurance of QoS at run-time problematic. Another prob-lem is that a collaborative business process entails long-term transactions that take several days or more to complete,whereas traditional QoS management methods focus on the round-trip time of messages in handling the time variable,assuming that processes are composed of instant transactions. QoS aspects such as processing time or long-term-transactionreliability should be different from those of instant transactions, because time delays beyond the due date, in cases of col-laborative processes that entail long-term transactions, are considered to constitute failure.

. All rights reserved.

: +82 2 974 2849.

Page 2: Dynamic execution planning for reliable collaborative business processes

352 J. Oh et al. / Information Sciences 181 (2011) 351–361

Among the QoS aspects of collaborative business process, reliable delivery of service has become more important. For in-stance, although several methodologies using inventory rationing have been suggested for preventing backordering ofimportant orders [7,21,30], there still exist special cases in which some critical orders have to be completed without failureor delay. Another example is a health care system. Let us suppose a service for diabetics that automatically measures a cus-tomer’s blood sugar level via sensors and delivers insulin or other proper medication; such a service must be provided reli-ably, that is, with QoS assured. Of course, an emergency medical service absolutely must be completed without failure andregardless of cost. Although many researchers have provided various web service selection methods applicable to QoS man-agement of collaborative business processes, assuring reliable delivery of whole processes remains a challenge. In mostexisting studies, reliable delivery of web services cannot always be guaranteed.

In this paper, we propose a methodology that imparts reliability to collaborative business processes by managing the exe-cution plan at run-time. Our method adopts failure masking by redundancy [14], and then dynamically controls the execu-tion of web services by using combinations of redundancies to guarantee the deadline-completion and fault-tolerance of allprocess instances. The execution plan is mathematically formulated to minimize execution costs while satisfying deliveryrequirements. Since the problem is classified as an NP-hard problem, a heuristic algorithm was developed. The proposedmethod was designed to be used for various workflow patterns. Additionally, to compare the heuristic algorithm’s perfor-mance with those of the branch-and-bound method and the genetic algorithm (GA), a set of experiments was conducted.

The rest of this paper is organized as follows. Section 2 provides a brief literature review, Section 3 explains our approachand mathematical model, and Section 4 evaluates the performance of our heuristic. Finally, Section 5 discusses the benefitsand limitations of our methodology.

2. Literature review

A collaborative business process is composed of internal workflows and web service processes [23]. Since this paper focuseson managing the QoS of web service processes the activities of which are executed by external vendors via web services, ourliterature review first considers the QoS of web services.

With the advent of web service technologies, web service QoS has received much attention from researchers. Menascé[22] introduced several QoS issues pertaining to web services. As the basics of web service, QoS is the definition of the qualityaspects of web services and the formulation of an architecture for measuring and publishing metrics, Mani and Nagarajan[20] introduced important QoS metrics for web services. Gramm [9], moreover, proposed a framework for the measurementof various QoS components.

As a key component of a collaborative business process, web service processes, which are composed of various web ser-vices, can be defined as composite web services [16]. Because web service processes are executed by the external vendors,controlling them is crucial to the QoS of a whole collaborative business process. Several researchers have proposed modelsfor estimating the overall QoS of a composite web service. Cardoso et al. [5] provided a model to aggregate the QoS dimen-sions of individual web services into the overall QoS of the web service process. Jaeger et al. [13] proposed a QoS aggregationmodel of a composite web service using workflow patterns. A probabilistic approach to aggregation of the QoS of compositeweb services also has been proposed [12]. Grassi and Patella [10] introduced an architecture for estimating the reliability ofcomposite web services. Also, for the purposes of deriving means of guaranteeing the QoS of composite web services, studieson web service SLA have been conducted [11,19]. In contrast to the previous studies on composite web services, this paperconsiders execution planning of collaborative processes with long-term transactions, where the time aspect is represented asthe due date, not as SOAP-message transmission time, which generally is regarded as the time aspect in web service QoSproblems.

Another important issue pertaining to web service QoS is the web service selection problem. Tian et al. [31] proposed anarchitecture for QoS-based web service selection. Zeng et al. [33] developed a model to optimize the QoS of a composite webservice. Ardagna and Pernici [2] proposed a mathematical model for solving the optimization problem with regard to the twodimensions of individual web services and composite web services. Berbner et al. [4] proposed a dynamic replanning modelof a web service execution plan. Sun et al. [28] suggested a methodology that reflects users’ preferences in measuring thequality of a web service. Web service selection problems are not limited to the selection of providers. An optimization ofservice invocation for efficient execution of composite web services also has been proposed [24]. Yuan et al. [32] dealt witha more complicated problem represented by a grid workflow. They provided an optimized execution plan considering thetime-cost tradeoff. However, these web service selection or scheduling problems focus mainly on optimizing an executionstrategy according to pre-defined QoS preferences before run-time; thus, they rarely deal with run-time selection or rese-lection of services. Our work focuses on a dynamic execution plan for assuring the successful completion of collaborativebusiness processes by considering selection and reselection of web services and multiple binding of services to an activity.

Our approach also is related to fault-tolerance issues in distributed systems. The objective of this study was to impartdependability, as defined by Kopetz and Verissimo [15], to web service processes. In our study, rather than considering allaspects of fault tolerance in distributed systems, which aspects include fault detection and communication failure, we fo-cused on the application-level problems that are specific to Service-Oriented Architecture (SOA) and collaborative businessprocesses. There also have been many studies on recovery of transactional web services. Forward error recovery using thecompensation mechanism has been widely adopted by researchers [6,17,26,29] and industrial standards [1] for composite

Page 3: Dynamic execution planning for reliable collaborative business processes

J. Oh et al. / Information Sciences 181 (2011) 351–361 353

web services. In order to apply our method to collaborative processes, we assumed that all web services have proper excep-tion handlers who roll back the effects of those web services to the previous state when they are aborted.

3. Fault-tolerance model and solution for collaborative processes

3.1. Problem description and modeling

Nomenclature

Ai ith activity of a process ci execution cost of a web service for Ai

ti

execution time of a web service for Ai

ki

probability of successful completion of a web service for Ai

xi

decision variable that indicates the number of trials for Ai

yij

decision variable that indicates the number of services that are executed on the jth trial for Ai

TD

time-to-deadline of the process P penalty rate charged per time beyond the deadline R reward rate awarded per saved time to the deadline

Let us suppose a sequential-flow business process composed of N activities, as illustrated in Fig. 1. To complete each activ-ity, web services from inside or outside the organization are utilized. The reliability of the process is estimated to be

Qri [5],

where ri is the reliability of activity Ai. In the web service selection problem, a user selects services in order to satisfy thereliability constraint of the process. One of the limitations of the service selection problem is that the entire process instancecan result in failure if one of the services fails. Therefore, failures of web services are neglected. Another limitation of theservice selection with regard to the reliability issue is that the reliability of the process might not be satisfied if the reliabil-ities of the available services are limited, even though the user is willing to incur more cost in order to complete the processsuccessfully.

In this study, to guarantee successful completion of a process by ensuring the completion of individual activities, we em-ployed a dynamic modification of an execution plan at run-time. In order to overcome the limitations of the web serviceselection problem, we assumed that failure of web services can occur. Under this circumstance, one way to make an activityfault-tolerant is the use of time redundancy, which entails the re-executing of a service if service failure occurs. Whereas thisis a simple method to guarantee successful completion of an activity, its application to a collaborative process involving adue date might achieve only limited results, especially for a transactional process in which the failure of one service requiresthat all correlated activities be re-executed. The alternative is to use physical redundancy. The physical redundancy methodutilizes extra services to make an activity fault-tolerant. This fault-tolerance method can be represented as a workflow calleda static partial join for multiple instances pattern [27], which creates multiple concurrent instances of an activity and triggersthe next activity when one of the instances completes. Physical redundancy has been applied to SOA in which a sufficientnumber of web services necessary to perform an activity exists, and for which no extra equipment is needed to execute phys-ical redundancy. However, this method can often lead to extra costs by adding unnecessary services for an activity eventhough the activity is allotted sufficient time for time redundancy. Therefore, we employed combinations of time and phys-ical redundancy to find the optimal execution plan of a process involving a due date. In addition, in order to deal with dy-namic conditions, the execution plan was designed to be modified as a process instance progresses.

Fig. 2 illustrates an example of our model. An optimal execution plan prior to process execution is shown in Fig. 2(a), whereactivity A1 has eight instances, each of which is bound to eight web services (ws1,ws8,ws3,ws12,ws7,ws14, ws21,ws51). Notethat when A1 is triggered, the eight services are not always executed concurrently. Rather, by dividing the execution of servicesinto three trials, the system offers an opportunity to reduce execution costs while guaranteeing the reliability of A1. If one of theservices - ws3, ws12 or ws7 - completes successfully, the third trial for A1 in the original execution plan becomes unnecessary,and the execution of the services ws14, ws21, ws51 will be excluded in a new plan; this principle is illustrated in Fig. 2(b). Thetime saved by the new plan is then assigned to the remaining activities. However, if all of the services assigned to A1 result infailure, the remaining time is reallocated for an additional trial for A1; Fig. 2(c) illustrates this case.

The reliability problem of collaborative processes thus could be formulated into a mathematical model that generates theoptimal execution plan of a process considering the process due dates and execution costs. Let us assume that there are asufficient number of vendors that provide web services for execution of an activity, and that every web service for activity

A1 A2 AN…

Fig. 1. A sequential-flow process comprising N activities.

Page 4: Dynamic execution planning for reliable collaborative business processes

A1 1st A1 2nd A2 1stA1 3rd A2 2nd AN 5th…

due datetime

ws1ws8

ws3ws12ws7

ws14ws21ws51

ws6 ws42ws28

ws25ws72

(a)

A2 1st A2 2nd AN 5th…

time

ws6 ws42 ws25ws72

A2 3rd

ws28

(b)

due datesaved

A1 4th A2 1st …

due datetime

ws34ws45ws17

ws6ws42ws28

ws25ws72

reallocated

(c)AN 5th

Fig. 2. An example of a dynamic execution plan (a) An initial plan made at process instantiation (b) A modified plan after successful completion of A1 at 3rdtrial (c) A modified plan after A1 fails at all trials.

354 J. Oh et al. / Information Sciences 181 (2011) 351–361

Ai has the same execution cost ci, time ti, and probability of successful completion ki, where 0 6 ki < 1. Let TD denote the time-to-deadline of the process, P the penalty rate charged per time beyond the deadline and R the reward rate awarded per savedtime to the deadline. Then, the total cost including penalty or reward from execution time is represented as

Total Cost ¼ Executioncost þ ðPenalty or rewardÞ:

Let E(Ci) denote the expected execution cost of activity i, and E(Ti) the expected execution time of activity i. Then, the totalcost of the process is represented as

TotalCost ¼XN

i¼1

EðCiÞ þ P �max 0;XN

i¼1

EðTiÞ � TD

( )þ R �min 0;

XN

i¼1

EðTiÞ � TD

( ):

In order to calculate the E(Ci) and E(Ti), let xi denote the number of trials that are made within the assigned time for activityAi, and let yij stand for the number of services that are executed on the jth trial for Ai. Then, the probability that the jth trial forAi occurs, po

ij, is calculated as

poij ¼

Yj�1

k¼1

ð1� kiÞyik ;

and the execution cost incurred by the jth trial for Ai is calculated as

ciyij � poij;

therefore, the expected execution cost of Ai is estimated to be

EðCiÞ ¼Xxi

j¼1

ciyij � poij

h i:

The probability that the jth trial results in success, psij, is calculated as

psij ¼ 1� ð1� kiÞ

yij � poij;

and the expected execution time of Ai is estimated to be

EðTiÞ ¼Xxi

j¼1

jti � psij

h i:

Page 5: Dynamic execution planning for reliable collaborative business processes

J. Oh et al. / Information Sciences 181 (2011) 351–361 355

To avoid generating an infinite number of services for an activity, we additionally assume that an activity does not fail if itsprobability of successful completion exceeds a threshold, (1 � e), where e, 0 < e < 1, is an arbitrarily small number. Finally,the optimal execution plan generation problem for the whole process is formulated as

Minimize:

XN

i¼1

Xxi

j¼1

ciyijpoij þ P �max 0;

XN

i¼1

Xxi

j¼1

jtipsij � TD

( )þ R �min 0;

XN

i¼1

Xxi

j¼1

jtipsij � TD

( ):

Subject to:

ð1� kiÞPxi

j¼1

yij

6 e for every i;

ð1� kiÞPxi

j¼1

yij�1

P e for every i;

yij P 1 for every combination of i and j;

where xi and yij are integer decision variables. Note that the objective function minimizes cost while guaranteeing the suc-cessful completion of every activity.

Consider the following special-case problem. Suppose that the penalty cost is arbitrarily large, and that the total execu-tion time is less than the TD in the optimal solution. Also, the total possible number of services for each activity is restrictedto two. Then, the optimal solution to this problem can be stated as follows. Given an initial condition such that there is onlyone trial for each activity with two services, choose a set S of activities that has two trials with one service without exceedingTD, which maximizes the decreased cost. Let xi be the decision variable that has the value of 1 if activity i is in S, or the valueof 0 otherwise. Let C(xi) be the decreased cost when activity i is chosen to be in S. Then, the execution plan generation prob-lem can be re-formulated as

Maximize :XN

i¼1

CðxiÞ;

Subject to :

PNi¼1

tixi 6 TD�PNi¼1

ti;

xi 2 f0;1g; 8i ¼ 1; . . . ;N:

Therefore, it is obvious that a well known 0–1 Knapsack problem can be easily transformed into our special-case problem.Thus, it can be deduced that our problem is NP-hard [8]. In the next section, we propose a heuristic algorithm to solve theoptimization problem.

3.2. Heuristic algorithm

As our model requires dynamic modification of a process execution plan during process run-time, solutions, even forlarge-sized NP-hard problems, should be obtained in a reasonable time. In the present research, a heuristic algorithm wasdeveloped to determine a process execution plan in such a dynamic environment.

Let us derive an algorithm for formulating an execution plan in the case of a process composed of only one activity,denoted by Ai. In this case, the entire time to the due date, TD, can be assigned to Ai. Therefore, xiti 6 TD < (xi + 1)ti. Then,the expected cost of the jth trial on Ai, including the penalty or reward, is estimated to be

yijci þ ð1� kiÞyij ðyijci þ PtiÞ þ Pðjti � TDÞ; if jti > TD;

yijci þ ð1� kiÞyij ½y�ijþ1ci þ ðjti � TDÞðP � RÞ þ Rti� þ R½ðj� 1Þti � TD�; if jti < TD 6 ðjþ 1Þti;

yijci þ ð1� kiÞy~ij ½y�ijþ1ci þ Rti� þ R½jti � TD�; otherwise:

As for the second and third equations, since they are convex, the optimal value of yij is easily obtained. The first equation is,however, not convex but is continuous within the boundary of possible values of yij, [1, log1�k(e) � x], so that the optimalvalue of yij is obtained by applying the well known Newton’s method [3]. Let getActivityExecutionPlan(Ai) denote the function,illustrated in Fig. 3, that returns an array containing optimal numbers of services for each trial of Ai by solving the aboveequations. The function is then applied to find the optimal execution plan for the overall process. The heuristic algorithmfor finding a near-optimal solution is introduced in Fig. 4. The computational complexity of the heuristic is calculated asO(N2); therefore, the heuristic has a polynomial computational time complexity.

3.3. Applications of model to other control flows

Whereas the heuristic algorithm discussed in the previous section considers only a sequential flow, collaborative businessprocesses usually consist of various control flows. Several researchers have proposed methodologies to aggregate QoS

Page 6: Dynamic execution planning for reliable collaborative business processes

Fig. 3. Algorithm getActivityExecutionPlan(Ai).

356 J. Oh et al. / Information Sciences 181 (2011) 351–361

aspects of different control flows [5,13], which were applied to formulate an optimal execution plan for a process with var-ious control flows.

3.3.1. AND split – AND joinThe AND split – AND join flow is illustrated in Fig. 5. The total execution time and cost are aggregated [5] as

T ¼ MAXf1;:::MgfTðAiÞg;

C ¼PM1¼1

CðAiÞ:

Therefore, the heuristic can be applied to the AND split – AND join pattern as follows:

� In Step1, calculate qi MAXk{qik}, and assign zi to Ai1,Ai2, . . . ,AiM uniformly.� In Step2-2, E(Ti) MAXk{E(Tik)} and EðCiÞ

Pk EðCikÞ.

� In Step4, treat {Ai1,Ai2, . . . ,AiM} as one activity, and use MAXk{UtilRatiok} for sorting, where UtilRatiok = E(Tik)/zi as shown inFig. 4.� In Step5-2, calculate the aY 0ik of all Aik, E(Ti)

0 MAXk{E (Tik)0} and EðCiÞ0

Pk EðCikÞ0.

3.3.2. XOR split – XOR mergeThe XOR split - XOR merge flow is illustrated in Fig. 6, where pai denotes the probability of selecting the ith branch for

execution, andP

pai ¼ 1. Then, the total execution time and cost are aggregated [5] asa

T ¼PMi¼1

pai � TðAiÞ;

C ¼PMi¼1

pai � CðAiÞ:

The heuristic is applied to the XOR split – XOR merge flow pattern as follows:

� In Step1, calculate qi P

kðpak � qikÞ , and assign zi to Ai1,Ai2, . . . ,AiM uniformly.� In Step2-2, EðTiÞ

Pkðpak � EðTikÞÞ and EðCiÞ

Pkðpak � EðCikÞÞ.

� In Step4, treat {Ai1,Ai2, . . . ,AiM} as one activity, and sort byP

kðpak � UtilRatiokÞ.� In Step5-2, calculate the aY 0ik of all Aik; EðTiÞ0

Pkðpak � EðTikÞ0Þ and EðCiÞ0

Pkðpak � EðCikÞ0Þ.

3.3.3. LOOPThe LOOP is shown in Fig. 7. As can be seen, we consider only a simple loop, where pa denotes the probability of its occur-

rence. The total execution time and cost are aggregated [5] as

Page 7: Dynamic execution planning for reliable collaborative business processes

Fig. 4. Algorithm for execution plan of a sequential-flow process.

A1

A2

AM

Fig. 5. AND split – AND join.

J. Oh et al. / Information Sciences 181 (2011) 351–361 357

T ¼ TðAÞ1�pa ;

C ¼ CðAÞ1�pa :

We apply the heuristic to the flow pattern as follows:

� In Step1, use q0i qi=ð1� paÞ to assign the initial time to the process.� In Step2-1, calculate z0i zi � ð1� paÞ to make an execution plan for the activity.� In Step2-2, E(Ti) E(Ti)/(1 � pa) and E(Ci) E(Ci)/(1 � pa).� In Step5, E(Ti)0 E(Ti)0/(1 � pa) and E(Ci)0 E(Ci)0/(1 � pa).

3.3.4. Transactional sub-processThe transactional sub-process is a flow of activities that belong to a transaction. By modifying an execution plan

dynamically, we can consider that all activities are independent from one another. Activities in the transactional sub-process,

Page 8: Dynamic execution planning for reliable collaborative business processes

A1

A2

AM

pa1

pa2

paM

Fig. 6. XOR split – XOR merge.

A

pa

1-pa

Fig. 7. LOOP.

358 J. Oh et al. / Information Sciences 181 (2011) 351–361

however, can be dependent on others. In the proposed heuristic, we reduce a transactional sub-process to one activity. As aresult, the cost, time, and probability of successful completion of each activity can be aggregated. The aggregation methodproposed by Cardoso et al. [5] was adopted for a transactional sub-process.

3.3.5. Other control flowsIn order to verify that this model is applicable to various control flows, Workflow Patterns [27] can be used. Most of these

control-flow patterns are composed of basic flows like those traced above; other complicated flows, patterns containing mul-tiple instances, for example, we leave to future work.

4. Experiment and results

4.1. Experiment

We conducted an experiment to examine the effectiveness of the heuristic algorithm. In general, a heuristic algorithm hasan advantage in computational time but has a disadvantage in solution quality. In order to evaluate the trade-off, we testedthree algorithms: the branch-and-bound method, the genetic algorithm (GA), and our heuristic algorithm. Since the branch-and-bound method provides an optimal solution, it can be used as a benchmark. The GA used in the comparison experimentis detailed in the next section. All of the algorithms were implemented using JAVA, and the comparison tests were run on adesktop computer with a 2.0 GHz AMD processor and 1 GB RAM. The following are the detailed test specifications.

� Comparing the optimal solution and the proposed heuristic– Problem Size: The problem size is related to the number of activities N, and the reliability of services k. As k decreases,

the number of service instances needed to guarantee successful completion increases, and the number of cases of invo-cation strategies also increases. The number of cases needed is calculated as log1�k(e), and termed M. We set the prob-lem size according to the following three levels:

Small-sized : N = 3 and 1 6M 6 3.Medium-sized : N = 5 and 4 6M 6 6.Large-sized : N = 7 and 7 6M 6 9.

– Time constraints: We set the following time constraints:P P

Loose time constraint : 2 � iti 6 TD 6 3 � iti.Tight time constraint : 0:8 �

Piti 6 TD 6 1:2 �

Piti:

– Penalty/reward constraints: We set the penalty rates and the reward rates at the following two levels:

Low penalty and reward rate: P 6 0.5�average(ci), R 6 0.5�average(ci).High penalty and reward rate: P P 2�average(ci), R P 2�average(ci).

� Comparing the genetic algorithm and the proposed heuristic– Problem Size: We set the problem size at the following three levels:

Small-sized: N = 10 and 5 6M 6 10.Medium-sized: N = 20 and 10 6M 6 15.Large-sized: N = 30 and 15 6M 6 30.

Page 9: Dynamic execution planning for reliable collaborative business processes

J. Oh et al. / Information Sciences 181 (2011) 351–361 359

– Time constraints: We set the following time constraints:P P

Loose time constraint: 2 � iti 6 TD 6 3 � iti:

Tight time constraint: 0:8 �P

iti 6 TD 6 1:2 �P

iti:

– Penalty/reward constraints: We set the penalty rates and the reward rates at the following two levels:

Low penalty and reward rate: P 6 0.5�average(ci), R 6 0.5�average(ci).High penalty and reward rate: P P 2�average(ci), R P 2�average(ci).

The M, Time constraint, and Penalty/Reward constraint were randomly generated each time. In this study, a uniform dis-tribution was used to generate the random variables since it can be appropriate for performance testing purpose. However,the selection of a probability distribution should be carefully considered during the actual implementation. The experimentconsisted of 3 � 2 � 2 = 12 sets for comparing the optimal solution and our heuristic, and 3 � 2 � 2 = 12 sets for comparingthe GA and our heuristic. Each experiment set was replicated 30 times.

4.2. Searching with genetic algorithms

We conducted a search of optimal solutions with the GA in order to evaluate our heuristic. The following were the spec-ifications for the GA.

� Genome encoding: The genome is represented by an integer array in which each item indicates activities composing theprocess. Each item contains an index to the array of the execution strategy of the services for activity. Fig. 8 illustrateshow the genome is made.� Crossover and mutation: The one-point crossover is used, and the mutation operator randomly selects an activity and

changes the service strategy to execute log1�k(e) services for one trial, or execute one service for log1�k(e) trials. Weset our GA for a population of 100 individuals, a crossover probability of 0.5 and a mutation probability of 0.02.

A1 A2 AN

log1- i( )

S11

S12

S1M

genome

service strategy

Fig. 8. Genome encoding.

Problem size (N/M)

Per

form

ance

gap

(p

erce

nta

ge) tight time/high penalty

loose time/high penalty

tight time/low penalty

loose time/low penalty

Fig. 9. Performance gap: Optimal solution vs. heuristic.

Page 10: Dynamic execution planning for reliable collaborative business processes

360 J. Oh et al. / Information Sciences 181 (2011) 351–361

� Fitness function: The cost evaluation function, TotalCost, described in Section 3.1 is used as the fitness function.� Terminal condition: The GA stops when the objective value has no change over 100,000 iterations.

4.3. Results

Figs. 9–11 illustrate the results of the experiment. Fig. 9 shows the performance gap between the optimal solution and theproposed heuristic. As can be seen, the solutions obtained by our heuristic algorithm leave no more than a 4% gap betweenthemselves and the optimal solutions. Fig. 10 shows the difference of CPU time between the branch-and-bound method forfinding an optimal solution and the proposed heuristic. Fig. 11 indicates the performance gap between the GA with the firsttermination condition and our heuristic. Overall, the solutions obtained by our heuristic showed better results than those ofthe GA. Even in the worst case (tight time/high penalty), the GA was better than our heuristic by no more than 2%. The fol-lowing is a summary of the experimental findings:

� The heuristic solutions are no more 4% worse than the optimal solutions.� The proposed heuristic shows better performance as the problem size increases, the time constraint becomes looser, and

the penalty/reward rates become lower.� The proposed algorithm has an advantage in performance over the GA.

1

10

100

1000

10,000

100,000

1,000,000

3/(1~3) 5/(4~6) 7(7~9)

Problem size (N/M)

CPU

Tim

e (m

s) Optimal solution

Heuristic

Fig. 10. CPU time: Optimal solution vs. heuristic.

Problem size (N/M)

Per

form

ance

gap

(p

erce

nta

ge)

tight time/low penalty

loose time/high penalty

tight time/high penalty

loose time/high penalty

Fig. 11. Performance gap: GA vs. heuristic.

Page 11: Dynamic execution planning for reliable collaborative business processes

J. Oh et al. / Information Sciences 181 (2011) 351–361 361

5. Conclusions and future work

With the increased use of web service technologies, management of web service quality has become a prominent issue. Inthis paper, we introduced a methodology for managing the QoS of collaborative processes that imparts reliability to web ser-vices. In our approach, we plan the execution of activities dynamically at run-time in order to satisfy the fault-tolerancerequirement of the process. A model for an optimal process-instance execution strategy is suggested. A heuristic methodfor solving the problem is developed, and performance-comparison experiments examining the applicability of the algo-rithm are provided.

Despite our contributions, we cannot help admitting the limitations of our idea. Significantly, our algorithm was devel-oped under simplified conditions. Specifically, we assumed that services bound to an activity are of uniform cost and exe-cution time. In reality, however, services vary in those aspects. The extension of our model, therefore, is a necessary topicof future research. And as we considered only sequential, parallel, and loop patterns in process control flows, complicatedprocess patterns must also be held over for further study. Finally, we assumed that execution time is deterministic, butthe stochastic nature of processes remains to be explored.

References

[1] T. Andrews et al. Business Process Execution Language for Web Services Ver. 1.1, BEA, IBM, Microsoft, SAP and Siebel, 2003, <http://download.boulder.ibm.com/ibmdl/pub/software/dw/specs/ws-bpel/ws-bpel.pdf>.

[2] D. Ardagna, B. Pernici, Global and local QoS constraints guarantee in web service selection, in: Proceedings of the ICWS’05, 2005, pp.805–806.[3] M.S. Bazaraa, H.D. Sherali, C.M. Shetty, Nonlinear Programming: Theory and Algorithms, Wiley, New York, 1993.[4] R. Berbner, M. Spahn, , N. Repp, O. Heckmann, R. Steinmentz, Dynamic replanning of web service workflows, in: Proceedings of the IEEE DEST’07, 2007,

pp.211–216.[5] J. Cardoso, A. Sheth, J. Miller, J. Arnold, K. Kochut, Quality of service for workflows and web service processes, Web Semantics: Science, Services and

Agents on the World Wide Web 1 (3) (2004) 281–308.[6] B. Debmalya, Compensation in the world of web services composition, SWSWPC 2004 LNCS 3387 (2005) 69–80.[7] R. Dekker, R.M. Hill, M.J. Kleijn, On the (S-1,S) lost sales inventory model with priority demand classes, Technical Report 9743/A, Econometric Institute,

Erasmus University Rotterdam, Netherland, 1997.[8] M.R. Garey, D.S. Johnson, Computers and Intractability: A guide to the theory of NP-Completeness, W.H. Freeman, 1979.[9] A. Gramm, WS-QoS – A Framework for QoS-aware Web Services, Institute of Computer Science, Freie Universität Berlin. Technical Report B-04-11,

Berlin, Germany, 2004.[10] V. Grassi, S. Patella, Reliability prediction for service-oriented computing environments, IEEE Internet Computing 10 (3) (2006) 43–49.[11] Q. He, J. Yan, R. Kowalczyk, H. Jin, Y. Yang, Lifetime service level agreement management with autonomous agents for services provision, Information

Sciences (2009), doi:10.1016/j.ins.2009.01.037.[12] S.Y. Hwang, H. Wang, J. Tang, J. Srivastava, A Probabilistic approach to modeling and estimating the QoS of web-services-based workflows, Information

Sciences 177 (23) (2007) 5484–5503.[13] M.C. Jaeger, G.R. Goldmann, G. Muhl, QoS aggregation for web service composition using workflow patterns, in: Proceedings of the EDOC’04, 2004,

pp.149–159.[14] B.W. Johnson, Introduction to the design and analysis of fault-tolerant systems, in: Fault-Tolerant Computer System Design, Prentice Hall, 1996, pp. 1–

87.[15] H. Kopetz, P. Verissimo, Real time and dependability concepts, in: Distributed Systems, 2nd ed., Addison-Wesley, Workingham, 1993, pp. 411–446.[16] L. Lei, Z. Duan, Automating web service composition for collaborative business processes, in: Proceedings of the 2007 11th International Conference on

Computer Supported Cooperative Work in Design, 2007, pp.894–899.[17] L. Lin and F. Liu, Compensation with dependency in web services composition, In: Proceedings of the NWeSP’05, 2005, pp.183–188.[18] C. Liu, Q. Li, X. Zhao, Challenges and opportunities in collaborative business process management: overview of recent advances and introduction to the

special issue, Information Systems Frontiers 11 (3) (2008) 201–209.[19] H. Ludwig, A. Keller, A. Dan, R.P. King , R. Franck, Web Service Level Agreement (WSLA) Language Specification, IBM Corporation, <http://

www.research.ibm.com/wsla/WSLASpecV1-20030128.pdf>, 2003.[20] A. Mani, A. Nagarajan, Understanding Quality of Service for Web Services, 2002, <http://www-128.ibm.com/developerworks/webservices/library/ws-

quality.html>.[21] P. Melchoirs, Restricted time-remembering policies for the inventory rationing problem, International Journal of Production Economics 81-82 (2003)

461–468.[22] D.A. Menascé, QoS Issues in Web Services, IEEE Internet Computing 6 (6) (2002) 72–74.[23] J. Oh, J. Jung, N. Cho, H. Kim, S. Kang, Integrated Process Modeling for Dynamic B2B Collaboration, Lecture Notes in Computer Science 3683 (2005) 602–

608.[24] C.S. Park, S. Park, Efficient execution of composite web services exchanging intensional data, Information Sciences 178 (2) (2008) 317–339.[25] C. Peltz, Web Services orchestration and choreography, Computer 36 (10) (2003) 46–52.[26] P.F. Pires, M.R.F. Benevides, M. Mattoso, Building reliable web services compositions, web, web-services, and database systems 2002, LNCS2593 (2003)

59–72.[27] N. Russell, A.H.M. Hofstede, W.M.P. Aalst and N. Mulyar, Workflow Control-Flow Patterns: A Revised View, BPM Center Report BPM-06-22,

BPMcenter.org, 2006.[28] Y. Sun, S. He, J.Y. Leu, Syndicating web services: a QOS and user-driven approach, Decision Support Systems 43 (1) (2007) 243–255.[29] F. Tartanoglu, V. Issarny, A. Romanovsky, N. Levy, Coordinated forward error recovery for composite web services, in: Proceedings of the SRDS’03, 2003,

pp.167.[30] R.H. Teunter, W.K.K. Haneveld, Dynamic inventory rationing strategies for inventory systems with two demand classes, Poisson demand and

backordering, European Journal of Operational Research 190 (1) (2008) 156–178.[31] M. Tian, A. Gramm, T. Naumowicz, H. Ritter, J. Schiller, A concept for QoS integration in web services, in: Proceedings of the IEEE Computer Society 1st

Web Services Quality Workshop, 2003, pp.149–155.[32] Y. Yuan, X. Li, X. Zhu, Deadline division-based heuristic for cost optimization in workflow scheduling, Information Sciences (2009), doi:10.1016/

j.ins.2009.01.035.[33] L. Zeng, B. Benatallah, A.H.H. Ngu, M. Dumas, J. Kalagnanam, H. Chang, QoS-aware middleware for web services composition, IEEE Transactions on

Software Engineering 30 (5) (2004) 311–328.