×

Method, system, apparatus and program product for distribution and instantiation of software upgrades

  • US 7,080,371 B1
  • Filed: 09/01/2000
  • Issued: 07/18/2006
  • Est. Priority Date: 03/03/1998
  • Status: Expired due to Term
First Claim
Patent Images

1. A method for a server computer to distribute and install software upgrades on client computers, comprising:

  • under control of the server computer,defining contents of software version upgrade kits of software installed on client computers, the software version upgrade kits each being self-contained and comprising files, actions, and an upgrade wizard to upgrade a software component from one version to another version;

    writing the contents of the software version upgrade kits to a database on the server computer as a table of contents, the table of contents showing for each of the upgrade kits the contents of that upgrade kit and any software components required for an upgrade using that upgrade kit; and

    for each of multiple client computers,comparing the table of contents of the software version upgrade kits to software installed on that client computer to determine one or more software version upgrade kits that will each effect an upgrade on that client computer from a version of a software component currently installed on that client computer to an updated software component version; and

    building copies of the determined software upgrade kits for that client computer from the table of contents; and

    for each of the multiple client computers,determining whether software components for a program that is currently running on that client computer are up-to-date; and

    when one or more software components of the program are not up-to-date,interrogating other installed software components on that client computer to determine the versions of those not-up-to-date software components that are installed on that client computer;

    notifying the server computer of the determined installed versions of the not-up-to-date software components on that client computer;

    downloading copies of software upgrade kits built on the server computer for that client computer to upgrade the not-up-to-date software components;

    for each of the downloaded software upgrade kits, invoking the upgrade wizard for that software upgrade kit on that client computer to upgrade one of the not-up-to-date software components on that client computer, the upgrade wizard performing the software component upgrade by performing the actions of the upgrade kit and using the files of the upgrade kit, the upgrade wizard keeping track of the upgrade'"'"'s progress and, if an error is detected during the upgrade, automatically rolling back the changes and restoring the client computer to a pre-upgrade state; and

    after the upgrading of the not-up-to-date software components, restarting execution of the program so as to use the upgraded software components.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×