J4

• 研究论文 • 上一篇    下一篇

BPEL流程数据竞争和死锁检测算法研究

陈胜;鲍亮;陈平;胡圣明;王萌
  

  1. (西安电子科技大学 软件工程研究所,陕西 西安 710071)
  • 收稿日期:2007-10-15 修回日期:1900-01-01 出版日期:2008-12-20 发布日期:2008-12-20

Study of algorithm on data race and deadlock detection for BPEL process

CHEN Sheng;BAO Liang;CHEN Ping;HU Sheng-ming;WANG Meng
  

  1. (Research Inst. of Software Engineering, Xidian Univ., Xi’an 710071, China)
  • Received:2007-10-15 Revised:1900-01-01 Online:2008-12-20 Published:2008-12-20

摘要: 针对BPEL(Business Process Execution Language)流程中出现的数据竞争和死锁问题,提出了一种基于图理论的检测方法.首先把BPEL流程转化为BPEL片段图,然后通过求BPEL片段图中强连通分量的方式判定流程是否存在死锁; 通过求BPEL片段图中节点间的可达性以判定节点间的可并发性来检测流程中的数据竞争.该方法采用约束求解技术对BPEL中的变迁条件和联合表达式进行分析,提高了检测的准确性.实际应用结果表明,该方法可以检测出流程中的数据竞争和死锁,提高流程的可靠性.

关键词: 业务流程执行语言, BPEL片段图, 数据竞争检测, 死锁检测, 约束求解

Abstract: The business process always suffers from notorious problems, such as data race and deadlock. Moreover, these problems are extremely difficult to track down by testing and debugging. This paper proposes a novel detection approach for the BPEL process, which is based on the graph theory. The approach first transforms the BPEL process into a graphic model-BSG (BPEL Segment Graph). Then, the deadlocks are detected by finding strongly connected components of BSG. Meanwhile, data races are detected by determining the partial order among nodes in BSG, which in turn can be attained by deciding the reachability among them. It also employs the technique of constraint solving to enhance the accuracy of the detection result. Data races and deadlocks can be effectively detected by this approach, as demonstrated by practical application, thus enhancing the reliability of BPEL processes.

Key words: business process execution language(BPEL), BPEL segment graph(BSG), data race detection, deadlock detection, constraint solving

中图分类号: 

  • TP311