Home > Design Patterns > Process Abstraction
Process Abstraction

Process Abstraction (Erl)

How can non-agnostic process logic be separated and governed independently?

Problem

Grouping task-centric logic together with task-agnostic logic hinders the governance of the task-specific logic and the reuse of the agnostic logic.

Solution

A dedicated parent business process service layer is established to support governance independence and the positioning of task services as potential enterprise resources.

Application

Business process logic is typically filtered out after utility and entity services have been defined, allowing for the definition of task services that comprise this layer.

Impacts

In addition to the modeling and design considerations associated with creating task services, abstracting parent business process logic establishes an inherent dependency on carrying out that logic via the composition of other services.

Architecture

Inventory, Composition, Service
Process Abstraction: Solution logic limited to the fulfillment of parent business processes is abstracted into separate task services. This establishes a parent task service layer that abstracts nonagnostic business process logic responsible for composing agnostic services.

Solution logic limited to the fulfillment of parent business processes is abstracted into separate task services. This establishes a parent task service layer that abstracts nonagnostic business process logic responsible for composing agnostic services.