Application Distribution Server for Experimental Feature Testing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Mobile application developers lack an efficient method to experiment with new features on their applications without causing compatibility issues or negative user experiences, leading to potential negative reviews and support requests when new features are rolled out.
Innovation Solution
An application distribution server selects mobile devices capable of receiving updates and communicates experimental versions, collecting performance information such as battery consumption, and providing users with options to opt-out of future experiments, allowing developers to analyze data and improve application performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If developers roll out new features directly to all users, then productivity is improved, but reliability deteriorates due to compatibility issues and negative user experiences
Solution Approach 1:
The patent segments the user base into different groups (e.g., 10% of users) and distributes experimental versions to only those segments. This allows developers to test new features with a portion of users while maintaining stability for the rest, thus improving productivity without compromising overall reliability.
Solution Approach 2:
The patent implements partial action by rolling out experimental versions to only a subset of users rather than all users. This controlled partial deployment enables feature testing and performance monitoring without exposing the entire user base to potential compatibility issues.
2Measurement precision
If experimental versions are distributed to all users, then measurement precision is improved, but object-affected harmful factors increase due to device incompatibility
Solution Approach 1:
The patent applies local quality by selecting specific mobile devices with particular characteristics (e.g., operating system versions, hardware specifications) to receive experimental versions. This ensures that performance data is collected from relevant device profiles while avoiding devices that would cause compatibility problems.
Solution Approach 2:
The system performs preliminary actions by evaluating device compatibility before distributing experimental versions. The application distribution server assesses whether a device is suitable for receiving an experimental version, preventing compatibility issues before they occur.
3Ease of operation
If automatic updates are implemented, then ease of operation is improved, but loss of information increases when updates fail or cause issues
Solution Approach 1:
The patent implements feedback mechanisms where the system collects performance information from devices running experimental versions and uses this feedback to determine whether to continue or discontinue the experimental version deployment. This feedback loop prevents information loss by enabling data-driven update decisions.
Solution Approach 2:
The update deployment is made dynamic rather than static. The system can adjust update distribution based on collected performance data, allowing it to pause or resume updates as needed. This dynamic approach maintains ease of operation while preventing information loss through flexible update management.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
An application distribution server may be operable to select a plurality of data processing devices which are capable of receiving application updates. One or more experimental versions of an application may be communicated by the application distribution server to each of the selected plurality of data processing devices during an update process of the application. The application distribution server may cause collection of performance information associated with the one or more experimental versions. The application distribution server may then cause communication of the collected performance information to a developer of the application for analysis. When a particular experimental version is uninstalled from a particular data processing device or when feedback and/or rating information on the particular experimental version is communicated from the particular data processing device, the application distribution server may communicate, to the particular data processing device, a message indicating an experiment and options to opt-out of future experiments.