Skip to content

Choreographed System Architecture

Artifact - Choreography-enabled System Architecture

Artifact Factsheet

Fact Sheet
Name Choreography-enabled System Architecture
Artifact Type Design Pattern
Target Users System Architects
Objective This architecture pattern describes the application of automation service choreographies in the context of a modular plant and central orchestration. It provides insights into changes and influences through the use of choreographies in combination with central orchestration. Rigid equipment-oriented structures and boundaries blur due to composed functions that are formed across equipment boundaries. The transformation from current to future system architectures is presented using three figures. Current architectures are based exclusively on central orchestration. Future architectures use both central orchestration and choreographies for system automation. The purpose of the architecture pattern is to clarify the changes to future system architects and introduce the next level of detail of the concept.

Relevant Publications

This architectural pattern will be initially published in the PhD thesis, which is not yet publicly available.

Artifact Description

The architectural pattern of Choreography-enabled System Architecture introduces the resulting system architecture and shows the impact of choreographed automation services on service-based automation systems and their central orchestration in the Process Orchestration Layer.

System Architecture Overview Figure 1: System architecture of a modular plant with a modular unit composed by choreography

Artifact Building Blocks

Modular Plant

The Modular Plant represents the physical and software-based system that should be capable of manufacturing a product. It consists of the Process Orchestration Layer as well as several atomic and modular PEAs.

Modular Units - PEA A, PEA G and Modular PEA X

The modular units PEA A and PEA G each describe a self-contained system that can provide services with automation functions of different granularity. Each PEA has at least one control system connected to the Process Orchestration Layer. Current PEAs are passive communication participants regarding their role in communication with the Process Orchestration Layer, hence existing systems are also called passive choreography participants. The active role of communication lies solely with the Process Orchestration Layer. This will need to change in the future for modular units in the context of choreographies.

For the modular PEA X, this will partially change in the future. Towards the Process Orchestration Layer, the modular PEA X remains a passive communication participant. As active choreography participants, the FEAs and COMPs within the modular PEA X gain the ability to act as active communication participants. This requires FEAs and COMPs to have their own control systems that meet these requirements while being adapted in performance to their specific needs.

Controllers and the Concept of Choreography Participants

The Controller represents the program-executing component within a PEA. Typically, PEAs have exactly one control system on which services are implemented and provided. However, it cannot be excluded that modular units also have two or more control systems.

An active choreography participant refers to a control system that has implemented the design patterns developed in this work. A passive choreography participant refers to a control system that has not implemented these design patterns.

Services

A Service describes the encapsulation of an automation function through state-based abstraction and parameterization. Services also have input and output process values that can be linked together for closed-loop control functions or interlocks.

Process Orchestration Layer (POL)

The Process Orchestration Layer bundles the system functions necessary for operating the Modular Plant. Essential components include central Orchestration, Operation & Monitoring, and Choreography Configuration. The latter is added through the introduction of choreography mechanisms for modular PEAs.

Orchestration

The Orchestration enables coordination of services provided by the PEAs. Orchestration does not distinguish whether they are services of atomic or modular PEAs.

Operation & Monitoring

Operation & Monitoring provides a simple and clear way to look into the current process. Process diagrams enable plant operators to monitor the status and progress of production and intervene when necessary.

Choreography Configuration

The newly introduced Choreography Configuration describes a Process Orchestration Layer system function with which choreographies can be designed and activated. Activation includes transferring the configuration and initiating execution of configurable logic and configurable communication.

Leader

When designing an automation service choreography, one service must act as Leader, representing the single point of access of the choreographed function to the Process Orchestration Layer and communicating with higher-level systems through its interface.

A service can assume the role of Internal Lead if its state matches that of the choreographed function. The other services act as followers. In cases where no single service can represent the entire function – such as in sequential processes – an External Lead is required.

Artifact Decisions

Focus on Runtime Technical Aspects

System architectural investigations showed that neither an implementation nor an engineering approach for automation service choreographies existed previously. A solid engineering methodology requires clear definition of what content is captured and how it can be transferred into technical implementation.

Combination of Orchestration and Choreography

System architectural considerations raised the question of whether choreography should completely replace or supplement central orchestration. Comparison of both approaches shows that system complexity increases significantly with the number of services in choreographed systems.

While technically feasible, complete replacement of orchestration by plant-wide choreography has practical limitations due to information processing complexity and lack of clarity without supporting engineering methodology.

Therefore, this work limits choreography to combining FEAs and COMPs. Coordination of composite PEAs continues through central orchestration in the POL.

Artifact Implementation Details

The composite PEA X from Figure 1 can be implemented in various ways. Figure 2 shows a theoretical representation of all choreography patterns considered in this work, describing four patterns in total.

Choreography Structure Figure 2: Theoretical structure of a choreography of a composite modular unit with different occurring choreography patterns

Solid lines describe connections between two active (choreography) participants. Dashed lines describe connections between active and passive (choreography) participants. Transparent services have no significance for choreography configuration and remain available to central orchestration.

Four Choreography Patterns

Pattern 1: Modular unit (FEA B and E) with one active choreography participant. This unit has a single control system capable of participating in choreography.

Pattern 2: Modular unit with multiple controls (FEA C). Both controls are choreography-capable and participate as active participants C1 and C2.

Pattern 3: Represented by FEA D. The unit has two controls (D1 and D2). One is choreography-capable (active participant D1), the other is not (passive participant D2). The active participant D1 serves as decentralized orchestrator for the passive participant D2.

Pattern 4: Variation of Pattern 3 with participants distributed across two modular units (FEA E and F). Both units form a participant pair consisting of active participant E and passive participant F.

The resulting system architecture from the POL perspective is shown in Figure 3:

Result Architecture Figure 3: System architecture resulting from choreography usage and automation services available for orchestration

Artifact Application

Using automation service choreographies within a modular plant leads to blurring system boundaries of modular units (PEAs, FEAs, and COMPs). The design pattern introduces an implicitly existing system level below the POL, serving to form composite functions through distributed behavioral rules and configurable communication.

The blackbox of composite PEA X from Figure 1 is merged with various FEAs from Figure 2, resulting in the modular plant shown in Figure 3 with seven physical PEAs and one non-physically existing PEA formed through choreography.

Services A1, A2, B1, B2, D11, E2, F1, G1, G2 are available to central Orchestration. Focus is on Service B1, which acts as Leader Service representing the choreography. Follower Services C11, C12, C21, C22, D12, D21, D22, E1, and F2 are part of the choreography and not available to central Orchestration.

This type of choreographed composite PEA formation can be performed multiple times. There are exactly as many Leader Services as there are configured choreographies in the system.