| 摘要: |
| 软件缺陷是衡量软件测试充分性的一项重要指标,为了提高基于BPEL 的组合Web 服务流程的可靠性和健壮性,提出了一种死路径语义下路径敏感的缺陷检测方法.死路径是BPEL 提供的特殊语义,不具有任何执行信息, 但是可以连接两个可执行路径片段.为了避免死路径对检测精度的影响,将死路径和路径条件有机地结合起来,采用了变量的抽象取值范围来表示流程的执行状态,即属性状态条件.通过状态条件中变量抽象取值范围为空来识别不可达路径及死路径,并在汇合节点进行了属性状态条件的合并.采用一个既与死路径相关又与执行路径相关的未初始化变量的缺陷检测贯穿整个分析与验证过程,进而说明了该方法的有效性. |
| 关键词: BPEL 死路径清除 路径敏感分析 数据流分析 缺陷检测 |
| DOI:10.3724/SP.J.1001.2012.04065 |
| 分类号: |
| 基金项目:国家自然科学基金(91018002); 国家高技术研究发展计划(863)(2009AA012404) |
|
| Path Sensitive Defect Analysis for BPEL Under Dead Path Semantic |
|
YANG Xue-Hong, HUANG Jun-Fei, GONG Yun-Zhan
|
|
State Key Laboratory of Networking and Switching Technology, Beijing University of Posts and Telecommunications, Beijing 100876, China
|
| Abstract: |
| Software defect is an important indicator for measuring the adequacy of software testing. In order to improve the reliability and robustness of Web service composition based BPEL, this paper proposes a defect detecting method which combines the dead path into a path sensitive analysis. Dead path is a special semantic of BPEL, which has no execution information, but can connect two executed path segments. Using the abstract value of variable and its interval arithmetic, this method can identify an unreachable path and dead path, and also merge the conditions of property state at join points. A case study about uninitialized variable detecting which is related to dead path and executing path is given throughout the analysis, and verification is implemented to illustrate the effectiveness of this approach. |
| Key words: BPEL dead path elimination path sensitive analysis dataflow analysis defect detection |