Patent ID: 9400645
Filing Date: 2016-07-26
CPC Classification: G06F,H04L

Claim Text:
1. A processor-implemented application updating method, comprising: obtaining an indication to check whether to generate an updated version of an application; determining a module dependency graph for a current version of the application; identifying code identifiers associated with dependent modules in the module dependency graph, for the current version of the application; querying a code database to obtain all available version numbers for the dependent modules in the module dependency graph, using the code identifiers; selecting recent versions of all dependent modules in the module dependency graph for an updated version of the application, the selection generating an initial set of dependent modules for the application; obtaining specification attributes for the recent versions of the dependent modules in the initial set, from the code database; verifying the dependent modules in the initial set are compatible with the updated version of the application, using the specification attributes of the dependent modules; when it is determined that a specific dependent module in the initial set is not compatible, a modified set of dependent modules; performing the verification and the selection iteratively for each of the dependent modules in the initial set until the dependent modules are compatible with the updated version of the application, wherein the iterative verification and selection leads to updating the modified set; associating the modified set of dependent modules to the updated version of the application, the updated version being stored in the code database; and compiling the updated version of the application using the modified set of dependent modules, the compiling of the updated version causing transfer of a user from the current version of the application to the updated version of the application and dynamically establishing access for the user to the updated version, wherein the transfer of the user is performed in real-time while the user is utilizing the application, wherein dynamically establishing access includes loading a state associated with the user for the current version of the application prior to the transfer, into the updated version of the application.