Decentralized Workflow Execution in Pervasive Environments
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing workflow execution systems in pervasive environments rely on centralized control and static design, which is inadequate for dynamic and decentralized scenarios, limiting the flexibility and adaptability of distributed workflow execution.
Innovation Solution
A fully decentralized control architecture that dynamically assigns roles to devices and uses a distributed workflow engine to execute tasks, allowing for runtime discovery of devices and web services, with messaging protocols that include workflow definitions, instance identifiers, and mapping tables to manage workflow execution across multiple devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If centralized control architecture is used for workflow execution, then workflow management is simplified and reliable, but flexibility and adaptability in dynamic pervasive environments deteriorate
Solution Approach 1:
The workflow execution system is segmented into multiple independent workflow engines distributed across different devices. Each engine can independently execute workflow tasks without requiring centralized coordination, enabling the system to adapt to dynamic pervasive environments while maintaining reliability through distributed operation
Solution Approach 2:
The system dynamically assigns roles to devices at runtime based on their capabilities and availability. Devices can join or leave the workflow execution dynamically, and the system adapts by reassigning tasks without requiring centralized reconfiguration, thus achieving both flexibility and reliability
2Reliability
If static design approach is used for workflow execution, then system design is simplified and reliable, but adaptability to runtime changes deteriorates
Solution Approach 1:
The system transitions from static role assignment to dynamic role assignment at runtime. Devices discover available web services and assume workflow roles based on their current capabilities and the workflow requirements, allowing the system to adapt to runtime changes while maintaining execution reliability through structured workflow definitions
Solution Approach 2:
The system performs preliminary workflow definition and task decomposition before execution, establishing the workflow structure and dependencies in advance. At runtime, devices dynamically discover and assign themselves to appropriate tasks based on predefined workflow requirements, combining structured preparation with flexible execution
3Reliability
If dedicated management infrastructure is deployed, then workflow execution control is reliable and coordinated, but system complexity and deployment requirements increase
Solution Approach 1:
Devices autonomously discover available web services and determine their own roles in the workflow execution without requiring dedicated management infrastructure. Each device independently executes its assigned workflow tasks and coordinates with other devices through standardized messaging, eliminating the need for complex centralized management systems while maintaining reliable execution control
Solution Approach 2:
Regular devices in the pervasive environment serve multiple functions: they act as workflow engines, service registries, and coordination points simultaneously. This multi-functionality eliminates the need for dedicated management infrastructure, reducing system complexity while maintaining reliable workflow execution through the existing device capabilities
Data Source
AI summary
To allow workflow execution on a plurality of local devices such as in a pervasive environment in a decentralized manner, the present application proposes a method and architecture for executing a workflow on a device, the workflow comprising one or more task activities (tn) comprising actions performed by devices participating in the workflow and routing activities (rin) used to transfer control and data between devices, wherein the method comprises the operations of:receiving a message representing an incoming routing activity (rij);generating from the workflow a local part (Wn) to be executed on the device;executing task activities comprised by the generated local part (Wn) on the device;performing a request to a discovery service in order to obtain one or several identifications of next devices; andsending one or more messages representing a routing activity (rij) to the one or more next devices thus identified.


