Patent ID: 8407690
Filing Date: 2013-03-26
Classification: G06F

Abstract:
1. A network whereby client computers automatically communicate with a server computer or computers such that the client computers automatically perform actions to install, update, deactivate or uninstall software bundles at specific times without any human interaction based on a model created, maintained and modified by a system administrator, wherein intelligent client software works to reach or maintain a state of software bundles specified by the model, comprising: means for maintaining the model state at a specified interval by checking and verifying the presence and integrity of every single file and folder specified in the said model; means of detecting model changes on the server by periodically contacting the said server whereby said intelligent client software automatically updates the said model state to the said model state specified by said server; means of downloading of all data files from said servers whereby the interruptions in data transfers are handled transparently by the said client software such that the said client software will resume data transfer when the network integrity is restored; means of downloading and interpreting data files from the said server computers consisting of the user manifest describing the software bundles applicable to the said client, the fileset container describing the contents of the said software bundles and the actual files that form the said software bundle; means of activating files in the said software bundle such that the said software bundle is downloaded; means of detecting different types of files such as installers such that execution of said files is performed by the said client software if endorsed by the said model; means of detecting changes in said user manifest after said model changes are committed whereby said client computer software calculates differences of said user manifest compared to said model state of software bundles maintained by said client computer software wherein a said software bundle added difference creates a said download and a said activation wherein a said software bundle remove difference creates a said deletion of the software bundle wherein a said software bundle modified difference creates an updated time schedule for download action, deactivation action or deletion action whereby client computer software distributes processing power from said server computer whereby said server computer is only responsible for replying to download software requests; means of detecting changes in fileset containers after detection of said model changes whereby said client computer calculates differences in said fileset containers whereby said client computer software creates said download, said activation or said deletion actions to perform based on said differences in said fileset container wherein said download and said activation actions are performed when said difference reveals a new file difference and wherein a said delete action is performed when said difference reveals a deleted file difference from said fileset container wherein a modification action is performed when said difference reveals a change difference whereby client computer software performs said processing power distribution; means of reporting all said actions of downloading, activating, deactivating, deleting or updating said software bundle to said server whereby a system administrator creates a status report revealing the success of said state of software bundle action; and means of remotely monitoring the progress of said state of said client software by said system administrator.