透過您的圖書館登入
IP:3.15.218.254
  • 學位論文

WS-BPEL流程補償行為之分析與測試

Compensation Behavior Analysis and Testing for WS-BPEL Process

指導教授 : 劉建宏
若您是本文的作者,可授權文章由華藝線上圖書館中協助推廣。

摘要


網際服務商業流程執行語言(簡稱WS-BPEL) 為商業流程描述語言的業界標準,WS-BPEL被廣泛用來將鬆散偶合的網際服務組合成一個商業流程來滿足企業的需求。為確保流程中交易ACID的性質被滿足,WS-BPEL定義一種補償處理活動(compensation handler)以避免商業流程因錯誤的條件、技術問題或商業例外而造成交易資料結果不一致的狀態。然而WS-BPEL流程的補償行為深受流程的結構和狀態影響,非常複雜以致於難以理解與分析。為確保流程補償行為的正確性,本論文提出一個WS-BPEL流程補償行為的分析與測試方法,此方法透過分析各個補償處理活動可能發生的位置與觸發方式,並依照流程的結構與執行狀態計算可能的補償序列,以協助分析WS-BPEL流程的補償行為。此外,本論文亦描述一個基於錯誤注入(fault injection)概念以測試補償行為的方法,詳細分析錯誤注入於流程中的位置對作用域的狀態以及補償處理行為的影響,協助測試人員以錯誤注入的方式產生預期的補償序列。另外,我們亦提出一些補償處理測試行為的覆蓋率準則,讓測試人員能依據測試需求及成本選擇適合且足夠的測試案例。同時,本論文亦開發一套WS-BPEL補償處理行為分析的輔助工具,協助測試人員對WS-BPEL流程的補償處理行為進行分析與測試。

並列摘要


Web Service Business Process Execution Language (WS-BPEL) is an industry standard of business process specification language. It has been widely used to compose loosely-coupled web services into a business process for satisfying the needs of business. To facilitate the satisfication of transactional ACID properties, WS-BPEL introduces compensation handler in order to solve the inconsistent transactional states that may be caused due to faulty conditions, technical problems, and unexpected exceptions in the business process. However, the compensation behavior of WS-BPEL process is deeply affected by the structure and state of the process and is very complex and hard to understand and analyze. To ensure the correctness of compensation behavior, the paper proposes an approach to analyze and test the compensation behavior of WS-BPEL process. Specifically, a method is presented to calculate all possible compensation sequences of a WS-BPEL process through analyzing the the locations and the invocation types of compensation as well as the static structure and dynamic state of the process. In addition, a method based on fault injection is described to test compensation behavior. In particular, the influences caused by the locations of injected facults to the states of scopes and the behavior of compensation are analyzed in detail so as to facilitate the generation of expected compensation sequences using fault injection. Moreover, a set of coverage criteria for testing compensation behavior is proposed to assist the selection of compensation sequences for achieving test adequacy while stratifying the need and cost of the test. Further, a supporting tool is also developed to facilitate the analysis and test of WS-BPEL compensation behavior.

參考文獻


[1]Web Services Business Process Execution Language Version 2.0, OASIS Standard, http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html
[5]P. Greenfield, A. Fekete, J. Jang, and D. Kuo, “Compensation is Not Enough,” In Proceedings of the Seventh International Enterprise Distributed Object Computing Conference, pp.232, Sep. 2003.
[6]R. Khalaf, D. Roller, and F. Leymann, “Revisiting the Behavior of Fault and Compensation Handlers in WS-BPEL,” In Proceedings of the On the Move to Meaningful Internet Systems, vol. 5870, pp.286-303, Nov. 2009.
[7]C. Eisentraut and D. Spieler, “Fault, Compensation and Termination in WS-BPEL 2.0 — A Comparative Analysis,” In Proceedings of the 5th International Workshop on Web Services and Formal Methods, pp.107-126, Sep. 2008.
[10]G. Pu, H. Zhu, Z. Qiu, S. Wang, X. Zhao, and J. He, “Theoretical Foundations of Scope-Based Compensable Flow Language for Web Service,” In Proceedings of the 8th IFIP WG 6.1 International Conference on Formal Methods for Open Object-Based Distributed Systems, pp.251-266, Jun. 2006.

延伸閱讀