Per-User Application Rendering for Shared Data Interaction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional application sharing systems restrict non-controlling users from viewing other parts of the shared application, limiting collaboration in multi-user environments, as they can only passively watch the shared view without interacting with other parts of the data.

Innovation Solution

An enhanced application sharing component allows users to render and view additional parts of the shared data independently, using per-user renderings and bitmaps to overlay requested views seamlessly, enabling users to interact with different portions of the shared data without taking control.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If traditional application sharing is used where one user controls the shared screen, then the controlling user can interact with the application, but non-controlling users cannot view other parts of the application data

Engineering Contradiction:
ImproveAbility to view different parts of shared applicationVSAvoidSystem architecture for per-user rendering
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent segments the shared application rendering into per-user portions, where each user receives and views a separate rendering of the application data. This allows different users to simultaneously view different parts of the application without interfering with each other, resolving the contradiction between ease of operation and system complexity by dividing the monolithic shared view into manageable user-specific segments.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements local quality by allowing each user to have customized viewing parameters (such as different scroll positions, zoom levels, or visible portions of the application) while maintaining a single shared application instance. This enables non-controlling users to access different parts of the application data according to their specific needs without affecting the overall system architecture.

Inventive Principle:
Principle #3Local quality

2Loss of information

If non-controlling users take control to view other parts of the document, then they can see different content, but all other users are relegated to passively watching

Engineering Contradiction:
ImproveAccess to different portions of shared dataVSAvoidCollaborative efficiency
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-rendering application data for multiple users simultaneously, so that when users need to view different parts of the application, the content is already prepared and available for immediate display. This eliminates the need for users to take control to access different content, maintaining collaborative efficiency while preventing information loss.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by creating separate renderings of the application data for each user. Instead of requiring control transfer, the system generates user-specific copies of the application view that can be customized and displayed independently, allowing all users to simultaneously access different portions of the shared data without interrupting collaborative productivity.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If a single shared view is transmitted to all users, then network bandwidth is optimized, but users cannot view personalized portions of the data

Engineering Contradiction:
ImprovePer-user customized viewsVSAvoidNetwork bandwidth consumption
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent applies partial action by transmitting only the necessary portions of application data to each user based on their specific viewing needs. Instead of sending complete application data to all users or a single shared view, the system renders and transmits only the relevant portions for each user, achieving personalized views while optimizing network bandwidth consumption.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent implements parameter changes by dynamically adjusting rendering parameters (such as visible area, resolution, or content scope) for each user based on their individual requirements. This allows the system to provide adaptable per-user customized views while minimizing the amount of data transmitted over the network, balancing versatility with energy efficiency.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7991916B2Per-user application rendering in the presence of application sharing
Publication Date: 2011.08.02 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7991916B2 patent drawing
  • US7991916B2 patent drawing
  • US7991916B2 patent drawing

AI summary

Architecture that allows users in an application sharing environment to separately view portions of data that are not part of the current shared view. An enhanced application sharing component is provided that facilitates rendering the application data multiple times for a correspondingly similar number of simultaneous users, and sending the additional renderings to the other users for interaction. Each user client includes an application sharing viewer that composites the per-user renderings onto the base shared image of the user client to create a per-user view of the shared document. The enhanced sharing component renders the portion of the data that is requested by the remote user as a bitmap and passes the bitmap along with coordinate information to the client rendering program presentation with the shared data view. The coordinate information indicates where on the shared screen of the remote client the bitmap is overlayed to produce a seamless experience.