Workflow Engine Mediator for Third-Party Integration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing content management systems face limitations in workflow accessibility due to the exponential growth of required integrations between applications, restricting workflows to only those native to locally integrated applications, and lacking a mechanism for efficient communication between various applications.

Innovation Solution

Implementing a content management system that facilitates access to a dynamically extensible set of applications, reducing the need for direct integrations by acting as an intermediary, allowing users to invoke workflows across remote applications without direct integration, and enabling efficient data organization and communication paths for improved workflow management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If direct integration between applications is established to enable workflow access, then workflow accessibility is improved, but the number of required integrations grows exponentially

Engineering Contradiction:
Improveworkflow accessibilityVSAvoidnumber of integrations
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a workflow engine as an intermediary component that mediates between applications and workflows. Instead of requiring direct integration between every application pair, the workflow engine receives workflow definitions and execution requests, manages the workflow states, and coordinates between applications. This reduces the integration complexity from O(N²) to O(N) by eliminating the need for direct application-to-application integration paths.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If applications are limited to native workflows only, then integration complexity is reduced, but workflow versatility is restricted

Engineering Contradiction:
Improveintegration complexityVSAvoidworkflow variety
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The workflow engine serves as a universal platform that can execute workflows from multiple different applications through a common interface. The system defines workflows using a standardized format that can represent operations from various applications, allowing a single workflow engine to handle diverse workflow types without requiring application-specific integration logic for each workflow type.

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

3Adaptability or versatility

If direct integration paths are established between all applications, then complete workflow access is achieved, but system maintainability deteriorates

Engineering Contradiction:
Improveworkflow access completenessVSAvoidsystem maintainability
Core Design Contradiction:
Adaptability or versatilityVSEase of repair

Solution Approach 1:

The patent extracts the workflow management functionality from individual applications and centralizes it in a dedicated workflow engine. The workflow definitions, state management, and execution logic are separated from application code, allowing workflow-related issues to be maintained and updated independently of application updates. This extraction simplifies maintenance by creating a clear separation of concerns between application development and workflow management.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS20240311500A1Workflow execution state variables
Publication Date: 2024.09.19 BOX INC
  • US20240311500A1 patent drawing
  • US20240311500A1 patent drawing
  • US20240311500A1 patent drawing

AI summary

Methods, systems and computer program products for managing workflows between multiple third-party systems. A content management system stores a workflow that operates over content objects by invoking third-party applications. The content management system invokes these third-party applications, and these applications make modifications to the progression of the workflows as the third-party applications carry-out their specific portions of the workflow. Upon receipt of a workflow variable value from a first third-party application, the content management system determines the semantics of the workflow variable value and caries out a next portion of the workflow. The content management system then invokes a further next portion of the workflow to be carried out by a second third-party application. Upon receipt of a workflow variable value from the second third-party application, the content management system determines the semantics of the workflow variable value to then carry out yet a further portion of the workflow.