Shares the functionality of modelling a sequence of operations, states, and conditions that control the interactions involved in the participating services. The interaction prescribed by a choreography results in the completion of some useful function.
A choreography can be distinguished from an orchestration. An orchestration defines the sequence and conditions in which one service invokes other services in order to realize some useful function.
Based on W3C
https://www.w3.org/TR/ws-arch/
The following implementation is an example on how this specific Architecture Building Block (ABB) can be instantiated as a Solution Building Block (SBB):
Camunda
The core of Camunda BPM is a model execution engine that supports the OMG standards BPMN 2.0 for process automation, CMMN 1.1 for case management and DMN 1.1 for decision management.
Camunda BPM ships with a set of applications to help you model, execute and administer process applications running on the Camunda core engine. Those applications interact with the core engine's public REST API. You can also create your own applications that may also use the core engine's public Java API. It is lightweight and requires less than 3MB of disk space. It can run in any Java Virtual Machine (JVM) and comes with extended integration for different runtime containers.
The engine can be accessed via the REST API, or via the Java API and existing integrations with Spring and Java EE can be used. BPMN service tasks can be implemented in Java code, or the built-in REST and SOAP connectors can be used. Scripts, expressions and templates can also be applied for process implementation. Clustering for horizontal scalability is straightforward as the engine is stateless: multiple instances can share the same database.
BPMN 2.0 Processes permits the fully automated service orchestration and human workflow management.
https://camunda.org/features/
|
|
dct:type | eira:ChoreographyService |
dct:modified | 2023-05-25 |
eira:ID | ABB44 |
adms:status | deprecated |