Application Sharing Awareness API for Remote Control Attribution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional application sharing technologies fail to fully utilize remote control features due to applications being unaware of sharing status and user identity, leading to issues like incorrect authorship attribution and lack of customizable access controls.

Innovation Solution

An application programming interface (API) that allows applications to be aware of their sharing status and user control, enabling adjustments in behavior such as displaying user identity and applying access policies based on the controlling user.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If conventional application sharing is used, then remote control features can be provided, but applications cannot accurately attribute authorship or apply appropriate access controls

Engineering Contradiction:
Improveremote control featureVSAvoiduser identity information
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The patent introduces an application sharing awareness component as an intermediary layer between the application and the remote control feature. This component receives notifications about sharing status and controlling user identity from the application sharing tool, then communicates this information to the application through notifications. This mediator resolves the contradiction by enabling remote control while preserving and transmitting user identity information that the application would otherwise lose.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If applications are designed for single user use, then they work reliably in local environments, but they cannot adapt to collaborative sharing environments

Engineering Contradiction:
Improveapplication stabilityVSAvoidsharing environment adaptability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic adaptability by enabling applications to change their behavior based on their sharing status. The application receives notifications from the awareness component about whether it is being shared and who the controlling user is, then dynamically adjusts its operations accordingly. This allows the same application to maintain reliability in single-user mode while adapting to collaborative needs when shared, resolving the contradiction between stability and versatility.

Inventive Principle:
Principle #15Dynamics

3Device complexity

If applications operate without awareness of sharing status, then they maintain simple architecture, but they cannot provide accurate authorship attribution or customized access controls

Engineering Contradiction:
Improveapplication architectureVSAvoidauthorship attribution accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The patent segments the solution into distinct functional components: the application sharing tool that manages control, the application sharing awareness component that monitors status, and the application that executes operations. This segmentation allows the application to remain relatively simple while the awareness component handles the complexity of tracking sharing status and user identity. The segmented architecture enables precise authorship attribution without significantly complicating the core application logic.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS7568005B2Enhanced application behavior in the presence of application sharing
Publication Date: 2009.07.28 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7568005B2 patent drawing
  • US7568005B2 patent drawing
  • US7568005B2 patent drawing

AI summary

An approach for providing enhanced application behavior in the presence of application sharing is provided. An application program interface (“API”) allows an application being shared in a collaborative environment to be aware of its application sharing status. An application developer can incorporate the API into an application program. Then, when an instance of the application is executing, an application sharing host can use the API to notify the instance of the application whenever the instance of the application is being shared. In addition, the application sharing host can also use the API to provide the instance of the application being shared the identity of a user that is in control of the instance of the application being shared.