Workflow State Machine Error Handling via Definition Language

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional workflow service approaches lack flexibility in specifying data flow manipulation, data flow object integrity, and robust error handling between states of a workflow state machine, particularly in computer systems where workflows are processed.

Innovation Solution

A workflow definition language is introduced that allows users to define workflows with detailed state transitions, data flow management, and error handling through features like filters, retries, and timeouts, enabling flexible data manipulation and robust error handling across state transitions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional workflow service approaches are used, then workflow execution is provided, but flexibility in specifying data flow manipulation and error handling is insufficient

Engineering Contradiction:
Improveflexibility in specifying data flow manipulationVSAvoidworkflow definition language complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a workflow definition language that allows users to specify parameters such as data flow manipulation operations, error handling strategies, and timeout configurations. By enabling parameter changes in the workflow definition, users can adapt workflows to different scenarios without increasing the underlying system complexity.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The workflow definition language acts as an intermediary between the user's high-level workflow specifications and the complex execution system. This intermediary layer translates user-friendly definitions into executable instructions, providing flexibility without exposing the complexity of the execution engine.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If traditional workflow service approaches are used, then workflow execution is provided, but robust error handling between states is not available

Engineering Contradiction:
Improveerror handling robustnessVSAvoidease of defining error handling
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The workflow definition language allows users to pre-specify error handling strategies and timeout configurations before workflow execution. By defining error handling behavior in advance, the system can reliably manage errors without requiring complex runtime decisions, thus improving reliability while maintaining ease of operation.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If workflows are executed on multiple computing resources, then processing capability is increased, but resource allocation efficiency decreases due to idle resources

Engineering Contradiction:
Improveprocessing capabilityVSAvoididle resource allocation
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The workflow execution system automatically manages resource allocation across multiple computing resources without requiring manual intervention. The system self-adjusts to distribute workflow tasks efficiently, utilizing available resources dynamically and avoiding idle allocation by matching workflow requirements with appropriate resource capacity.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9904585B1Error handling in executing workflow state machines
Publication Date: 2018.02.27 AMAZON TECH INC
  • US9904585B1 patent drawing
  • US9904585B1 patent drawing
  • US9904585B1 patent drawing

AI summary

A workflow interpreter service that interprets a workflow definition language for specifying a workflow definition. Further, the workflow definition language provides features for maintaining control over data flows for data that is passed from one state to another among states of a state machine for a workflow and features for handling errors that may occur within any given state of a workflow state machine. Such control over data flow in between states allows for a given workflow to be processed incrementally, and among multiple different computing resources. Further, the workflow definition language error handling features provide for robust error handling within the state machine framework corresponding to workflow.