SAT4BSC: a static analysis tool for BPEL source codes

Business Process Execution Language (BPEL) is Extensible Markup Language (XML) based language for describing the logic to orchestrate the interaction between Web services in a business process. Even though it is fairly new language it is getting popularity in various software industries and research environments. The emphasis of recent researches and developments on web services and on BPEL has been in their architecture and interface. However, the work regarding to tool support especially to compute the metrics and to draw control flow graph (CFG) is in its infant stage. Provision of tools to reckon measures has multitude of benefits. CFG is essential tool to analyze various properties of a source code and it is also useful for software testing, software measure, and software maintenance. In this research we have developed a static analysis tool which is dedicated to compute all available BPEL 2.0 metrics and draw CFG of its source code. The tool has been evaluated by various BPEL process source codes obtained from the languages specifications and from other research papers. The test shows that the tool can compute the metrics and draw the CFG effectively and efficiently.

[1]  Wei Sun,et al.  A Graph-Search Based Approach to BPEL4WS Test Generation , 2006, 2006 International Conference on Software Engineering Advances (ICSEA'06).

[2]  Abdul Azim Abdul Ghani,et al.  An Ensemble of Complexity Metrics for BPEL Web Processes , 2008, 2008 Ninth ACIS International Conference on Software Engineering, Artificial Intelligence, Networking, and Parallel/Distributed Computing.

[3]  Jorge S. Cardoso,et al.  Complexity analysis of BPEL Web processes , 2007, Softw. Process. Improv. Pract..

[4]  Richard N. Taylor,et al.  Structural Testing of Concurrent Programs , 1992, IEEE Trans. Software Eng..

[5]  Gottfried Wilhelm,et al.  Design and Implementation of a Framework for Testing BPEL Compositions , 2006 .

[6]  Jorge S. Cardoso,et al.  Process control-flow complexity metric: An empirical validation , 2006, 2006 IEEE International Conference on Services Computing (SCC'06).

[7]  Xiang Fu,et al.  An Analysis Tool for Execution of BPEL Services , 2007, The 9th IEEE International Conference on E-Commerce Technology and The 4th IEEE International Conference on Enterprise Computing, E-Commerce and E-Services (CEC-EEE 2007).

[8]  Abdul Azim Abdul Ghani,et al.  AJcFgraph - AspectJ Control Flow Graph Builder for Aspect-Oriented Software , 2008, ICSC 2008.

[9]  Wil M. P. van der Aalst,et al.  WofBPEL: A Tool for Automated Analysis of BPEL Processes , 2005, ICSOC.

[10]  Chao Cai,et al.  Tool Support for BPEL Verification in ActiveBPEL Engine , 2007, 2007 Australian Software Engineering Conference (ASWEC'07).

[11]  Jan Mendling,et al.  A Discourse on Complexity of Process Models , 2006, Business Process Management Workshops.

[12]  Yaron Goland,et al.  Web Services Business Process Execution Language , 2009, Encyclopedia of Database Systems.

[13]  Jorge Cardoso,et al.  Control-flow Complexity Measurement of Processes and Weyuker's Properties , 2007 .