BPEL Subprocess Definition via Dynamic Scoping
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
2Adaptability or versatility
If web services are used to modularize process logic, then process modularity is achieved, but lifecycle management becomes problematic
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.
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.
3Adaptability or versatility
If standard BPEL web service invocation model is used, then process flexibility is maintained, but network resource consumption increases
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.
Data Source
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.


