Mobile Service Application Segmentation for Resource Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Mobile application development is hindered by the monolithic thread and global execution context, leading to inefficiencies in development, resource management, and battery life due to excessive resource usage, as well as the need for separate code for different mobile operating systems.
Innovation Solution
Implementing a mobile device configuration that utilizes a dependency tree to manage startup and shutdown of service applications, allowing each service application to execute in a separate thread, with parent applications started and shut down in a defined order, enabling efficient resource management and independent updates without affecting the entire application.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a monolithic thread and global execution context are used for mobile applications, then the application structure is simple and easy to implement, but the development becomes increasingly difficult as the amount of code and complexity increases
Solution Approach 1:
The patent segments the monolithic mobile application into multiple independent service applications, each executing in its own thread and execution context. This segmentation allows the application to be divided into manageable, independently developable units while maintaining overall system functionality through defined inter-service communication protocols.
2Productivity
If mobile application binaries and updates are shipped as monolithic entities, then version management is straightforward, but inefficiencies are created in the development cycle and version management
Solution Approach 1:
The patent divides the monolithic application binary into separate service application binaries that can be independently updated. This allows selective updating of individual services without requiring full application reinstallation, improving development cycle efficiency while managing version complexity through modular dependency tracking.
Solution Approach 2:
The system dynamically determines which parent and child services need to be updated together based on the dependency tree. This dynamic approach allows flexible version management where only affected services are updated, rather than forcing updates of the entire application suite.
3Adaptability or versatility
If developers write separate code for different mobile operating systems, then platform-specific optimization is achieved, but additional development inefficiencies are created
Solution Approach 1:
The patent implements a universal service application architecture where services are designed to execute across multiple mobile operating systems through standardized interfaces and communication protocols. This universal design allows the same service code to run on different platforms, reducing the need for separate codebases while maintaining platform-specific optimization capabilities.
4Adaptability or versatility
If large mobile applications are executed, then comprehensive functionality is provided, but excessive amounts of mobile device resources are used, reducing battery life and computing performance
Solution Approach 1:
The patent segments the large monolithic application into smaller service applications that can be independently executed. This allows the system to run only the necessary services based on user needs, reducing overall resource consumption and battery usage while maintaining comprehensive functionality when required.
Solution Approach 2:
The system implements periodic startup and shutdown of service applications based on usage patterns and dependencies. Services are started only when needed and shut down when not in use, creating a periodic execution pattern that reduces continuous resource consumption while maintaining availability of comprehensive functionality when required.
Data Source
AI summary
Techniques for improved mobile application architectures and service communication protocols are discussed herein. Some embodiments may include a mobile device configured for providing a mobile application including multiple service applications. The service applications may execute asynchronously and in separate containers, providing service orientated architecture (SOA)-like services with respect to other portions of the mobile application, or even external applications. The separation of a monolithic mobile application into separate service applications provide advantages in terms of application performance, development, and maintenance. For example, a subset of all service applications may be started up, and executed on demand to improve device resource utilization efficiency.


