计算机应用 ›› 2010, Vol. 30 ›› Issue (07): 1959-1961.

• 典型应用 • 上一篇    下一篇

基于BPEL的流程数据竞争问题研究

杨书新1,李淑芝1,张永进2   

  1. 1. 江西理工大学 信息工程学院
    2. 西安理工大学
  • 收稿日期:2010-01-19 修回日期:2010-03-01 发布日期:2010-07-01 出版日期:2010-07-01
  • 通讯作者: 杨书新
  • 基金资助:
    基于语义与大规模发现的Web服务资源库互联技术研究;web服务组合自适应关键技术研究

Study of data race for process based on BPEL

  • Received:2010-01-19 Revised:2010-03-01 Online:2010-07-01 Published:2010-07-01

摘要: 服务组合就是将多个基本的Web服务组合成可以满足用户需求的增值服务,为企业或企业间的业务过程集成提供技术支持。作为一种流程驱动的服务组合描述语言,BPEL和其他采用不同方式的服务组合语言一样面临着流程描述的正确性问题,在执行服务组合之前要对其控制流和数据流进行分析和验证。数据竞争是BPEL数据流分析中亟需解决的问题之一。围绕BPEL流程数据竞争问题,在对BPEL规范中的活动类型、活动并发性进行分析基础上,给出了数据竞争的形式化描述,提出一种检测方法。该方法基于XML节点树的特性、活动之间的并发性以及活动关联的消息来判断是否存在潜在的数据竞争。最后,通过一个订单处理流程实例,说明了该方案的有效性。

关键词: 业务流程执行语言, Web服务, 服务组合, 数据竞争

Abstract: Composing the existing Web services to satisfy a new value-added for user requirement is called services composition. It provides technical support for business process integration within an enterprise or across multiple enterprises. As a processdriven services composition description language, correctness is a key challenge to BPEL (Business Process Execution Language) the same as other description languages in the domain of services composition. Therefore, analysis and check of control flow and data flow is an essential step before execution. Data race is a wellknown issue for BPEL. In this paper, our goal is automatic detection of the potential data race in a process. Firstly, a formal description for data race was given by analyzing the event types, concurrency specified in the BPEL. Furthermore, based on exploring the characteristics of XML nodes tree, concurrency of two activities, and messages correlative with activities, a detection algorithm was designed to find out data race in a process. Finally, an order processing example was demonstrated to illustrate the validity of the proposed solution.

Key words: business process execution language, web services, web services composition, data race