|Publication number||USRE38762 E1|
|Application number||US 09/545,581|
|Publication date||Jul 19, 2005|
|Filing date||Apr 7, 2000|
|Priority date||Aug 14, 1995|
|Publication number||09545581, 545581, US RE38762 E1, US RE38762E1, US-E1-RE38762, USRE38762 E1, USRE38762E1|
|Inventors||Clint H. O'Connor|
|Original Assignee||Dell Usa L.P.|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (12), Non-Patent Citations (2), Referenced by (19), Classifications (17), Legal Events (4)|
|External Links: USPTO, USPTO Assignment, Espacenet|
This invention relates to the field of computer system manufacturing processes. More specifically, this invention relates to a process for configuring and restricting a computer system software to a specific computer hardware.
In the past, personal computer systems have generally been sold with no software, or only a limited amount of software, installed. Thus, a customer of the system had generally been required to install and configure the software of a system. Similarly, computer customers often were required to combine and configure the hardware in a computer system. However, computer systems are no longer sold as hardware boxes having software to be added by the customer or simply shipped with software, making software installation a responsibility of the user. More recently, computer systems have become available in a large number of configurations. Furthermore, it has become possible to custom-order a computer system having a particular hardware configuration. Also, computer manufacturers now provide turn-key computer systems that are immediately operable. However, a wide variety of software operating systems, drivers, application programs and the like are available so that a computer customer often must invest a substantial amount of time to configure the software in a computer system in a desired manner.
Computer manufacturers continually accelerate the rate of computer system production. While many more computer systems are built, expectations of customers are rising regarding the facility of immediately using a computer system without a time expenditure to configure the system in a desired manner. Computer manufacturers now offer hardware accessories and software in a combined system at the time of purchase.
An increasingly complex combination of internally-manufactured computer hardware and manufacturer-loaded software, which is furnished by external software venders, is creating substantial difficulty for computer manufacturers in the areas of customer support and warranty support. In particular, a common strategy of manufacturers is to preload hard disk drives of computer systems with common operating systems, for example DOS and Windows. In some cases, manufacturers incur the additional expense of shipping backup floppy disks for these operating systems, in combination with other software packages, to the customer. In other cases, manufacturers transfer to the customer the burden of writing from the hard drive to backup floppy disks. Customers find this task quite burdensome due to the very long time required to transfer backup copies to the floppy disks. If a customer fails to generate the backup floppy disks and the software on the hard drive is corrupted, a manufacturer must provide costly technical support services. Costs incurred in furnishing these services often cannot be recovered by the manufacturer. In addition, a customer who must rely on these technical services is commonly unable to use the computer for some amount of time so that anger and dissatisfaction of the customer result.
One method for preloading customer software is performed by extracting a hard drive from the computer assembly process, connecting the hard drive to a computer for the purpose of programming the drive, programming the drive, disconnecting the drive from the computer and returning the programmed hard drive to the computer assembly process for installation on a computer. This method is time consuming and, therefore, costly. Furthermore, disconnection and connection of the programmed hard drive often corrupts the software programmed onto the drive.
Another method for preloading customer software involves loading of the hard drive from a network after the computer hardware is assembled. This method results in high traffic on the network. In a large-volume manufacturing environment, this high traffic greatly reduces the throughput of the network. Furthermore, a network failure interrupts the entire manufacturing line.
What is needed is an improved process in which a manufacturer can tailor software to a particular customer's needs, in accordance with a customer order, load the tailored software onto a customer's hardware-specified system, and provide the customer with a capability to exactly restore the ordered software configuration without support from the manufacturer.
In accordance with the present invention, a process for manufacturing a computer system, including a selected hardware configuration and a selected software configuration, utilizes a CD-ROM writer connected to a manufacturing system network to select and write a custom software configuration to a CD-ROM. The CD-ROM is used to install the selected software configuration onto a custom hardware configuration and to subsequently serve as a permanent backup copy of the software configuration. The CD-ROM is written with an identifier of the specific computer hardware assembled in the manufacturing process and the identification written to the CD-ROM is checked when the software is loaded from the CD-ROM onto the computer so that the software is only accessible to the specified computer hardware.
In accordance with the present invention, a method of configuring software of a computer system includes the step of receiving a customer order for a computer system. The customer order includes a list of hardware configuration components and a list of software configuration components. The method further includes the steps of assembling hardware components designated by the list of hardware configuration components, recording software components designated by the list of software configuration components on a CD-ROM and loading software components from the CD-ROM onto the assembled hardware components.
In accordance with a first embodiment of the present invention, a method of configuring software of a computer system includes the steps of receiving a customer order for a computer system. The customer order includes a list of hardware configuration components and a list of software configuration components. The method further includes the steps of assembling hardware components designated by the list of hardware configuration components and recording software components designated by the list of software configuration components on a CD-ROM. Software components from the CD-ROM are loaded onto the assembled hardware components, thereby configuring the computer system.
In accordance with a second embodiment of the invention, a method of manufacturing a computer system includes the steps of placing an order for a computer system which designates selected hardware components and selected software components and generating a hardware list and a software list from the order. The hardware list is distributed to a hardware assembly line and the software list is distributed to a software assembly system. The method further includes the steps of assembling hardware components designated by the hardware list on the hardware assembly line and recording software components designated by the software list on a CD-ROM using the software assembly system. Software components from the CD-ROM are bootstrapped and loaded onto the assembled hardware components. The software-loaded and assembled hardware components are packaged with documentation and the CD-ROM and shipped to the customer.
In some embodiments, a method also includes the steps of assigning an identification number to the assembled hardware components and storing the identification number in the assembled hardware components. The identification number is also written to the CD-ROM. A CD-ROM bootstrap process is programmed to compare the identification number written to the CD-ROM with the identification number stored in the assembled hardware components and to complete the bootstrap operation only if the identification numbers match.
The disclosed process has several advantages over conventional computer system manufacturing processes. For example, the disclosed process allows a combination of software components to be tailored to a customer's requirements from a catalog of software utilities and applications which are known to be compatible with the computer system hardware requested by the customer. Furthermore, the software assembly sub-process is completely isolated from the hardware assembly sub-process so that the two sub-processes proceed in parallel, thereby reducing the time elapsed from customer order to customer shipping.
It is advantageous that the CD-ROM that is used to load software onto the assembled hardware components is also shipped to the customer. The customer thus receives a permanent backup copy of software that was originally loaded onto the system and appropriately licensed to the customer.
It is advantageous that usage of the CD-ROM discourages unauthorized copying of software which occurs in conventional systems when a customer orders software for a single computer hardware system and installs the software on multiple systems. In the disclosed manufacturing process, CD-ROMs are designated to be unique to a specific hardware system by writing an identification number of the hardware system to the CD-ROM. Some or all of the software files stored on the CD-ROM are encrypted so that the encrypted files can only be installed on the hardware system that the CD-ROM accompanies.
It is advantageous that the disclosed method reduces technical support and warranty costs of the manufacturer. The software configuration written to CD-ROM is a verified combination of software components that is known to be compatible with the assembled hardware components. If a problem arises in subsequent operation of the computer system, the original software configuration can be restored simply and efficiently from the CD-ROM.
The features of the invention believed to be novel are specifically set forth in the appended claims. However, the invention itself, both as to its structure and method of operation, may best be understood by referring to the following description and accompanying drawings.
The order-entry computer system 112 accesses the network 110 to transfer the customer order into the manufacturing system 100 in step 224. The order-entry computer system 112 distributes the hardware list to the hardware assembly line 114 and, separately, distributes the software list to the software assembly system 118 so that hardware assembly and software assembly take place in parallel. In some embodiments of the manufacturing system 100, the hardware list is communicated to the hardware assembly line 114 over the network 110, which is connected to the hardware assembly line computer system 116. In other embodiments, the hardware list is communicated in another manner, perhaps manually. Hardware assembly begins with step 216 in which hardware assembly is controlled as computer system hardware components specified by the hardware list are retrieved from stock and the order of component assembly is planned. In step 218, the computer hardware components are assembled on hardware assembly line 114. In step 220, the assembled computer system is tested for assembly errors and hardware problems can be efficiently discovered when operating software is not available. If hardware problems arise, step 220 includes a process of replacing malfunctioning components. Following hardware checkout and correction, the assembled computer system 126 is connected to the network 110 and logs information relating to the hardware build operation to the manufacturing archive 130 over the network 110.
Software assembly begins with step 222 in which software assembly is controlled by the recording computer system 120 as computer system software components specified by the software list are retrieved from stock and the order of component assembly is planned. Also in software build step 222, the recording computer system retrieves selected software files from software component storage 124 over the network 110. The CD-ROM is written to contain any combination of manufacturer-specified software routines including BIOS files, operating systems, drivers, utilities, application software and vendor software. In CD-ROM burn step 224, the recording computer system 120 writes the retrieved software files to a CD-ROM using the CD-ROM writer 122. In step 226, the programmed CD-ROM is physically stored for a short period while the hardware components are assembled. When assembled computer system hardware 126 is ready, in step 228, the programmed CD-ROM is retrieved. The manufacturing process can be timed so that the CD-ROM is written shortly before hardware assembly is complete so that the CD-ROM storage and retrieval steps 226 and 228, respectively, are eliminated.
In step 230, computer system hardware and software are integrated as the assembled computer system 126 is bootstrapped and loaded from the retrieved CD-ROM. Diagnostic tests and system checkout operations are performed on the integrated hardware and software of the assembled computer system 126. The assembled computer system 126 is connected to the network 110 and logs information relating to the hardware-software integration and diagnostic testing to the manufacturing archive 130 over the network 110. A report is generated from the information in the manufacturing archive 130 containing, for example, a designation of success or failure of the load process, log information, diagnostic test data and system configuration data. This report is communicated to the assembled computer system 126 over the network 110 and stored in computer system memory. In the event of a network failure, bootstrap process software requests loading of a floppy disk and, upon loading of the disk, writes selected information relating to bootstrap and loading conditions of the computer system 126 at the time of the failure. This information is used for later processing when the network 110 operation is restored, allowing manufacturing to proceed despite a network failure.
In step 232, the CD-ROM is ejected from the assembled computer system 126 and the computer system 126, along with the CD-ROM and documentation are packaged for shipping. The documentation includes information stored in the manufacturing archive 130. The packaged computer system 226, documentation and CD-ROM are shipped to the customer in step 234.
The manufacturing archive 130 maintains information regarding every computer system which is manufactured. Accordingly, the software configuration is readily restored if the original CD-ROM is lost or destroyed.
In a manufacturing system in which the identification number of the hardware system can be established in advance, hardware identification step 312 and software identification step 314, may proceed simultaneously, in parallel. In contrast, for a manufacturing system in which the identification number cannot be assigned in advance, CD-ROM production is delayed until the identification number of the hardware system is known. Computer systems that do not have a unique internal identifier cannot guarantee that an incorrect CD-ROM will not be loaded. However, the same principle may be employed in additional embodiments that associate a hardware identifier with more than a single computer system. For example, specific computer system models or computer systems produced by a particular manufacturer may be assigned a semi-unique hardware identifier so that a CD-ROM is associated with a group of computers.
The description of certain embodiments of this invention is intended to be illustrative and not limiting. Numerous other embodiments will be apparent to those skilled in the art, all of which are included within the broad scope of this invention.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US5113518 *||Jun 3, 1988||May 12, 1992||Durst Jr Robert T||Method and system for preventing unauthorized use of software|
|US5230052 *||Oct 1, 1990||Jul 20, 1993||International Business Machines Corp.||Apparatus and method for loading bios into a computer system from a remote storage location|
|US5247683 *||Jun 19, 1991||Sep 21, 1993||International Business Machines Corporation||System and method for installing software and updating configuration files|
|US5325532 *||Sep 25, 1992||Jun 28, 1994||Compaq Computer Corporation||Automatic development of operating system boot image|
|US5371792 *||Dec 21, 1993||Dec 6, 1994||Kabushkuki Kaisha Sega Enterprises||CD-ROM disk and security check method for the same|
|US5418918 *||Sep 10, 1993||May 23, 1995||Compaq Computer Corp.||Scanning initial CD-ROM sectors for a boot record and executing said boot record to load and execute floppy disk image corresponding to the existing floppy drive|
|US5423023 *||Jun 25, 1990||Jun 6, 1995||Prime Computer, Inc.||Method and apparatus for providing a user configurable system which integrates and manages a plurality of different task and software tools|
|US5459867 *||Sep 30, 1993||Oct 17, 1995||Iomega Corporation||Kernels, description tables, and device drivers|
|US5499357 *||Aug 19, 1994||Mar 12, 1996||Xerox Corporation||Process for configuration management|
|US5504904 *||Feb 23, 1994||Apr 2, 1996||International Business Machines Corporation||Personal computer having operating system definition file for configuring computer system|
|US5684974 *||Mar 13, 1995||Nov 4, 1997||Hitachi, Ltd.||Method and apparatus for controlling reconfiguration of storage-device memory areas|
|US5745669 *||Jun 21, 1996||Apr 28, 1998||Ast Research, Inc.||System and method for recovering PC configurations|
|1||*||Basnet et al., Experiences in Developing an Object Oriented Modeling Environment . . . , 1990, p. 477-481, IEEE.|
|2||*||Frenkel, Toward Automating the Software Development Cycle, 1985, p. 578-589, ACM.|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US7107443 *||Dec 30, 2003||Sep 12, 2006||International Business Machines Corporation||Method for customizing a computer system by using stored configuration parameters in a configurism mechanism|
|US7206929 *||Dec 30, 2003||Apr 17, 2007||Lenovo (Singapore) Pte. Ltd.||Method for customizing a computer system by using stored configuration parameters in a configurism mechanism|
|US7225325 *||Dec 30, 2003||May 29, 2007||International Business Machines Corporation||Customizing a computer system by using stored configuration parameters in a configuration mechanism|
|US7610583 *||Oct 27, 2009||Gateway, Inc.||Personalized software installation method for computer manufacturers|
|US7788639 *||Aug 31, 2010||International Business Machines Corporation||Method and system for autonomic self-learning in selecting resources for dynamic provisioning|
|US8707286||Dec 12, 2008||Apr 22, 2014||Sap Ag||Unique context-based code enhancement|
|US20030197727 *||Apr 23, 2002||Oct 23, 2003||Gateway, Inc.||Personalized software installation method for computer manufacturers|
|US20050071107 *||Sep 28, 2004||Mar 31, 2005||International Business Machines Corporation||Method and system for autonomic self-learning in selecting resources for dynamic provisioning|
|US20050081198 *||Sep 24, 2004||Apr 14, 2005||Sinkuo Cho||System and method for limiting software installation on different computers and associated computer-readable storage media|
|US20050144429 *||Dec 30, 2003||Jun 30, 2005||International Business Machines Corporation||System for customizing a computer system|
|US20050149607 *||Dec 30, 2003||Jul 7, 2005||International Business Machines Corporation||Method for customizing a computer system|
|US20050149714 *||Dec 30, 2003||Jul 7, 2005||International Business Machines Corporation||System for customizing a computer system|
|US20050149715 *||Dec 30, 2003||Jul 7, 2005||International Business Machines Corporation||Method for customizing a computer system|
|US20050160409 *||May 14, 2004||Jul 21, 2005||Veronika Schmid-Lutz||Systems and methods for providing software and a corresponding pricing model|
|US20060026583 *||Feb 18, 2005||Feb 2, 2006||Juergen Remmel||Systems and methods for providing complex software|
|US20060026586 *||Feb 18, 2005||Feb 2, 2006||Juergen Remmel||Systems and methods for enabling functions in a computerized system|
|US20060167988 *||Dec 14, 2005||Jul 27, 2006||David Barck||Method and sytem for developing technical configurations|
|US20080071840 *||Sep 14, 2006||Mar 20, 2008||Viswanath Srikanth||Introducing Multi-Level Nested Kits Into Existing E-Commerce Systems|
|US20100153915 *||Dec 12, 2008||Jun 17, 2010||Sap Ag||Unique context-based code enhancement|
|U.S. Classification||713/2, 717/174|
|International Classification||G06F21/00, G06Q10/00, G06F9/445, G06F1/00|
|Cooperative Classification||G06F2211/1097, G06F21/00, G06F8/63, G06F8/61, G06Q10/087, G06F8/64|
|European Classification||G06F8/61, G06F8/63, G06F8/64, G06Q10/087, G06F21/00|
|Jan 24, 2006||CC||Certificate of correction|
|Oct 13, 2006||FPAY||Fee payment|
Year of fee payment: 8
|Oct 13, 2010||FPAY||Fee payment|
Year of fee payment: 12
|Jan 2, 2014||AS||Assignment|
Free format text: PATENT SECURITY AGREEMENT (TERM LOAN);ASSIGNORS:DELL INC.;APPASSURE SOFTWARE, INC.;ASAP SOFTWARE EXPRESS, INC.;AND OTHERS;REEL/FRAME:031899/0261
Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH
Effective date: 20131029
Owner name: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FI
Free format text: PATENT SECURITY AGREEMENT (NOTES);ASSIGNORS:APPASSURE SOFTWARE, INC.;ASAP SOFTWARE EXPRESS, INC.;BOOMI, INC.;AND OTHERS;REEL/FRAME:031897/0348
Effective date: 20131029
Effective date: 20131029
Owner name: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT, TE
Free format text: PATENT SECURITY AGREEMENT (ABL);ASSIGNORS:DELL INC.;APPASSURE SOFTWARE, INC.;ASAP SOFTWARE EXPRESS,INC.;AND OTHERS;REEL/FRAME:031898/0001