BPEL Subprocess Definition via Dynamic Scoping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Standard BPEL lacks explicit mechanisms for specifying tightly coupled reusable process logic fragments, leading to inefficient refactoring, increased network resource consumption, and lifecycle management issues such as handling faults and undoing tasks across web services.

Innovation Solution

The method employs a BPEL extension that allows for dynamic scoping and passing variables by reference or value between parent and subprocess processes, enabling efficient reuse and lifecycle management of process logic without the need for explicit protocol coordination.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If web services are used to modularize and reuse process logic fragments, then code reuse is enabled, but software performance is reduced and network resource consumption is increased

Engineering Contradiction:
Improvecode reuseVSAvoidsoftware performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent segments the business process into reusable subprocesses that can be independently defined and invoked. Instead of using loose web service invocations for every process fragment, the process is divided into logical subprocess units that maintain tight coupling with the parent process, enabling code reuse without excessive network overhead.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a subprocess invocation mechanism that acts as an intermediary between the parent process and the reusable process logic. This intermediary allows variables to be passed by reference rather than by value, reducing memory footprint and network resource consumption while maintaining the ability to reuse process logic fragments.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If web services are used to modularize process logic, then process modularity is achieved, but lifecycle management becomes problematic

Engineering Contradiction:
Improveprocess modularityVSAvoidlifecycle management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges the lifecycle management of subprocesses with the parent process. Instead of treating invoked web services as independent entities requiring separate coordination protocols, the subprocess lifecycle is integrated into the parent process lifecycle, allowing automatic propagation of termination, compensation, and cancellation operations.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent inverts the traditional web service invocation model where the caller and callee are independent. Instead, the subprocess is tightly coupled to the parent process, with the subprocess lifecycle being driven by the parent process. This inversion eliminates the need for complex bidirectional coordination protocols.

Inventive Principle:
Principle #13The other way round (Inversion)

3Adaptability or versatility

If standard BPEL web service invocation model is used, then process flexibility is maintained, but network resource consumption increases

Engineering Contradiction:
Improveprocess flexibilityVSAvoidnetwork resource consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The patent uses copying by reference rather than copying by value. Variables are passed to subprocesses as references to the original data structures in the parent process, rather than creating deep copies. This dramatically reduces memory footprint and network resource consumption while maintaining process flexibility.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9141383B2Subprocess definition and visualization in BPEL
Publication Date: 2015.09.22 ORACLE INT CORP
  • US9141383B2 patent drawing
  • US9141383B2 patent drawing
  • US9141383B2 patent drawing

AI summary

A system and method for enabling reuse of a portion of a business process. An example method includes employing a business process language to facilitate accessing a definition of a subprocess characterizing the process logic, wherein the definition indicates one or more parameters to be used by the subprocess to implement a task specified by the process logic; and employing the definition to facilitate: using one or more variables of a parent process as one or more arguments that are passed to an instantiated version of the subprocess, and mapping the one or more arguments to the one or more parameters. In a more specific embodiment, the example method further includes characterizing a behavior of the subprocess via one or more dynamic scoping rules. The business process language includes a version of Business Process Execution Language (BPEL), and a BPEL extension activity facilitates defining the subprocess.