Journal of Frontiers of Computer Science and Technology ›› 2015, Vol. 9 ›› Issue (7): 781-792.DOI: 10.3778/j.issn.1673-9418.1410010

Previous Articles     Next Articles

Method for Transforming Layered Service Process into Executable BPEL

WANG Shuo, WANG Zhongjie+, YU Meng, XU Xiaofei   

  1. School of Computer Science and Technology, Harbin Institute of Technology, Harbin 150001, China
  • Online:2015-07-01 Published:2015-07-07

层次化服务流程向可执行BPEL转换的方法

王  朔,王忠杰+,于  梦,徐晓飞   

  1. 哈尔滨工业大学 计算机科学与技术学院,哈尔滨 150001

Abstract: Artificial intelligence (AI) planning based service composition algorithms generate layered service process (LSP) which is executed and driven by data flow between service activities instead of the control flow in traditional block-structured service processes. To enable LSP to be executed directly on business process execution language (BPEL) engines, this paper researches on a method of transforming LSP into BPEL and pursues the optimization of execution efficiency of the obtained BPEL. Firstly this paper presents the formal model of LSP, and analyzes three typical transformation strategies from LSP to BPEL, i.e., partition by nodes, partition by layers, and partition by blocks, including the performance comparison among them. Aiming at the “partition by layers” strategy, this paper proposes nine rules to guide the partition of LSP into blocks with the maximum concurrency degree during the BPEL execution, and presents a block-partition algorithm and a block-merge algorithm to generate the corresponding BPEL. Through an LSP case, this paper demonstrates the transformation process, and the experimental results validate that the proposed method can obtain better performance than other transformation strategies.

Key words: layered service process (LSP), structured service process, business process execution language (BPEL), model transformation, execution efficiency

摘要: 基于人工智能规划的服务组合算法得到的组合方案是一种层次化服务流程(layered service process,LSP),由服务之间的数据流(而非传统块结构流程中的控制结构)加以驱动执行。为使该类服务流程能在业务过程执行语言(business process execution language,BPEL)引擎上直接执行,研究了将LSP转换为BPEL的方法,追求BPEL执行效率的优化。给出了LSP的形式化模型,分析了将LSP转换为BPEL的3种策略(完全拆分、按层拆分、按块拆分),定性对比了三者之间的性能优劣。针对按块拆分策略,提出了9条规则用于对LSP的拆分,提出了块拆分算法和块合并算法。通过一个LSP案例对转换过程进行了演示,并通过实验证实了该转换方法可以获得比其他转换策略性能更好的BPEL。

关键词: 层次化服务流程(LSP), 结构化服务流程, 业务过程执行语言(BPEL), 模型转换, 执行效率