Context-Aware Application State Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems lack efficient mechanisms to manage and adapt application configurations across different contexts, leading to inconsistencies and performance issues when applications interact or operate in varying environments.

Innovation Solution

A context-aware system that utilizes a context engine and unified data store to manage and store application configurations, allowing executables to adapt their execution environments based on context information, including operating system settings, interactions with other applications, and network services.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If application configurations are managed manually across different contexts, then configuration consistency can be maintained, but system complexity and operational overhead increase significantly

Engineering Contradiction:
Improveconfiguration consistencyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system automatically detects application context changes and manages configuration updates without manual intervention. The framework monitors context information, identifies affected configurations, and applies changes automatically, allowing the system to serve itself rather than requiring manual configuration management.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The framework implements a feedback mechanism where context changes are detected and fed back into the configuration management system. This triggers automatic configuration updates based on the detected context, creating a closed-loop system that maintains consistency without manual oversight.

Inventive Principle:
Principle #23Feedback

2Adaptability or versatility

If application states are stored and retrieved using policies, then configuration adaptability improves, but processing time and performance overhead increase

Engineering Contradiction:
Improveconfiguration adaptabilityVSAvoidprocessing time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

Configuration policies are pre-defined and cached before runtime. When context changes occur, the system retrieves pre-prepared configurations rather than generating them dynamically, reducing processing time while maintaining adaptability to different contexts.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates copies of configuration states associated with different contexts. Instead of modifying the original configuration dynamically, the framework uses copied configuration snapshots that can be quickly retrieved and applied, reducing processing overhead while maintaining full adaptability.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If applications operate in virtualized environments with multiple states, then system versatility improves, but configuration management difficulty increases

Engineering Contradiction:
Improvesystem versatilityVSAvoidconfiguration management ease
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The configuration management system is segmented into separate components: context detection module, policy evaluation module, and configuration application module. This segmentation allows each component to handle specific aspects of configuration management independently, making the overall system easier to operate and maintain while supporting multiple virtualized states.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The framework introduces an intermediary configuration management layer between the virtualized application states and the actual configuration files. This intermediary layer abstracts the complexity of managing multiple states, providing a simplified interface for configuration management while enabling full versatility in virtualized environments.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP2321720B1State separation for application changes
Publication Date: 2019.06.26 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP2321720B1 patent drawingFigure 1
  • EP2321720B1 patent drawingFigure 2

AI summary

Application states may be stored and retrieved using policies that define various contexts in which the application is used. The application states may define configurations or uses of the application, including connections to and interactions with other applications. Applications that are virtualized may have state that is defined within a usage context and multiple states or configurations may be stored and recalled based on the usage context. Policies may define the context and what parameters are to be saved, and may be applied when applications are operated in a virtualized manner.