Application Function Conversion to Service

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Developing applications for diverse device platforms is challenging due to differences in hardware, operating systems, and programming environments, leading to non-portable applications and the need for substantial rewriting of code to support various devices.

Innovation Solution

The technology extracts specific functions from an application, uploads them to a service provider environment, and replaces them with function access wrappers, allowing the functions to be executed remotely while maintaining the application's functionality across multiple platforms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If applications are developed for different operating systems and devices using various programming languages and techniques, then applications can support specific device functionalities, but applications become non-portable and require substantial rewriting for different platforms

Engineering Contradiction:
Improveplatform compatibilityVSAvoidcode rewriting effort
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts the business logic from the user interface layer and implements it as a separate service on the service provider network. This separation allows the UI to remain platform-specific while the core logic is reused across platforms, reducing code rewriting effort while maintaining platform compatibility.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a service access point as an intermediary between the user interface and the business logic service. This mediator handles platform-specific interactions and communicates with the platform-agnostic business logic service, enabling applications to adapt to different platforms without rewriting core logic.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If functions are executed locally on user devices, then processing is immediate and responsive, but application logic cannot be easily reused across different platforms and devices

Engineering Contradiction:
Improvelogic reusabilityVSAvoidprocessing speed
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent moves the business logic from the local device dimension to the network dimension by implementing it as a remote service. This dimensional shift enables logic reusability across platforms while maintaining processing speed through efficient network communication and service orchestration.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Adaptability or versatility

If applications are customized for specific hardware components and operating systems, then applications can leverage device-specific capabilities, but applications lose portability and require substantial modifications for different devices

Engineering Contradiction:
Improvedevice-specific functionalityVSAvoiddevelopment efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent segments the application into distinct layers: platform-specific user interface components and platform-agnostic business logic services. This segmentation allows developers to customize UIs for different devices while reusing the same core logic, improving development efficiency while maintaining device-specific functionality.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9934019B1Application function conversion to a service
Publication Date: 2018.04.03 AMAZON TECH INC
  • US9934019B1 patent drawing
  • US9934019B1 patent drawing
  • US9934019B1 patent drawing

AI summary

Technology for converting an application function to a service is provided. In one example, a method may include analyzing an application to identify a function of the application including logic. The method may further include extracting the function from the application. The function may be uploaded to a service provider environment to be implemented as an application service. A function access wrapper for the function may be retrieved from the service provider environment. The function access wrapper may be configured to call the application service in the service provider environment to execute the logic in the service provider environment and to receive a result of execution of the logic from the application service. The function access wrapper may be inserted into the application in the place of the function.