Client Application Mode Switching for Non-Backward Compatible Server Deployment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing client/server model requires backward compatibility for new server software versions, leading to high development and testing costs, especially when dealing with diverse client applications, and is impractical for 'rich client' systems with limited bandwidth and resources.
Innovation Solution
A method and system that manage the introduction of a new non-backward compatible server software version by distributing a client application that operates in both current and new modes, using a version server to automatically set modes based on client system queries, allowing flexible deployment and fallback strategies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If backward compatibility is maintained for new server versions, then all existing client versions can continue to operate, but development and testing costs increase significantly
Solution Approach 1:
The patent segments the client application into multiple operational modes (legacy mode and new mode) that can be independently activated. This segmentation allows the server to support multiple client versions without requiring the server itself to be backward compatible with all of them, thereby reducing development and testing costs while maintaining adaptability.
Solution Approach 2:
The patent implements preliminary action by pre-configuring the client application with multiple modes of operation before deployment. The client is prepared in advance to handle both legacy and new server protocols, allowing seamless transition when the server is upgraded without requiring server-side backward compatibility.
2Adaptability or versatility
If the server supports all existing client versions, then adaptability is improved, but device complexity increases
Solution Approach 1:
The patent inverts the traditional approach by making the client adaptable to multiple server modes rather than making the server compatible with multiple client versions. This inversion reduces server application complexity while maintaining the ability to support diverse client versions through client-side mode switching.
3Reliability
If exhaustive testing of all client/server combinations is performed, then reliability is improved, but testing resources and time become impossible to allocate
Solution Approach 1:
The patent extracts the compatibility assurance mechanism from the server side and relocates it to the client side. By embedding multiple operational modes within the client application, the system eliminates the need for exhaustive testing of all client/server combinations, as the client autonomously selects the appropriate mode based on server responses.
4Ease of manufacture
If a new non-backward compatible server version is deployed, then development cost is reduced, but existing clients cannot operate with the new server
Solution Approach 1:
The patent prepares the client application in advance with multiple operational modes embedded, enabling it to adapt to both legacy and new server versions. This preliminary configuration ensures operational continuity when the server is upgraded to a non-backward compatible version, as the client can switch to the appropriate mode without service interruption.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method and a system for managing the introduction of a new non-backward compatible version of an application server into a client/server networking environment are described. The method consists in first distributing to a client system to be served by the new non-backward compatible version of the application server a client application operable in a mode compatible with the current version of the application server and in a mode compatible with the new non-backward compatible version. Upon installation in the client system the client application is set into a downgraded mode compatible with the current version of the application server. While the current version of the application server is still in production, the client application is kept operated in the downgraded mode. Upon introduction of the new non-backward compatible version of the application server, the client application is set into a valid mode compatible with the new version of the application server. From that point on, the client application is operated in the valid mode. Setting of the modes is automatically triggered at each re-launch of the client system which queries a version server operating in the client/server networking environment. Query includes an identification of the client system and a client application version number in order to obtain from the queried version server a status value to operate the client system into a mode including the downgraded mode and the valid mode.