Asynchronous Fault Handling in Workflow State Automata

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing workflow models are inflexible and lack extensibility, failing to accommodate complex workflows, dynamic changes, and proper exception handling, with limited ability to interleave execution threads and associate business logic effectively.

Innovation Solution

A state automaton-based framework that allows for asynchronous fault handling, enabling developers to declaratively design exception handling for workflows, with the option to propagate or suppress notifications, and respond to post-fault operations, while supporting activities in any programming language and file format.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a complete flow-based description of entire business process including all exceptions is required, then comprehensive exception handling is achieved, but system flexibility and ease of authoring are reduced

Engineering Contradiction:
Improveexception handling completenessVSAvoidworkflow model complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments exception handling into separate fault handling states that can be independently defined and associated with specific workflow activities. Instead of requiring a complete flow-based description of all exceptions throughout the entire process, the system allows exceptions to be handled locally at the activity level through state automata, reducing overall model complexity while maintaining comprehensive exception coverage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces fault handling states as intermediary elements between workflow activities and exception handling logic. These states act as mediators that capture and manage exceptions asynchronously, allowing the main workflow to continue without being interrupted by comprehensive exception flow definitions, thus reducing complexity while maintaining reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If synchronous exception handling is used to ensure proper fault management, then exception coverage is improved, but workflow execution efficiency and productivity are reduced

Engineering Contradiction:
Improvefault managementVSAvoidworkflow execution efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements periodic/asynchronous exception handling through fault handling states that are triggered and executed at appropriate intervals or conditions rather than synchronously at every exception point. This allows the workflow to maintain synchronous execution for normal operations while periodically processing exceptions through dedicated fault states, improving overall execution efficiency while maintaining proper fault management.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent segments exception handling into separate asynchronous fault handling states that operate independently from the main workflow execution path. This segmentation allows the workflow to continue executing efficiently without being blocked by synchronous exception processing, while still ensuring comprehensive fault management through the dedicated fault states.

Inventive Principle:
Principle #1Segmentation

3Ease of manufacture

If language-based approaches with closed set of constructs are used, then standardized workflow modeling is achieved, but extensibility and adaptability are reduced

Engineering Contradiction:
Improveworkflow modeling standardizationVSAvoidmodel extensibility
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The patent introduces dynamic extensibility to workflow modeling by allowing the addition of custom fault handling states and exception handling logic beyond the standardized constructs. The system maintains standardized workflow modeling through language-based approaches while dynamically extending functionality through user-defined fault states and exception handling mechanisms, enabling both standardization and adaptability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent creates a universal framework that combines standardized workflow constructs with extensible fault handling capabilities. The fault handling states serve as multi-functional elements that can handle both standardized exceptions through language-based approaches and custom exceptions through user-defined logic, achieving both standardization and extensibility within a single system.

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

4Adaptability or versatility

If application-based approaches with domain-specific capabilities are used, then domain specificity is improved, but programmability and re-hostability are reduced

Engineering Contradiction:
Improvedomain specificityVSAvoidprogrammability
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent creates a universal state automaton framework that can be applied across different domains while maintaining domain-specific capabilities. The fault handling states serve as programmable, reusable components that can be configured for specific domain requirements while maintaining general programmability and re-hostability through the standardized state machine approach.

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

Solution Approach 2:

The patent segments domain-specific exception handling into modular fault handling states that can be independently configured and reused across different domains. This segmentation allows domain-specific capabilities to be maintained through customized fault state configurations while preserving programmability through the standardized state automaton framework that can be hosted in different programming environments.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS7739135B2Asynchronous fault handling in process-centric programs
Publication Date: 2010.06.15 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7739135B2 patent drawing
  • US7739135B2 patent drawing
  • US7739135B2 patent drawing

AI summary

Asynchronous fault handling for a workflow. A state automaton for an activity in the workflow is defined. The state automaton includes at least an executing state, a faulting state, and a closed state and classifies an execution lifetime of the activity. The activity is defined to include work items and includes an execution hierarchy for the work items. Each work item includes an operation for executing a portion of the activity. Each work item is transitioned to the executing state. The included operation of transitioned work items is executed in the executing state. One or more of the transitioned work items are identified in response to the faulting event as a function of the execution hierarchy and the included operation. The faulting event is asynchronously handled by transitioning the one or more identified work items to the faulting state while executing the included operation of the remaining transitioned work items.