A Discussion of Communication Schemes for Process Execution Histories to Enforce Entailment Constraints in Process-Driven SOAs

A distributed business process is executed in a distributed computing environment. In this context, the service-oriented architecture (SOA) paradigm provides a mature and well-understood framework for the integration of software services. Entailment constraints, such as mutual exclusion or binding c...

Full description

Saved in:
Bibliographic Details
Published inComputer journal Vol. 58; no. 10; pp. 2255 - 2279
Main Authors Quirchmayr, Thomas, Strembeck, Mark
Format Journal Article
LanguageEnglish
Published Oxford Oxford Publishing Limited (England) 01.10.2015
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:A distributed business process is executed in a distributed computing environment. In this context, the service-oriented architecture (SOA) paradigm provides a mature and well-understood framework for the integration of software services. Entailment constraints, such as mutual exclusion or binding constraints, are an important means to specify and enforce business processes in a SOA. Process engines control the process flow and are responsible for the coordination of the services that participate in a distributed business process. Since the enforcement of entailment constraints requires knowledge of the subjects and roles who executed particular task instances, we need to communicate the execution history of the respective tasks and processes between the services and the process engines. However, the inherent concurrency of a distributed system may lead to omission failures. Such failures may impair the enforcement of entailment constraints in a process-driven SOA. In particular, the impact of these failures as well as the corresponding countermeasures depend on the architecture of the respective process engine. In this paper, we discuss communication schemes for (distributed) process execution histories in a SOA. In particular, we provide generic procedures for different communication schemes and examine the efficiency of these schemes as well as their characteristics if omission failures occur. In this context, we especially consider if the respective process engine acts as an orchestration engine or as a choreography engine.
Bibliography:SourceType-Scholarly Journals-1
ObjectType-Feature-1
content type line 14
ObjectType-Article-1
ObjectType-Feature-2
content type line 23
ISSN:0010-4620
1460-2067
DOI:10.1093/comjnl/bxu071