Frontiers of Computer Science

, Volume 8, Issue 5, pp 709–725

A UTP semantic model for Orc language with execution status and fault handling

Research Article

DOI: 10.1007/s11704-014-3385-2

Cite this article as:
Li, Q., Zhao, Y., Zhu, H. et al. Front. Comput. Sci. (2014) 8: 709. doi:10.1007/s11704-014-3385-2

Abstract

The Orc language is a concurrency calculus proposed to study the orchestration patterns in service oriented computing. Its special features, such as high concurrency and asynchronism make it a brilliant subject for studying web applications that rely on web services. The conventional semantics for Orc does not contain the execution status of services so that a program cannot determine whether a service has terminated normally or halted with a failure after it published some results. It means that this kind of failure cannot be captured by the fault handler. Furthermore, such a semantic model cannot establish an order saying that a program is better if it fails less often. This paper employs UTP methods to propose a denotational semantic model for Orc that contains execution status information. A failure handling semantics is defined to recover a failure execution back to normal. A refinement order is defined to compare two systems based on their execution failures. Based on this order, a system that introduces a failure recovery mechanism is considered better than one without. An extended operational semantics is also proposed and proven to be equivalent to the denotational semantics.

Keywords

Orc language service oriented computing unifying theories of programming denotational semantics operational semantics 

Copyright information

© Higher Education Press and Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  1. 1.Software Engineering InstituteEast China Normal UniversityShanghaiChina