WOPI Server Architecture Decoupling Cloud Apps

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Integrating a cloud-based application with a Microsoft online application while complying with WOPI requirements often restricts the performance of the cloud-based application, as it necessitates changes in behavior and data storage practices.

Innovation Solution

A new WOPI server architecture that decouples the backend server from the WOPI Client, allowing it to maintain compliance with WOPI specifications without altering server code or data storage practices, thereby acting as a proxy to manage access tokens and sync working copies, ensuring seamless interaction with WOPI Clients while maintaining independence from WOPI requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a WOPI-compliant interface is put on top of the cloud-based application to integrate with Microsoft online applications, then integration capability is improved, but the performance and autonomy of the cloud-based application deteriorates due to restrictions on behavior and data storage practices

Engineering Contradiction:
Improveintegration capabilityVSAvoidapplication performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent divides the system into two independent parts: a WOPI Host component that handles WOPI protocol compliance and a cloud-based application component that maintains its original behavior. The WOPI Host acts as a separate service that interfaces with Microsoft online applications, while the cloud-based application remains unchanged and autonomous, thus achieving integration without compromising performance or autonomy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The WOPI Host serves as an intermediary layer between the cloud-based application and Microsoft online applications. It receives requests from the cloud-based application, translates them into WOPI-compliant operations, executes them through the WOPI protocol, and returns results. This mediator enables integration while allowing the cloud-based application to maintain its original architecture and performance characteristics.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the cloud-based application modifies its behavior and data storage to comply with WOPI requirements, then compliance with WOPI specifications is improved, but the complexity of the application architecture deteriorates

Engineering Contradiction:
ImproveWOPI complianceVSAvoidapplication architecture complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent separates WOPI compliance responsibilities from the cloud-based application by creating a distinct WOPI Host component. This segmentation ensures that the cloud-based application does not need to modify its architecture or behavior, while the WOPI Host independently handles all compliance requirements, thus maintaining simplicity in the original application while achieving reliable WOPI compliance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The WOPI Host acts as an intermediary that absorbs all WOPI compliance requirements. It translates cloud-based application operations into WOPI-compliant formats and handles data storage and retrieval according to WOPI specifications. This intermediary approach ensures reliable compliance without adding complexity to the cloud-based application's architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Stability of the object's composition

If the backend server is coupled with the WOPI Client to ensure data synchronization, then data consistency is improved, but the flexibility and independence of the backend server deteriorates

Engineering Contradiction:
Improvedata consistencyVSAvoidserver independence
Core Design Contradiction:
Stability of the object's compositionVSAdaptability or versatility

Solution Approach 1:

The WOPI Host serves as an intermediary between the backend server and the WOPI Client. It maintains data consistency by synchronizing changes from the backend server to the WOPI Client while preserving the independence of the backend server. The WOPI Host handles the coupling mechanism, allowing the backend server to operate independently without direct connections to the WOPI Client, thus achieving both data consistency and server independence.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12072846B2Web application open platform interface (WOPI) server architecture and applications for distributed network computing environments
Publication Date: 2024.08.27 OPEN TEXT SA ULC
  • US12072846B2 patent drawing
  • US12072846B2 patent drawing
  • US12072846B2 patent drawing

AI summary

An interface server (e.g., Web Application Open Platform Interface (WOPI) server) is communicatively connected to an information management (IM) server and to an online application server which acts as a client of the interface server. When a user wishes to open, create, or edit a document in an online application hosted by the online application server, the interface server is called, instead of the IM server which manages the document at the backend of an enterprise computing network. The interface server is configured for obtaining a working copy of the document from the IM server and providing the working copy to the client. The client provides the working copy to the online application for display on the user device. When the work is done, the working copy is sync'd back through the interface server to the IM server as a new draft and deleted by the interface server.