Enterprise Software Update Version Switching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Deploying enterprise software updates to client devices, especially wireless devices like POS systems, is challenging due to bandwidth constraints and the risk of critical errors, which can render devices inoperable and require time-consuming rollbacks.
Innovation Solution
Implementing a system where multiple versions of an application share a common group identifier, allowing seamless switching between versions and preserving shared data, enabling instant rollback to a previous version in case of errors without losing data or consuming excessive bandwidth.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If multiple applications are deployed concurrently to all client devices, then deployment speed is improved, but network bandwidth consumption increases excessively
Solution Approach 1:
The patent segments the deployment process by dividing client devices into multiple groups and deploying applications to each group sequentially rather than concurrently. This segmentation allows deployment to proceed at high speed across the entire fleet while limiting bandwidth consumption to only the portion of devices being updated at any given moment.
Solution Approach 2:
The patent implements periodic action by deploying applications in scheduled batches to different device groups over time. Each deployment wave targets a specific segment of devices, creating a rhythmic pattern of updates that maintains high overall deployment speed while controlling instantaneous bandwidth usage within available network capacity.
2Productivity
If a faulty update is deployed, then the newer version should be executed, but device inoperability occurs requiring rollback
Solution Approach 1:
The patent applies preliminary action by maintaining the previous working version of the application installed and ready on each device before deploying the new version. This ensures that if the new version proves faulty, the system can immediately revert to the known-good previous version without requiring device replacement or complex recovery procedures, thus preserving device operability.
Solution Approach 2:
The patent implements beforehand cushioning by creating a safety buffer through version retention. The previous application version serves as a cushion against the risks of new version deployment, allowing the system to absorb potential failures and maintain continuous operation. This cushioning mechanism protects device productivity while enabling reliable updates.
3Reliability
If rolling back to a previous version is performed, then device operability is restored, but data loss occurs
Solution Approach 1:
The patent merges the data storage functionality across multiple application versions by implementing a shared data repository that persists independently of which application version is currently executing. This merging ensures that when rolling back from a newer version to a previous version, the underlying data remains intact and accessible, preventing data loss while restoring device operability.
Solution Approach 2:
The patent applies universality by designing a common data layer that serves all application versions. This multi-functional data storage system allows any version of the application to access and preserve the same data set, making the data independent of version-specific implementations. Consequently, version rollback restores functionality without sacrificing information.
4Reliability
If rolling back is performed after concurrent deployment to dozens of devices, then errors are corrected, but network bandwidth is excessively consumed
Solution Approach 1:
The patent segments the rollback process by targeting only the specific device groups that received the faulty update, rather than initiating system-wide rollbacks. This segmented approach corrects errors in affected devices while leaving other devices operating normally, thereby restoring reliability where needed without consuming excessive network bandwidth across the entire device fleet.
Solution Approach 2:
The patent applies local quality by implementing selective rollback at the device or group level based on error detection. Instead of uniform rollback across all devices, the system identifies and rolls back only those local instances where the new version proved faulty. This localized error correction maintains reliability for affected devices while minimizing unnecessary network traffic from devices that are operating correctly.
Data Source
AI summary
Systems and methods for deploying enterprise software updates are provided. At a server storing applications and a record of client devices is provided. Each application includes a corresponding group identifier indicating a group associated with an application and a corresponding version identifier indicating a version of the application. The record includes the deployment identifier for each application in the plurality of applications installed on each device. A first application having a first group identifier and a first version identifier, and a second application having the first group identifier and a second version identifier is installed in each respective device. An update for the first application is received at the server, which includes modifying the version identifier of the first application. The update for the first application is communicated to each device. For each respective device, a modification of the deployment identifier indicates which application is executable on the respective device.


