Remote Application Switching via UI Substitution Element

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Users of client computing devices often have difficulty switching from locally executing applications to corresponding remote applications, as they may not be aware of the existence of remote alternatives or prefer not to switch, leading to challenges in centralized management and version control.

Innovation Solution

A system and method that detect the launch of a local application and render an interactive element in the user interface, allowing users to seamlessly substitute the local application with a corresponding remote application by interacting with the element, which is configured to launch the remote application on a server infrastructure and terminate the local one.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If users launch applications locally on client devices, then application execution is immediate and accessible, but centralized management and version control become difficult

Engineering Contradiction:
Improveapplication accessibilityVSAvoidcentralized management
Core Design Contradiction:
Ease of operationVSExtent of automation

Solution Approach 1:

The patent introduces a remote application delivery service as an intermediary between local client devices and remote application servers. This service detects when users launch local applications and automatically substitutes them with remote versions, enabling centralized management while maintaining local accessibility. The intermediary layer resolves the contradiction by mediating between the desire for immediate local access and the need for centralized control.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements self-service functionality where the remote application delivery service automatically detects local application launches and substitutes them with remote versions without requiring user intervention. The system monitors application execution, identifies opportunities for remote substitution, and performs the switching action autonomously, thereby achieving centralized management while preserving ease of operation for users.

Inventive Principle:
Principle #25Self-service

2Extent of automation

If users are provided with remote application options, then centralized management is improved, but users may not be aware of or prefer not to switch from local applications

Engineering Contradiction:
Improvecentralized managementVSAvoiduser awareness and switching
Core Design Contradiction:
Extent of automationVSEase of operation

Solution Approach 1:

The patent applies preliminary action by having the remote application delivery service proactively detect and prepare remote application substitutions before users make decisions. When a user launches a local application, the system immediately identifies the corresponding remote version and renders a substitution element, presenting the option in advance. This eliminates the need for users to actively search for or manually switch applications, as the system prepares and presents the switching opportunity automatically.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms by rendering visual elements (such as buttons or icons) within the local application interface that provide immediate feedback to users about the availability of remote versions. When users interact with these elements, the system responds by initiating the substitution process. This feedback loop ensures users are aware of remote options without disrupting their workflow, balancing centralized management goals with user convenience.

Inventive Principle:
Principle #23Feedback

3Extent of automation

If the system automatically substitutes local applications with remote ones, then centralized management is enhanced, but application switching complexity increases

Engineering Contradiction:
Improveautomatic substitutionVSAvoidapplication switching mechanism
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The patent segments the application switching functionality into distinct modular components: a detection module that identifies local application launches, a substitution module that retrieves remote versions, and a rendering module that presents substitution elements to users. This segmentation allows each component to perform its specific function independently, reducing overall system complexity while enabling automatic substitution. The modular architecture makes the complex switching mechanism more manageable and maintainable.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system merges the application launch detection, remote version retrieval, and user interface rendering functions into a unified remote application delivery service. By combining these functions into a single integrated service, the patent reduces the complexity that would otherwise arise from coordinating multiple separate systems. The merged service handles the entire substitution process through a coordinated sequence of operations, simplifying the overall architecture while maintaining automatic substitution capability.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS20230195507A1Local to remote application switching
Publication Date: 2023.06.22 CITRIX SYSTEMS INC
  • US20230195507A1 patent drawing
  • US20230195507A1 patent drawing
  • US20230195507A1 patent drawing

AI summary

A system and method for switching from a locally executing application to a remotely executing application. A method includes: detecting a launch of an application on a computing device, the application being executable locally on the computing device; rendering an element in a user interface presented within a display of the computing device, the element configured to substitute the application with a corresponding application that executes on a remote computing device; and in response to input received on the element, launching the corresponding application on the remote computing device and terminating execution of the application on the computing device.