Adaptive Software Framework for Dynamic Device Capability Adaptation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software solutions for pervasive devices fail to adapt effectively to varying device capabilities, leading to suboptimal user experiences as they either limit features to the lowest common denominator or require expensive, multiple version development.

Innovation Solution

An adaptive software framework that interrogates client devices to determine their capabilities and configures application components accordingly, providing only those features that can be exploited by the device, thereby optimizing functionality across diverse devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If software is developed for the lowest common denominator device, then ease of manufacture and maintenance is improved, but device capabilities and user experience are worsened

Engineering Contradiction:
Improvesoftware development easeVSAvoiddevice capability utilization
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The software is segmented into multiple independent versions tailored to different device capability levels. Instead of creating a single generic version, the system divides the software into specialized variants that can be selectively deployed based on device characteristics, allowing each version to optimize for its target device type while maintaining a unified codebase structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The software deployment system dynamically selects and delivers appropriate software versions based on real-time device capability assessment. The system adapts its behavior by evaluating device specifications and automatically providing the most suitable software variant, transforming a static one-size-fits-all approach into a dynamic adaptive deployment mechanism.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If different versions of software are developed for different devices, then adaptability to device capabilities is improved, but manufacturing complexity and maintenance cost are worsened

Engineering Contradiction:
Improvedevice capability adaptationVSAvoidsoftware version management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

A single universal software platform is created that can function across multiple device types. The system incorporates multi-functionality by designing core components that can operate on various device capabilities, with optional feature sets that activate based on device support. This universal approach eliminates the need for completely separate codebases while still providing device-optimized functionality.

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

Solution Approach 2:

The software system changes its operational parameters and feature set based on detected device capabilities. Instead of maintaining separate binary codebases, the system modifies its behavior, enabled features, and configuration parameters dynamically according to the device's specifications, allowing one codebase to serve multiple device types with appropriate parameter adjustments.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If device capabilities are fully utilized, then user experience and functionality are improved, but compatibility across diverse devices is worsened

Engineering Contradiction:
Improveapplication functionalityVSAvoidcross-device compatibility
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

Different quality levels and feature sets are applied locally to match each device's capabilities. High-end devices receive enhanced functionality with advanced features, while basic devices receive a streamlined version with essential features only. This local quality differentiation allows each device to operate at its optimal capability level without compromising the overall system's compatibility across the device ecosystem.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS7937696B2Method, system and program product for adapting software applications for client devices
Publication Date: 2011.05.03 KING COM
  • US7937696B2 patent drawing
  • US7937696B2 patent drawing
  • US7937696B2 patent drawing

AI summary

Under the present invention, when a request is received from a client device for a particular software application, the client device will first be interrogated to determine the device platform. Thereafter, the client device will be probed (e.g., from a remote bundle repository) to determine to determine its capabilities. Then, certain components of the requested application can be identified and configured to best take advantage of the client device's capabilities.