Client-Side Preview Generation for Collaboration Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Collaboration systems like Confluence and Sharepoint do not efficiently generate previews for digital content items linked in pages, leading to suboptimal user experience and increased server load, as they rely on server-side preview generation which may not always be available or efficient.

Innovation Solution

Implementing user device-based preview generation applications that process digital content items to create previews, reducing server load by shifting preview generation from server-side to client-side, utilizing a bridge between client and preview generation applications to determine and execute preview generation based on available applications on the user device.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If server-side preview generation is used, then centralized control and consistency are maintained, but server load increases and preview availability decreases

Engineering Contradiction:
Improvepreview availabilityVSAvoidserver load
Core Design Contradiction:
ReliabilityVSPower

Solution Approach 1:

The system enables user devices to autonomously generate previews of digital content items using locally installed applications. The collaboration system server only coordinates the preview generation process by identifying content items and requesting previews from user devices, rather than performing the actual generation itself. This self-service approach reduces server load while improving preview availability.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The preview generation function is segmented from the collaboration system server and distributed to multiple user devices. Each user device with appropriate applications can independently generate previews for specific content types, dividing the centralized server workload into distributed client-side operations.

Inventive Principle:
Principle #1Segmentation

2Productivity

If user device-based preview generation is implemented, then server load is reduced and preview availability improves, but system complexity increases

Engineering Contradiction:
Improvepreview generation efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

A bridge component is introduced as an intermediary between the collaboration system client application and preview generation applications on user devices. This bridge manages communication, coordinates preview generation requests, and handles the complexity of interacting with multiple different applications, thereby containing system complexity in a dedicated intermediary layer rather than spreading it throughout the entire system.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The bridge component serves multiple functions: it acts as a communication interface between the client application and various preview generation applications, manages different content types, coordinates preview generation requests, and handles response aggregation. This multi-functional intermediary simplifies the overall system architecture by consolidating complexity in a single versatile component.

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

Data Source

PatentUS11983231B2Systems and methods for generating digital content item previews
Publication Date: 2024.05.14 ATLASSIAN US INC
  • US11983231B2 patent drawing
  • US11983231B2 patent drawing
  • US11983231B2 patent drawing

AI summary

Described herein is a computer implemented method comprising: receiving, at a collaboration system, a page view request from a user device, the page review request being in respect of a page; identifying a content item link in the page for which a preview should be generated; generating a preview generation request for the user device to generate a preview in respect of the identified content item by a preview generation application installed on the user device; receiving, by the collaboration system, the preview generated by the preview generation application installed on the user device; and storing, by the collaboration system, the preview.