Claims
- 1. A method of improving installation of software packages, comprising steps of
defining an object model representing a plurality of components of a software installation package and one or more topology objects, wherein each component comprises a plurality of objects and wherein each topology object identifies one or more selected ones of the components; populating the object model to describe a particular software installation package and one or more topologies for deployment of that particular software installation package; and defining one or more rules for execution by a rules engine, wherein each rule specifies one or more conditions and at least one action to be taken when the specified conditions are matched during the execution by the rules engine, and wherein the specified conditions pertain to a target run-time environment and the at least one action may be used to select from among the topologies.
- 2. The method according to claim 1, further comprising the step of instantiating a plurality of objects according to the defined object model, and wherein the populating step populates the instantiated objects.
- 3. The method according to claim 2, wherein the instantiated objects are JavaBeans.
- 4. The method according to claim 2, wherein the instantiating step instantiates an object for the particular software installation package and one or more component objects for each software component included in the particular software installation package.
- 5. The method according to claim 1, further comprising the steps of
dynamically discovering information pertaining to the target run-time environment; using the dynamically discovered information as input to the execution by the rules engine, wherein the execution results in matching a selected one of the rules; automatically selecting, based upon the at least one action in the matching rule, at least one of the topologies for deployment; and using the populated object model to install the particular software installation package using the selected topology.
- 6. The method according to claim 5, wherein the step of using the populated object model further comprises the steps of
identifying one or more target machines on which the particular software installation package is to be installed; downloading the particular software installation package to the identified target machines; and performing an installation at each of the identified target machines using the downloaded particular software installation package.
- 7. The method according to claim 6, further comprising the step of authenticating a server on which the downloading step operates prior to an operation of the step of performing the installation.
- 8. The method according to claim 5, wherein the step of using the dynamically discovered information as input to the execution by the rules engine also serves to configure one or more values needed by the selected topology.
- 9. A system for improving installation of software packages, comprising:
means for defining an object model representing a plurality of components of a software installation package and one or more topology objects, wherein each component comprises a plurality of objects and wherein each topology object identifies one or more selected ones of the components; means for populating the object model to describe a particular software installation package and one or more topologies for deployment of that particular software installation package; and means for defining one or more rules for execution by a rules engine, wherein each rule specifies one or more conditions and at least one action to be taken when the specified conditions are matched during the execution by the rules engine, and wherein the specified conditions pertain to a target run-time environment and the at least one action may be used to select from among the topologies.
- 10. The system according to claim 9, further comprising:
means for dynamically discovering information pertaining to the target run-time environment, means for using the dynamically discovered information as input to the execution by the rules engine, wherein the execution results in matching a selected one of the rules; means for automatically selecting, based upon the at least one action in the matching rule, at least one of the topologies for deployment; and means for using the populated object model to install the particular software installation package using the selected topology.
- 11. The system according to claim 10, wherein the means for using the populated object model further comprises:
means for identifying one or more target machines on which the particular software installation package is to be installed; means for downloading the particular software installation package to the identified target machines; and means for performing an installation at each of the identified target machines using the downloaded particular software installation package.
- 12. The system according to claim 10, wherein the means for using the dynamically discovered information as input to the execution by the rules engine also serves to configure one or more values needed by the selected topology.
- 13. A computer program product for improving installation of software packages, the computer program product embodied on one or more computer-readable media and comprising:
computer-readable program code means for defining an object model representing a plurality of components of a software installation package and one or more topology objects, wherein each component comprises a plurality of objects and wherein each topology object identifies one or more selected ones of the components; computer-readable program code means for populating the object model to describe a particular software installation package and one or more topologies for deployment of that particular software installation package; and computer-readable program code means for defining one or more rules for execution by a rules engine, wherein each rule specifies one or more conditions and at least one action to be taken when the specified conditions are matched during the execution by the rules engine, and wherein the specified conditions pertain to a target run-time environment and the at least one action may be used to select from among the topologies.
- 14. The computer program product according to claim 13, further comprising:
computer-readable program code means for dynamically discovering information pertaining to the target run-time environment; computer-readable program code means for using the dynamically discovered information as input to the execution by the rules engine, wherein the execution results in matching a selected one of the rules; computer-readable program code means for automatically selecting, based upon the at least one action in the matching rule, at least one of the topologies for deployment; and computer-readable program code means for using the populated object model to install the particular software installation package using the selected topology.
- 15. The computer program product according to claim 14, wherein the computer-readable program code means for using the populated object model further comprises:
computer-readable program code means for identifying one or more target machines on which the particular software installation package is to be installed; computer-readable program code means for downloading the particular software installation package to the identified target machines; and computer-readable program code means for performing an installation at each of the identified target machines using the downloaded particular software installation package.
- 16. The computer program product according to claim 14, wherein the computer-readable program code means for using the dynamically discovered information as input to the execution by the rules engine also serves to configure one or more values needed by the selected topology.
Related Inventions
[0001] The present invention is related to U.S. Pat. No. ______ (Ser. No. 09/669,227, filed Sep. 25, 2000), titled “Object Model and Framework for Installation of Software Packages Using JavaBeans™; U.S. Pat. No. ______ (Ser. No. 09/707,656, filed Nov. 7, 2000), titled “Object Model and Framework for Installation of Software Packages Using Object Descriptors”; U.S. Pat. No. ______ (Ser. No. 09/707,545, filed Nov. 7, 2000), titled “Object Model and Framework for Installation of Software Packages Using Object REXX”; U.S. Pat. No. ______ (Ser. No. 09/707,700, filed Nov. 7, 2000), titled “Object Model and Framework for Installation of Software Packages Using Structured Documents”; U.S. Pat. No. ______ (Ser. No. 09/879,694, filed Jun. 12, 2001), titled “Efficient Installation of Software Packages”; U.S. Pat. No. ______ (Ser. No. 09/______ , filed Jul. 19, 2001), titled “Object Model and Framework for Installation of Software Packages using a Distributed Directory”; and U.S. Pat. No. ______ (Ser. No. 09/______, filed concurrently herewith), titled “Extending Installation Suites to Include Topology of Suite's Run-Time Environment”. These inventions are commonly assigned to the International Business Machines Corporation (“IBM”) and are hereby incorporated herein by reference.