Server-Generated Mobile App Testing via Intermediary

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems face challenges in efficiently testing server-generated mobile applications on diverse mobile devices due to compatibility issues with varying operating systems and hardware, as well as security concerns in accessing enterprise computer systems.

Innovation Solution

A declarative browser-based client application development tool, such as Oracle's Mobile Cloud Service, facilitates rapid mobile application composition using pre-defined templates, enabling communication between mobile devices and enterprise systems through a cloud-based interface that translates protocols to a standardized REST architecture, ensuring secure access and seamless integration with backend services.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional testing methods are used on diverse mobile devices, then compatibility testing coverage is improved, but testing time and resource consumption increase significantly

Engineering Contradiction:
Improvecompatibility testing coverageVSAvoidtesting time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent introduces a server as an intermediary between the mobile application and diverse mobile devices. The server generates multiple versions of the application tailored to different device types, operating systems, and screen resolutions. This intermediary approach allows comprehensive compatibility testing across multiple devices without requiring physical access to each device, thereby reducing testing time while maintaining broad compatibility coverage.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system creates virtual copies or simulated representations of different mobile devices and their environments on the server. Instead of physically testing on numerous actual devices, the server generates application versions that replicate the behavior and characteristics of various device types. This copying mechanism enables efficient compatibility verification across diverse platforms without the time-consuming process of manual testing on each physical device.

Inventive Principle:
Principle #26Copying

2Adaptability or versatility

If direct access to enterprise computer systems is enabled on mobile devices, then system integration capability is improved, but security risks increase

Engineering Contradiction:
Improvesystem integration capabilityVSAvoidsecurity risks
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The server acts as a secure intermediary between mobile devices and enterprise computer systems. Rather than allowing direct access from mobile devices to enterprise systems (which would create security vulnerabilities), the server receives requests from mobile devices, processes them through standardized protocols, and communicates with enterprise systems on behalf of the mobile application. This intermediary layer maintains system integration capability while filtering and securing all communications.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The server implements a universal interface that supports multiple communication protocols and enterprise system types through a standardized REST architecture. This multi-functional approach allows the system to integrate with various enterprise computer systems without requiring direct, device-specific access pathways. The standardized interface reduces security risks by eliminating the need for multiple direct access points while maintaining broad integration capability.

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

3Adaptability or versatility

If custom application development is performed for each mobile device type, then device compatibility is improved, but development complexity increases

Engineering Contradiction:
Improvedevice compatibilityVSAvoiddevelopment complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Instead of manually developing custom applications for each device type, the system uses the server to automatically generate copies or variants of the application tailored to specific device characteristics. The server replicates the core application functionality and adapts it to different device types, operating systems, and screen resolutions through automated processes. This eliminates the need for developers to create separate custom applications for each device, significantly reducing development complexity while maintaining broad device compatibility.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent implements a universal application development approach where a single base application is created and then automatically adapted to multiple device types. The server provides multi-functional capabilities to generate, configure, and deploy application versions for various mobile devices from a single source. This universal approach reduces development complexity by eliminating the need for separate development processes for each device type while ensuring broad compatibility across the mobile device ecosystem.

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

Data Source

PatentUS10841385B2Efficient means to test server generated applications on mobile device
Publication Date: 2020.11.17 ORACLE INT CORP
  • US10841385B2 patent drawing
  • US10841385B2 patent drawing
  • US10841385B2 patent drawing

AI summary

Systems and methods are provided to test changes for a mobile app built by web-based tooling directly on a physical mobile device. A first application can be loaded on a mobile device. The first application can receive metadata of a second application. The first application can execute the second application using the metadata. Access to local resources can be intercepted and redirected to the server for processing. Additionally, changes made to the second application using the web-based tooling can be pushed to the first application using a persistent channel allowing the changes to be immediately tested.