مدل جریان کاری قطعه قطعه شده پویا برای اجرای توزیع شده
|کد مقاله||سال انتشار||مقاله انگلیسی||ترجمه فارسی||تعداد کلمات|
|21803||2007||11 صفحه PDF||سفارش دهید||محاسبه نشده|
Publisher : Elsevier - Science Direct (الزویر - ساینس دایرکت)
Journal : Computers in Industry, Volume 58, Issue 5, June 2007, Pages 381–391
Workflow fragments are partitions of workflow model, and workflow model fragmentation is to partition a workflow model into fragments, which can be manipulated by multiple workflow servers. In this paper a novel dynamic workflow model fragmentation algorithm is proposed. Based on the well-known Petri net formalism, this algorithm partitioned the centralized process model into fragments step by step while the process is executed. The fragments created can migrate to proper servers, where tasks are performed and new fragments are created and forwarded to other servers to be executed in succession. The advantages of the proposed dynamic model fragmentation method include the enhanced scalability by outsourcing the business functionalities, the increased flexibility by designating execution sites on-the-fly, the avoidance of redundant information transfer by judging their pre-conditions before forwarding fragments, etc. An industrial case is given to validate the proposed approach. Later some discussions are made on the correctness of the algorithm and the structural properties of the workflow model. Finally the future research perspectives are pointed out.
Workflow management is the key technology for the coordination of various business processes, such as loan approval and customer order processing . By setting up the process model and enacting it in the workflow server, a workflow system can help to streamline the business process, deliver tasks and documents among users, and monitor the overall performance of the process. Traditional workflow systems are often built on the client/server architecture, in which a single workflow server takes the responsibility for the operation of the whole process. Meanwhile, this sort of centralized systems may bring about many disadvantages. First of all, with an increasing need of relocating entire business functions to either self-owned or third-party service providers, business process outsourcing (BPO) has been the trend in management as well as IT field. When an company is leveraging technology vendors to provide and manage some of its enterprise applications, its business process may be distributed among geographically dispersed business partners; therefore the involved workflow applications are inherently distributed. Secondly, the reliability of the centralized system cannot be guaranteed since there can be a single point of failure. Last but not the least, the performance of the centralized system may be drastically degraded when there are too many process instances to handle. The aim of distributed workflow execution is to separate one integrated workflow model into small partitions and allot them to different servers to be executed. To solve the difficulties that centralized workflow system cannot overcome, many distributed workflow systems have been designed from different approaches. In this paragraph we give a brief introduction to the related work, a detailed comparison of these works with ours is given in Section 6. Replicated servers and server clusters are used to address the required levels of scalability and fault tolerance in commercial workflow systems, which can be seen as a primary and pragmatic solution to distributed workflow execution . The Exotica project  proposes a completely distributed architecture in which a set of autonomous nodes cooperate to complete the execution of a process, with persistent message queue as its information transmission technique. METEOR  and Mentor  project are developed with similar approaches. Aalst introduces his well-known WF-net model to the inter-organizational paradigm . In , an agent-based workflow management system is proposed. The work in , ,  and  has shown the use of the mobile agents in distributed workflow execution, the mobile agents which carry parts of the process information can migrate from host to host to execute the workflow tasks. In  and , innovative approaches to support decentralized process enactment with the Peer to Peer (P2P) technology are presented. However, the research work in this field mainly focuses on the design of the system architecture and the implementation technique based on specific communication mechanisms. As far as we have known, little attention has been paid to the formal method of workflow model fragmentation. Workflow model is the basis for workflow execution. In distributed workflow execution paradigm, the whole process is to be executed at multiple sites instead of a single one. Therefore, the workflow model must be partitioned into small parts and transferred to their designated sites. We call these small parts of a workflow model fragments, which carry adequate information, so that they can be manipulated by any given workflow engine. Workflow model fragmentation is to partition a workflow model into fragments. We emphasize that model fragmentation is the basis for distributed workflow execution. In this paper we propose a Petri net-based approach for dynamic fragmentation of a workflow model. Our approach is based on the well-known Petri net formalism. We partition the centralized process model into fragments step by step while the process is executed. The fragments created can migrate to proper servers, where tasks are performed and new fragments are created and forwarded to other servers to be executed in succession. The advantages of the proposed dynamic model fragmentation method include the enhanced scalability by outsourcing the business functionalities, the increased flexibility by designating execution sites on-the-fly, the avoidance of redundant information transfer by judging their pre-conditions before forwarding fragments, etc. This paper is organized as follows. In Section 2, the problem to be solved in this paper is formulated. The workflow model, the centralized and distributed architecture, and some specifications of workflow fragment are introduced here. In Section 3, the dynamic fragmentation algorithm, i.e., the algorithm to create fragments during process execution is presented. In Section 4, a real case is given to illustrate the advantage of the proposed approach. In Section 5, some discussions are made. Section 6 summaries the related work and compared their approaches with ours. Section 7 concludes the paper and gives some research perspectives.
نتیجه گیری انگلیسی
In this paper a formal model fragmentation method for distributed workflow execution is proposed. We present a novel method to stepwisely partition the centralized workflow model into fragments, and these fragments can migrate to servers to be executed, further fragmented and forwarded. The advantages of the proposed dynamic fragmentation method include the increased flexibility by designating execution sites on the fly, the avoidance of redundant information transfer, etc. Moreover, we have validated the approach we propose in a cross-organizational workflow management system of a bike manufacturing company. This case has shown that our approach can handle distributed workflow execution in dynamic environment, with considerable flexibility and performance. We make the restriction on the workflow model that it must be well-structured and acyclic, future research might develop more elaborated algorithms which are able to deal with more expressive modeling features. However, we still stress that this restriction on the model can bring about many conveniences in workflow execution (for example, no redundant part will exists in fragments). Under some circumstances, doing fragmentation whenever one task is completed can be over elaborated. Suppose that N tasks are going to be executed sequentially at the same site, we have no reason to do fragmentation for N−1 times. One way to deal with this issue is to combine the static and dynamic fragmentation method. For instance, we can first sort the tasks which can be executed at the same site into one group. When we do fragmentation, the tasks belong to the same group are regarded as one atomic task, and we only partition the model when the entire group of tasks (i.e., the atomic task) is completed. Further on we will device more powerful method to reduce the fragmentation overhead.