Intelligent Front End for On-Demand Mobile App Compilation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The proliferation of mobile devices with diverse execution environments and peripherals makes it challenging to maintain application compatibility, leading to users opting for older script engine versions due to version dependencies.

Innovation Solution

A compiler with an intelligent front end that optimizes and customizes application programs based on specific mobile device platforms, considering script engine versions, memory, peripherals, and display characteristics, allowing for on-demand compilation and deployment of customized applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single application version is maintained for multiple mobile devices, then development and maintenance complexity is reduced, but application compatibility and optimal performance across diverse execution environments deteriorates

Engineering Contradiction:
Improveapplication maintenance complexityVSAvoidapplication compatibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent segments the application into multiple versions tailored for different execution environments. The intelligent front end analyzes device characteristics and selects or compiles the appropriate application version, dividing the monolithic application into environment-specific variants that optimize compatibility and performance for each device type.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes compilation parameters based on execution environment characteristics such as script engine version, memory size, display resolution, and peripheral availability. The intelligent front end modifies compiler directives and include files to generate application versions optimized for specific parameter sets, resolving the contradiction between maintaining a single codebase and achieving environment-specific optimization.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If application is optimized for specific script engine version, then execution performance is improved, but compatibility with devices using different script engine versions deteriorates

Engineering Contradiction:
Improveexecution performanceVSAvoidscript engine compatibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent creates a universal application package that contains multiple versions optimized for different script engine versions. The intelligent front end acts as a multi-functional selector that identifies the device's script engine version and delivers the appropriate application variant, enabling the system to maintain high performance for each engine version while achieving broad compatibility across versions.

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

3Adaptability or versatility

If pre-compiled versions are created for all possible device configurations, then application performance and compatibility are optimized, but storage requirements and compilation complexity increase

Engineering Contradiction:
Improvedevice configuration compatibilityVSAvoidstorage requirements
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent performs preliminary analysis of the device's execution environment characteristics through the intelligent front end before application deployment. This preliminary action identifies the specific script engine version, memory constraints, display resolution, and peripheral configuration, enabling selective compilation or version selection without requiring pre-compilation for all possible device configurations, thus reducing storage requirements while maintaining optimization.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP2411925B1Device dependent on-demand compiling and deployment of mobile applications
Publication Date: 2016.11.30 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP2411925B1 patent drawingFigure 1
  • EP2411925B1 patent drawingFigure 2
  • EP2411925B1 patent drawingFigure 3

AI summary

To accommodate different types and versions of execution environments on mobile devices, requests for applications from a programmable device, such as a smart phone or other mobile device include status data about the characteristics of the device. Information about the display, memory, storage, and/or script engine may be forwarded with a request. At a fulfillment server, the information is evaluated so that an appropriately versioned and configured application can be custom built, or selected from a pre-built inventory of applications. This allows a user to postpone an upgrade and still receive appropriate versions of executable, optimized to the particular mobile device.