eprintid: 1563 rev_number: 8 eprint_status: archive userid: 31 dir: disk0/00/00/15/63 datestamp: 2013-05-02 13:30:10 lastmod: 2013-05-02 13:30:10 status_changed: 2013-05-02 13:30:10 type: article metadata_visibility: show creators_name: Lapadula, Alessandro creators_name: Pugliese, Rosario creators_name: Tiezzi, Francesco creators_id: creators_id: creators_id: francesco.tiezzi@imtlucca.it title: Using formal methods to develop WS-BPEL applications ispublished: pub subjects: QA75 divisions: CSA full_text_status: public keywords: Service-oriented architectures, Web services, Formal methods, WS-BPEL, Operational semantics, Compilers abstract: In recent years, WS-BPEL has become a de facto standard language for orchestration of Web Services. However, there are still some well-known difficulties that make programming in WS-BPEL a tricky task. In this paper, we firstly point out major loose points of the WS-BPEL specification by means of many examples, some of which are also exploited to test and compare the behaviour of three of the most known freely available WS-BPEL engines. We show that, as a matter of fact, these engines implement different semantics, which undermines portability of WS-BPEL programs over different platforms. Then we introduce Blite, a prototypical orchestration language equipped with a formal operational semantics, which is closely inspired by, but simpler than, WS-BPEL. Indeed, Blite is designed around some of WS-BPEL distinctive features like partner links, process termination, message correlation, long-running business transactions and compensation handlers. Finally, we present BliteC, a software tool supporting a rapid and easy development of WS-BPEL applications via translation of service orchestrations written in Blite into executable WS-BPEL programs. We illustrate our approach by means of a running example borrowed from the official specification of WS-BPEL. date: 2012 date_type: published publication: Science of Computer Programming volume: 77 number: 3 publisher: Elsevier pagerange: 189-213 id_number: 10.1016/j.scico.2011.03.002 refereed: TRUE issn: 0167-6423 official_url: http://www.sciencedirect.com/science/article/pii/S0167642311000694 projects: IThis work has been partially supported by the EU project SENSORIA IST-2005-016004 citation: Lapadula, Alessandro and Pugliese, Rosario and Tiezzi, Francesco Using formal methods to develop WS-BPEL applications. Science of Computer Programming, 77 (3). pp. 189-213. ISSN 0167-6423 (2012) document_url: http://eprints.imtlucca.it/1563/1/LPT_scico.pdf