Distributed Business Process Management via Event-Driven Orchestration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current business process management systems face inefficiencies in managing complex workflows due to reliance on polling-based solutions, which lead to high resource utilization and limited scalability, and lack the ability to independently manage and orchestrate flows effectively.
Innovation Solution
The implementation of a distributed business process management system using configuration-driven orchestration with event-driven architectures, where software components like microservices are managed independently, and flow management engines enable autosys jobs and other schedulers to trigger flows based on context availability, allowing for efficient resource utilization and scalability by isolating and managing process flows as independent units.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If polling-based solutions are used to manage complex workflows, then system simplicity is maintained, but resource utilization increases and scalability is limited
Solution Approach 1:
The system segments the workflow management into independent flow units that can be executed autonomously. Each flow is broken down into discrete steps that can be independently scheduled and executed, replacing the monolithic polling-based approach with modular, event-driven flow units that consume resources only when needed.
Solution Approach 2:
Flow units are designed to be self-managing entities that automatically execute their steps without requiring continuous polling. The system implements self-service through event-driven triggers that activate flows based on context availability, eliminating the need for external polling mechanisms and reducing overall resource utilization.
2Device complexity
If polling-based solutions are used to manage complex workflows, then system simplicity is maintained, but scalability is limited
Solution Approach 1:
By segmenting workflows into independent flow units with discrete executable steps, the system enables parallel execution and distributed processing. This segmentation allows the system to scale horizontally by adding more flow execution instances without increasing overall system complexity, as each unit remains independently manageable.
Solution Approach 2:
The system implements dynamic flow execution where flows can be created, modified, and executed in real-time based on business needs. Flow definitions are stored in repositories and can be dynamically instantiated, allowing the system to adapt and scale to varying workloads without requiring complex reconfiguration or centralized control.
3Use of energy by moving object
If flows are managed as independent units with event-driven architecture, then resource utilization is minimized and scalability is improved, but system complexity increases
Solution Approach 1:
The system implements universal flow execution engines that can handle any flow definition stored in the repository. The same core execution infrastructure supports multiple flow types, contexts, and dependencies through standardized interfaces and mechanisms, reducing the need for separate management systems for different flow scenarios and thereby limiting complexity growth.
Solution Approach 2:
The patent introduces intermediary components such as flow repositories, context daemons, and event publishers that mediate between different system elements. These intermediaries manage the complexity of coordinating independent flows by providing standardized communication protocols and abstraction layers, allowing flows to interact without direct coupling and thereby containing system complexity.
4Productivity
If parallel flow paths are allowed to execute independently, then processing efficiency is improved, but failure management becomes more complex
Solution Approach 1:
By segmenting flows into independent executable steps with defined dependencies, the system enables parallel execution of independent paths while maintaining clear failure boundaries. Each step can fail independently without affecting other parallel paths, and failure management is simplified through localized retry logic and step-level error handling rather than system-wide failure management.
Data Source
AI summary
Systems and methods for distributed business process management are disclosed. In one embodiment, in an information processing apparatus comprising at least one computer processor, a method for configuration-driven distributed orchestration using different software components to execute a complex business process may include: (1) receiving a request for a runtime flow from a flow management adapter; (2) reading a flow configuration from the request; (3) creating an instance of the runtime flow; (4) initiating a service call to each component in the runtime flow; (5) creating a runtime instance in a database along with a state of each dependency in the runtime flow; and in response to external dependencies being met: (6) building and sending message to the components using a message builder; (7) initiating flow actions via an event-driven scheduler; and (8) making a service call to at least one of the components using the message builders.


