Dynamic BPEL Process Injection via Event-Driven Triggers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing business process execution systems, such as those using BPEL, require redeployment to make changes to long-running processes, which can be complicated and inefficient, especially when variations need to be applied to in-flight instances.

Innovation Solution

An extensible process design that allows dynamic injection of changes into a running BPEL process instance using a combination of BPEL, rules, and events, enabling the addition, removal, or modification of activities without redeployment, through generic trigger processes that can modify the orchestration process at runtime.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If static BPEL processes follow paths defined during design time, then process reliability is improved, but process adaptability deteriorates

Engineering Contradiction:
Improveprocess reliabilityVSAvoidprocess adaptability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic process modification by allowing runtime injection of new activities and modification of existing activities in BPEL processes. The system enables processes to transition from static design-time definitions to dynamic runtime adaptability through event-driven mechanisms that can add, remove, or modify activities without redeployment, thus resolving the contradiction between reliability and adaptability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the state parameter of BPEL processes from static to dynamic by introducing runtime modification capabilities. Through event-driven architecture and dynamic activity injection, the system allows process parameters such as activity sequences, conditions, and behaviors to be changed during execution, enabling adaptability while maintaining operational reliability.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If process variations are implemented using business rules and conditional activities, then process flexibility is improved, but device complexity deteriorates

Engineering Contradiction:
Improveprocess flexibilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the process modification functionality into separate, reusable components such as event handlers, activity templates, and injection points. By dividing the complex process variation logic into modular segments, the system achieves flexibility without proportionally increasing overall system complexity, as each segment can be independently managed and reused.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates universal process modification mechanisms that can handle multiple types of variations through a single framework. The event-driven architecture and dynamic activity injection system serve as multi-functional tools that can add, remove, modify, or skip activities based on different conditions, reducing the need for separate complexity-heavy implementations for each variation scenario.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If process changes require redeployment, then process reliability is improved, but productivity deteriorates

Engineering Contradiction:
Improveprocess stabilityVSAvoidprocess modification efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent prepares the process engine and BPEL runtime environment in advance to support dynamic modifications. By pre-configuring event handling mechanisms, activity injection points, and runtime compilation capabilities, the system enables immediate process changes without redeployment, thus improving productivity while maintaining reliability through pre-established stability protocols.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary layer between process definition and execution that handles dynamic modifications. This intermediary mechanism captures change requests, validates them against reliability constraints, and applies modifications without requiring full redeployment, thus resolving the contradiction between stability and modification efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Adaptability or versatility

If changes are applied to in-flight process instances, then adaptability is improved, but system complexity deteriorates

Engineering Contradiction:
Improveruntime adaptabilityVSAvoidinstance management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements nested process instance management where dynamic modifications are embedded within the existing process execution context. New activities injected at runtime are nested within the parent process instance structure, allowing changes to be applied to in-flight instances without creating separate management systems, thus reducing the complexity overhead of runtime adaptability.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentUS8572618B2Event driven change injection and dynamic extensions to a business process execution language process
Publication Date: 2013.10.29 ORACLE INT CORP
  • US8572618B2 patent drawing
  • US8572618B2 patent drawing
  • US8572618B2 patent drawing

AI summary

An extensible process design provides an ability to dynamically inject changes into a running process instance, such as a BPEL instance. Using a combination of BPEL, rules and events, processes can be designed to allow flexibility in terms of adding new activities, removing or skipping activities and adding dependent activities. These changes do not require redeployment of the orchestration process and can affect the behavior of in-flight process instances. The extensible process design includes a main orchestration process, a set of task execution processes and a set of generic trigger processes. The design also includes a set of rules evaluated during execution of the tasks of the orchestration process. The design can further include three types of events: an initiate process event, a pre-task execution event and a post-task execution event. These events and rules can be used to alter the behavior of the main orchestration process at runtime.