Mobile App Policy-Based Backend Routing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current mobile application development processes require multiple deployments and recompilations due to the need to interact with different backend servers throughout the software lifecycle, making it difficult to test and manage client-side issues without reinstalling or rebuilding the application.

Innovation Solution

Implementing a system that allows a single deployment of a mobile application with policy management to dynamically redirect it to various backend services based on application policies, such as time, location, or device ID, enabling access to different endpoint destinations during the development lifecycle without recompilation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple versions of the application are deployed through QA process, then different backend servers can be accessed throughout the software lifecycle, but the application code must be recompiled and redeployed frequently

Engineering Contradiction:
Improveability to access different backend serversVSAvoiddeployment efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent implements dynamic configuration where the mobile application can switch between different backend server endpoints without code changes. The application uses a configuration management system that allows administrators to dynamically update server endpoints, enabling the same application binary to adapt to different backend systems throughout the software lifecycle.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of server endpoint configuration without changing the application code. By using configurable parameters that can be modified at runtime or during deployment, the system enables access to different backend servers while maintaining the same application build, thus avoiding recompilation and redeployment.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If the application is redeployed to test client-side problems in production, then the issue can be addressed, but the process requires recompiling and redeploying the entire application

Engineering Contradiction:
Improveability to fix client-side problemsVSAvoidtime for recompilation and redeployment
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the configuration from the application code. By separating server endpoint configurations from the application binary, the system allows independent modification of configuration parameters without affecting the application code. This enables rapid switching between different backend endpoints for testing client-side issues without recompiling the application.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary configuration setup where different backend endpoints are pre-configured in the system. When a client-side problem needs to be tested, the appropriate pre-configured endpoint can be selected and activated immediately without requiring compilation or deployment of modified application code, thus reducing troubleshooting time.

Inventive Principle:
Principle #10Preliminary action

3Device complexity

If a single application code base is used throughout the software lifecycle, then development complexity is reduced, but the application cannot access different backend servers without recompilation

Engineering Contradiction:
Improveapplication development complexityVSAvoidbackend server accessibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent introduces an intermediary configuration management layer between the application code and the backend servers. This intermediary system maintains the separation of concerns by keeping the application code simple while providing configurable endpoints that can be dynamically selected. The configuration system acts as a mediator that translates different backend requirements into selectable parameters without requiring code changes.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Adaptability or versatility

If properties files are used to deploy a single code base, then deployment flexibility is achieved, but the team cannot manipulate properties files directly on the device after deployment

Engineering Contradiction:
Improvedeployment flexibilityVSAvoidconfiguration manipulation capability
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent replaces the traditional mechanical approach of manipulating properties files directly on devices with a remote configuration management system. Instead of requiring developers to access and edit local configuration files, the system provides remote interfaces and APIs that allow configuration changes to be applied remotely. This maintains deployment flexibility while eliminating the need for direct device access for configuration manipulation.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS11113047B2Systems and processes of accessing backend services with a mobile application
Publication Date: 2021.09.07 KONY INC
  • US11113047B2 patent drawing
  • US11113047B2 patent drawing
  • US11113047B2 patent drawing

AI summary

Systems and processes of accessing selected backend services throughout a software development lifecycle with a singly deployable mobile application is provided. The method includes deploying a mobile application a single time on a mobile device during a development lifecycle. The method further includes providing the singly deployed mobile application access to different service endpoint destinations during the development lifecycle based on one or more application policies associated with at least the mobile application.