Workflow Graph Symbolic Execution for Control-Flow Error Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for analyzing control-flow in business process models are inefficient in detecting control- and data-flow errors, particularly due to exponential time complexity and lack of diagnostic information, especially when dealing with acyclic workflow graphs containing AND-, XOR-, and IOR-types of nodes.

Innovation Solution

A computer-implemented method that represents a business process as an acyclic workflow graph and performs symbolic execution by labeling edges with unique identifiers, allowing for deadlock detection and characterization, while reducing computational resources by propagating labels based on node types and ensuring equivalence of incoming edges at AND-join nodes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If state space exploration is used to detect control-flow errors, then diagnostic information is provided, but the time complexity becomes exponential

Engineering Contradiction:
Improvediagnostic informationVSAvoidtime complexity
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The patent segments the workflow graph into smaller components and processes them independently using a region-based approach. By dividing the graph into regions and analyzing each region separately, the method avoids the exponential complexity of exploring the entire state space while still providing diagnostic information about control-flow errors.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by pre-computing reachability information and control-flow relationships before the actual error detection. This includes computing the transitive closure of the workflow graph and pre-identifying potential error locations, which reduces the computational burden during the actual analysis phase.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If explicit execution of workflow graph is used to compute control-flow relations, then complete analysis is achieved, but the algorithm becomes exponential in worst case

Engineering Contradiction:
Improveanalysis completenessVSAvoidalgorithm efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent replaces the mechanical explicit execution approach with a mathematical computation approach. Instead of explicitly executing all possible paths through the workflow graph, the method uses matrix operations and transitive closure computations to determine control-flow relationships, achieving polynomial time complexity while maintaining analysis completeness.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent changes the parameters of the analysis by working with the structure of the workflow graph itself rather than its execution states. By analyzing the graph's topology, node types, and edge relationships directly, the method achieves complete control-flow analysis without enumerating exponential numbers of execution states.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If rank theorem technique is used to decide soundness, then polynomial time is achieved, but diagnostic information is not provided

Engineering Contradiction:
Improvecomputational efficiencyVSAvoiddiagnostic information
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent incorporates feedback mechanisms that allow the algorithm to generate diagnostic information during the polynomial-time analysis. By tracking which regions and edges contribute to control-flow violations, the method provides detailed diagnostic information about the nature and location of errors while maintaining computational efficiency.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent introduces intermediary structures such as region annotations and control-flow labels that serve as mediators between the efficient polynomial-time analysis and the diagnostic information requirement. These intermediaries carry additional information about error locations and types without significantly increasing computational complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If reduction techniques are applied to industrial processes, then exponential complexity is reduced, but structural complexity of the method increases

Engineering Contradiction:
Improvecomputational complexityVSAvoidmethod complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent creates a universal region-based analysis framework that handles multiple types of workflow graph structures and error conditions through a single unified approach. This multi-functional method can analyze various process types (industrial, service, business processes) and detect different error kinds (deadlocks, synchronization errors, control-flow violations) using the same core algorithm, reducing overall method complexity.

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

Data Source

PatentUS10176444B2Computer-implemented method, computer program product and system for analyzing a control-flow in a business process model
Publication Date: 2019.01.08 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10176444B2 patent drawing
  • US10176444B2 patent drawing
  • US10176444B2 patent drawing

AI summary

A new technique to analyze the control-flow, i.e., the workflow graph of a business process model, which is called symbolic execution, is provided. Acyclic workflow graphs that may contain inclusive OR-gateways are considered; a symbolic execution for them is defined, which runs in quadratic time. In particular, this symbolic execution essentially comprises labeling edges of nodes of the graph such that a label assigned to a first edge comprises a set of one or more edge identifiers, each identifying a second edge that is an outgoing edge of an XOR-split or an IOR-split node in the graph, whereby executing the second edge ensures that the first edge will be executed. Such a scheme may permit a decision for any pair of control-flow edges or tasks of the workflow graph whether they are sometimes, never, or always reached concurrently. This has different applications in finding control- and data-flow errors.