Towards verification of computation orchestration

Recently, a promising programming model called Orc has been proposed to support a structured way of orchestrating distributed Web Services. Orc is intuitive because it offers concise constructors to manage concurrent communication, time-outs, priorities, failure of Web Services or communication and...

Full description

Saved in:
Bibliographic Details
Main Authors: Dong, Jin Song, Liu, Yang, Sun, Jun, Zhang, Xian
Other Authors: School of Computer Engineering
Format: Article
Language:English
Published: 2013
Subjects:
Online Access:https://hdl.handle.net/10356/97865
http://hdl.handle.net/10220/17739
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
id sg-ntu-dr.10356-97865
record_format dspace
spelling sg-ntu-dr.10356-978652020-05-28T07:41:33Z Towards verification of computation orchestration Dong, Jin Song Liu, Yang Sun, Jun Zhang, Xian School of Computer Engineering DRNTU::Engineering::Computer science and engineering Recently, a promising programming model called Orc has been proposed to support a structured way of orchestrating distributed Web Services. Orc is intuitive because it offers concise constructors to manage concurrent communication, time-outs, priorities, failure of Web Services or communication and so forth. The semantics of Orc is precisely defined. However, there is no automatic verification tool available to verify critical properties against Orc programs. Our goal is to verify the orchestration programs (written in Orc language) which invoke web services to achieve certain goals. To investigate this problem and build useful tools, we explore in two directions. Firstly, we define a Timed Automata semantics for the Orc language, which we prove is semantically equivalent to the operational semantics of Orc. Consequently, Timed Automata models are systematically constructed from Orc programs. The practical implication is that existing tool supports for Timed Automata, e.g., Uppaal, can be used to simulate and model check Orc programs. An experimental tool has been implemented to automate this approach. Secondly, we start with encoding the operational semantics of Orc language in Constraint Logic Programming (CLP), which allows a systematic translation from Orc to CLP. Powerful constraint solvers like CLP(R) are then used to prove traditional safety properties and beyond, e.g., reachability, deadlock-freeness, lower or upper bound of a time interval, etc. Counterexamples are generated when properties are not satisfied. Furthermore, the stepwise execution traces can be automatically generated as the simulation steps. The two different approaches give an insight into the verification problem of Web Service orchestration. The Timed Automata approach has its merits in visualized simulation and efficient verification supported by the well developed tools. On the other hand, the CPL approach gives better expressiveness in both modeling and verification. The two approaches complement each other, which gives a complete solution for the simulation and verification of Computation Orchestration. 2013-11-15T07:52:08Z 2019-12-06T19:47:28Z 2013-11-15T07:52:08Z 2019-12-06T19:47:28Z 2013 2013 Journal Article Dong, J. S., Liu, Y., Sun, J., & Zhang, X. (2013). Towards verification of computation orchestration. Formal Aspects of Computing, 26(4), 729-759. https://hdl.handle.net/10356/97865 http://hdl.handle.net/10220/17739 10.1007/s00165-013-0280-9 en Formal aspects of computing
institution Nanyang Technological University
building NTU Library
country Singapore
collection DR-NTU
language English
topic DRNTU::Engineering::Computer science and engineering
spellingShingle DRNTU::Engineering::Computer science and engineering
Dong, Jin Song
Liu, Yang
Sun, Jun
Zhang, Xian
Towards verification of computation orchestration
description Recently, a promising programming model called Orc has been proposed to support a structured way of orchestrating distributed Web Services. Orc is intuitive because it offers concise constructors to manage concurrent communication, time-outs, priorities, failure of Web Services or communication and so forth. The semantics of Orc is precisely defined. However, there is no automatic verification tool available to verify critical properties against Orc programs. Our goal is to verify the orchestration programs (written in Orc language) which invoke web services to achieve certain goals. To investigate this problem and build useful tools, we explore in two directions. Firstly, we define a Timed Automata semantics for the Orc language, which we prove is semantically equivalent to the operational semantics of Orc. Consequently, Timed Automata models are systematically constructed from Orc programs. The practical implication is that existing tool supports for Timed Automata, e.g., Uppaal, can be used to simulate and model check Orc programs. An experimental tool has been implemented to automate this approach. Secondly, we start with encoding the operational semantics of Orc language in Constraint Logic Programming (CLP), which allows a systematic translation from Orc to CLP. Powerful constraint solvers like CLP(R) are then used to prove traditional safety properties and beyond, e.g., reachability, deadlock-freeness, lower or upper bound of a time interval, etc. Counterexamples are generated when properties are not satisfied. Furthermore, the stepwise execution traces can be automatically generated as the simulation steps. The two different approaches give an insight into the verification problem of Web Service orchestration. The Timed Automata approach has its merits in visualized simulation and efficient verification supported by the well developed tools. On the other hand, the CPL approach gives better expressiveness in both modeling and verification. The two approaches complement each other, which gives a complete solution for the simulation and verification of Computation Orchestration.
author2 School of Computer Engineering
author_facet School of Computer Engineering
Dong, Jin Song
Liu, Yang
Sun, Jun
Zhang, Xian
format Article
author Dong, Jin Song
Liu, Yang
Sun, Jun
Zhang, Xian
author_sort Dong, Jin Song
title Towards verification of computation orchestration
title_short Towards verification of computation orchestration
title_full Towards verification of computation orchestration
title_fullStr Towards verification of computation orchestration
title_full_unstemmed Towards verification of computation orchestration
title_sort towards verification of computation orchestration
publishDate 2013
url https://hdl.handle.net/10356/97865
http://hdl.handle.net/10220/17739
_version_ 1681056502203285504