US20020059242A1 - Method and system for automated distribution of software - Google Patents

Method and system for automated distribution of software Download PDF

Info

Publication number
US20020059242A1
US20020059242A1 US09/303,167 US30316799A US2002059242A1 US 20020059242 A1 US20020059242 A1 US 20020059242A1 US 30316799 A US30316799 A US 30316799A US 2002059242 A1 US2002059242 A1 US 2002059242A1
Authority
US
United States
Prior art keywords
software
remote server
available software
user
loaded
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US09/303,167
Other versions
US6421671B1 (en
Inventor
Joe Mark Bryan
David Alan Butts
Roger W. Wong
William Paul Hyden
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dell Products LP
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Assigned to DELL USA, LP, A TEXAS LIMITED PARTNERSHIP reassignment DELL USA, LP, A TEXAS LIMITED PARTNERSHIP ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BRYAN, JOE MARK, BUTTS, DAVID ALAN, HYDEN, WILLIAM PAUL, WONG, ROGER W.
Application filed by Individual filed Critical Individual
Priority to US09/303,167 priority Critical patent/US6421671B1/en
Publication of US20020059242A1 publication Critical patent/US20020059242A1/en
Assigned to DELL PRODUCTS L.P. reassignment DELL PRODUCTS L.P. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: DELL USA, L.P.
Publication of US6421671B1 publication Critical patent/US6421671B1/en
Application granted granted Critical
Assigned to BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT reassignment BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT PATENT SECURITY AGREEMENT (NOTES) Assignors: APPASSURE SOFTWARE, INC., ASAP SOFTWARE EXPRESS, INC., BOOMI, INC., COMPELLENT TECHNOLOGIES, INC., CREDANT TECHNOLOGIES, INC., DELL INC., DELL MARKETING L.P., DELL PRODUCTS L.P., DELL SOFTWARE INC., DELL USA L.P., FORCE10 NETWORKS, INC., GALE TECHNOLOGIES, INC., PEROT SYSTEMS CORPORATION, SECUREWORKS, INC., WYSE TECHNOLOGY L.L.C.
Assigned to BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT reassignment BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT PATENT SECURITY AGREEMENT (ABL) Assignors: APPASSURE SOFTWARE, INC., ASAP SOFTWARE EXPRESS, INC., BOOMI, INC., COMPELLENT TECHNOLOGIES, INC., CREDANT TECHNOLOGIES, INC., DELL INC., DELL MARKETING L.P., DELL PRODUCTS L.P., DELL SOFTWARE INC., DELL USA L.P., FORCE10 NETWORKS, INC., GALE TECHNOLOGIES, INC., PEROT SYSTEMS CORPORATION, SECUREWORKS, INC., WYSE TECHNOLOGY L.L.C.
Assigned to BANK OF AMERICA, N.A., AS COLLATERAL AGENT reassignment BANK OF AMERICA, N.A., AS COLLATERAL AGENT PATENT SECURITY AGREEMENT (TERM LOAN) Assignors: APPASSURE SOFTWARE, INC., ASAP SOFTWARE EXPRESS, INC., BOOMI, INC., COMPELLENT TECHNOLOGIES, INC., CREDANT TECHNOLOGIES, INC., DELL INC., DELL MARKETING L.P., DELL PRODUCTS L.P., DELL SOFTWARE INC., DELL USA L.P., FORCE10 NETWORKS, INC., GALE TECHNOLOGIES, INC., PEROT SYSTEMS CORPORATION, SECUREWORKS, INC., WYSE TECHNOLOGY L.L.C.
Assigned to PEROT SYSTEMS CORPORATION, DELL MARKETING L.P., DELL INC., SECUREWORKS, INC., COMPELLANT TECHNOLOGIES, INC., APPASSURE SOFTWARE, INC., FORCE10 NETWORKS, INC., ASAP SOFTWARE EXPRESS, INC., DELL PRODUCTS L.P., CREDANT TECHNOLOGIES, INC., DELL SOFTWARE INC., WYSE TECHNOLOGY L.L.C., DELL USA L.P. reassignment PEROT SYSTEMS CORPORATION RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Assigned to PEROT SYSTEMS CORPORATION, FORCE10 NETWORKS, INC., CREDANT TECHNOLOGIES, INC., DELL MARKETING L.P., DELL PRODUCTS L.P., WYSE TECHNOLOGY L.L.C., ASAP SOFTWARE EXPRESS, INC., APPASSURE SOFTWARE, INC., DELL INC., SECUREWORKS, INC., DELL SOFTWARE INC., DELL USA L.P., COMPELLENT TECHNOLOGIES, INC. reassignment PEROT SYSTEMS CORPORATION RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Assigned to PEROT SYSTEMS CORPORATION, DELL MARKETING L.P., DELL PRODUCTS L.P., DELL SOFTWARE INC., WYSE TECHNOLOGY L.L.C., SECUREWORKS, INC., COMPELLENT TECHNOLOGIES, INC., CREDANT TECHNOLOGIES, INC., ASAP SOFTWARE EXPRESS, INC., APPASSURE SOFTWARE, INC., FORCE10 NETWORKS, INC., DELL USA L.P., DELL INC. reassignment PEROT SYSTEMS CORPORATION RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Assigned to THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT reassignment THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT SECURITY AGREEMENT Assignors: ASAP SOFTWARE EXPRESS, INC., AVENTAIL LLC, CREDANT TECHNOLOGIES, INC., DELL INTERNATIONAL L.L.C., DELL MARKETING L.P., DELL PRODUCTS L.P., DELL SOFTWARE INC., DELL SYSTEMS CORPORATION, DELL USA L.P., EMC CORPORATION, EMC IP Holding Company LLC, FORCE10 NETWORKS, INC., MAGINATICS LLC, MOZY, INC., SCALEIO LLC, SPANNING CLOUD APPS LLC, WYSE TECHNOLOGY L.L.C.
Assigned to CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT reassignment CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT SECURITY AGREEMENT Assignors: ASAP SOFTWARE EXPRESS, INC., AVENTAIL LLC, CREDANT TECHNOLOGIES, INC., DELL INTERNATIONAL L.L.C., DELL MARKETING L.P., DELL PRODUCTS L.P., DELL SOFTWARE INC., DELL SYSTEMS CORPORATION, DELL USA L.P., EMC CORPORATION, EMC IP Holding Company LLC, FORCE10 NETWORKS, INC., MAGINATICS LLC, MOZY, INC., SCALEIO LLC, SPANNING CLOUD APPS LLC, WYSE TECHNOLOGY L.L.C.
Assigned to THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A. reassignment THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A. SECURITY AGREEMENT Assignors: CREDANT TECHNOLOGIES, INC., DELL INTERNATIONAL L.L.C., DELL MARKETING L.P., DELL PRODUCTS L.P., DELL USA L.P., EMC CORPORATION, EMC IP Holding Company LLC, FORCE10 NETWORKS, INC., WYSE TECHNOLOGY L.L.C.
Anticipated expiration legal-status Critical
Assigned to THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A. reassignment THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A. SECURITY AGREEMENT Assignors: CREDANT TECHNOLOGIES INC., DELL INTERNATIONAL L.L.C., DELL MARKETING L.P., DELL PRODUCTS L.P., DELL USA L.P., EMC CORPORATION, EMC IP Holding Company LLC, FORCE10 NETWORKS, INC., WYSE TECHNOLOGY L.L.C.
Assigned to DELL SYSTEMS CORPORATION, EMC IP Holding Company LLC, MOZY, INC., WYSE TECHNOLOGY L.L.C., SCALEIO LLC, AVENTAIL LLC, DELL USA L.P., MAGINATICS LLC, EMC CORPORATION, CREDANT TECHNOLOGIES, INC., DELL PRODUCTS L.P., ASAP SOFTWARE EXPRESS, INC., DELL INTERNATIONAL, L.L.C., DELL SOFTWARE INC., FORCE10 NETWORKS, INC., DELL MARKETING L.P. reassignment DELL SYSTEMS CORPORATION RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Assigned to SCALEIO LLC, DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.), EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC), DELL PRODUCTS L.P., EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.), DELL USA L.P., DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.), DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.), DELL INTERNATIONAL L.L.C. reassignment SCALEIO LLC RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Assignors: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Assigned to DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.), DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.), DELL INTERNATIONAL L.L.C., DELL PRODUCTS L.P., SCALEIO LLC, EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC), EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.), DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.), DELL USA L.P. reassignment DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.) RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Assignors: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

Definitions

  • a build-to-order process allows a customer to choose the configuration of a purchased system.
  • the configuration dictated by the customer can include various software options.
  • the software options include, for example, operating systems, device drivers and application programs, in many different languages.
  • the customer orders a computer built to his specifications that includes particular software.
  • a customer's order is transmitted to the factory floor, where the computer system is assembled.
  • the software is then loaded upon the computer system and the computer system is shipped to the customer.
  • the factory floor may include a file server, for example, that is used to load the particular software configuration upon the computer system ordered by the customer.
  • a validation department and/or a pilot department may need to test the software before it is made available for installation onto a customer system.
  • Each of these departments may include a separate file server used to maintain the different software packages.
  • An automated process can facilitate the movement of such files.
  • DELL COMPUTER CORPORATION uses an automated system called the AFPFan.
  • the AFPFan receives a request to copy, or “promote,” software to a remote server or multiple remote servers.
  • the AFPFan then copies the software to a local cache and distributes the software to the remote server(s).
  • the AFPFan can multi-thread the write process to expedite the promotion of the software.
  • Another conventional system involves a batch process that connects a network drive to the target servers.
  • the batch process checks to ensure older files will not copy over newer files.
  • DELL COMPUTER CORPORATION instituted such a process.
  • This system reduces many of the problems of manual tracking.
  • this batch process requires a user to check the results of the batch process manually. This in turn lengthens the amount of time required to promote the software. Additionally, the time lag between the request for promotion and the checking of the result of the batch process can allow crossing or conflicting requests. That is, two users may unknowingly make conflicting promotion requests.
  • a computer implemented method comprises maintaining a database of configuration information.
  • the configuration information includes version information of loaded software stored on a remote server.
  • the configuration information further includes version information of available software that is operable to be loaded upon the remote server.
  • a request is received from a user to load the available software onto the remote server.
  • the version information of the available software is compared with the version information of the loaded software.
  • the available software is copied to the remote server.
  • a system for automated distribution of software comprises a database of configuration information maintained on a computer readable medium.
  • the configuration information includes version information of loaded software stored on a remote server.
  • the configuration information further includes version information of available software that is operable to be loaded upon the remote server.
  • a request page is operable to receive a request from a user to load the available software onto the remote server.
  • a pre-processor interfaces to the database and the request page, the pre-processor operable to compare the version information of the available software with the version information of the loaded software.
  • the pre-processor is further operable to allow the user to terminate or continue if the available software will corrupt the loaded software.
  • a distribution engine interfaces with the pre processor and is operable to copy the available software onto the remote server.
  • FIG. 1 is a flow diagram of one embodiment of a method for automated distribution of software according to the present invention.
  • FIG. 2 is a block diagram of one embodiment of a system for automated distribution of software according to the present invention.
  • FIG. 1 is a flow diagram of one embodiment of a method for automated distribution of software according to the present invention.
  • the method begins at step 10 .
  • a database of configuration information is maintained.
  • the configuration information includes version information of loaded software stored on a remote server.
  • the version information could comprise a particular version of a software package.
  • the remote server can be, for example, a file server located on a factory floor.
  • the configuration information further includes version information of software that is available to the remote server and operable to be loaded upon the remote server (“available software”).
  • a user request page is maintained.
  • the user request page can comprise a Hyper Text Mark-up Language (“HTML”) document available over a network to a user using a web browser.
  • HTTP Hyper Text Mark-up Language
  • a user request is received. The request is a request to move the available software onto the remote server.
  • step 18 the database that is maintained by step 12 is accessed.
  • the version information of the available software is compared with the version information of the loaded software.
  • step 20 it is determined if there is a collision. For example, a collision could result if the available software that the user requested to be copied onto the remote server will replace or otherwise corrupt the loaded software. Alternatively, the present invention contemplates that various other collision conditions could be defined by a user. If there is no collision, the method proceeds to step 24 where the software is copied to the remote server.
  • step 22 the user is given the option of either terminating the distribution of the software or continuing distribution of the software despite the collision.
  • the user decides whether or not to terminate the distribution. If the user decides to terminate, the method proceeds to step 34 . If the user decides to continue, the method proceeds to step 28 .
  • a remote user is given the option to terminate the distribution process despite the order to continue by the requesting user.
  • Such a step may be useful in a factory context. For example, a user may request that software be copied to the remote server on the factory floor despite the discovery of a collision by steps 18 and 20 . However, the user that decided to ignore the collision may not have access to all the information necessary to make such a decision.
  • a remote user on the factory floor can determine if the software should in fact be copied to that remote server. If the remote user decides at step 30 to terminate, the method continues to step 34 . If the remote user decides at step 30 to continue, the method proceeds to step 24 .
  • step 24 the software is copied to the remote server.
  • the database is updated. For example, the version information of the software recently loaded upon the remote server can be entered into the database.
  • a log is updated of user request. Such a log can comprise electronic signatures of the users making requests and/or decisions in the current method. The method ends at step 36 .
  • FIG. 2 is a block diagram of one embodiment of a system, indicated generally at 40, for automated distribution of software according to the present invention.
  • System 40 comprises a request page 48 .
  • the request page can be an HTML document accessible by a user over a network using a web browser.
  • System 40 further includes database 44 .
  • Database 44 is maintained on computer readable medium and includes version information of loaded software stored on a remote server.
  • Database 44 further includes version information of available software operable to be loaded upon a remote server.
  • a pre-processor 54 interfaces with database 44 and request page 48 .
  • a distribution engine 58 interfaces with pre-processor 54 .
  • the embodiment of FIG. 2 includes multiple distribution engines 58 .
  • Distribution engine 58 includes cache 60 which interfaces with a software source 72 .
  • Remote servers 64 interface with cache 60 .
  • request page 48 can receive a request from a user to load available software onto remote server 64 .
  • remote server 64 may be a file server located on a factory floor, and the user may be requesting a certain software package to be promoted to the factory file server.
  • Pre-processor 54 interfaces with request page 48 and receives the request.
  • Pre-processor 54 then interfaces with database 44 and compares the version information of the software loaded upon remote server 64 with the version information of the available software which the user has requested to be loaded upon remote server 64 .
  • pre-processor 54 comprises an SQL stored procedure integrated with database 44 .
  • Pre-processor 54 receives the request from request page 48 and searches database 54 to determine if copying the available software to remote server 64 will create a collision with the software stored on remote server 64 . For example, a collision would occur if the available software would overwrite or otherwise corrupt the loaded software on remote server 64 .
  • pre-processor 54 determines that there will be a collision between the available software and the loaded software, pre-processor 54 halts the operation to give the user the opportunity to terminate the file distribution or to continue a file distribution.
  • Distribution engine 58 determines software source 72 where the available software currently resides. Distribution engine 58 loads available software into cache 60 , creates a connection to remote server 64 , and loads the available software from cache 60 to remote server 64 .
  • distribution engines 58 may simultaneously distribute the available software from cache 60 to multiple remote servers 64 .
  • distribution engine 58 can multi-thread write to five remote servers 64 .
  • the present invention can support multiple distribution engines 58 .

Abstract

A method and system for automated distribution of software are provided. The method comprises maintaining a database of configuration information. The configuration information includes version information of loaded software stored on a remote server. The configuration information further includes version information of available software operable to be loaded upon the remote server. A request is received from a user to load the available software on the remote server. The version information of the available software is compared with the version information of the loaded software. The available software is copied to the remote server.

Description

    BACKGROUND OF THE INVENTION
  • A build-to-order process allows a customer to choose the configuration of a purchased system. With respect to a computer system, the configuration dictated by the customer can include various software options. The software options include, for example, operating systems, device drivers and application programs, in many different languages. In such a process, the customer orders a computer built to his specifications that includes particular software. A customer's order is transmitted to the factory floor, where the computer system is assembled. The software is then loaded upon the computer system and the computer system is shipped to the customer. [0001]
  • In order to give customers a wide variety of possible configurations, it is necessary to maintain a large number of software packages. These packages must be accessible from the factory floor. The factory floor may include a file server, for example, that is used to load the particular software configuration upon the computer system ordered by the customer. [0002]
  • In addition to maintaining the software for installation on the factory floor, there are many other needs within a company for the software. For example, a validation department and/or a pilot department may need to test the software before it is made available for installation onto a customer system. Each of these departments may include a separate file server used to maintain the different software packages. [0003]
  • Therefore, a company instituting such a build process copies the particular files that make up a software package to various servers throughout the company for use by various persons. [0004]
  • An automated process can facilitate the movement of such files. For example, DELL COMPUTER CORPORATION uses an automated system called the AFPFan. The AFPFan receives a request to copy, or “promote,” software to a remote server or multiple remote servers. The AFPFan then copies the software to a local cache and distributes the software to the remote server(s). The AFPFan can multi-thread the write process to expedite the promotion of the software. [0005]
  • With the use of automated processes, however, there has arisen a problem of configuration management. As different persons request the software (development, validation, factory, etc.), it is possible that these requests will copy older versions of the software over newer versions of the software. This, in turn, can lead to further problems. For example, if a worker on the factory floor requests and copies an obsolete device driver onto a newer device driver, then it is possible an incorrectly configured system would be shipped. [0006]
  • Conventional attempts to resolve such a situation are problematic. One conventional system includes manually tracking the software, versions, and each server the software is loaded upon. Such a solution is unworkable as the number of software packages grows. Additionally, as more than one user may have access to the various software, maintaining a single list becomes problematic. [0007]
  • Another conventional system involves a batch process that connects a network drive to the target servers. The batch process checks to ensure older files will not copy over newer files. For example, DELL COMPUTER CORPORATION instituted such a process. This system reduces many of the problems of manual tracking. However, this batch process requires a user to check the results of the batch process manually. This in turn lengthens the amount of time required to promote the software. Additionally, the time lag between the request for promotion and the checking of the result of the batch process can allow crossing or conflicting requests. That is, two users may unknowingly make conflicting promotion requests. [0008]
  • SUMMARY OF THE INVENTION
  • In accordance with the present invention, a method and system for automated distribution of software are disclosed that provide significant advantages over prior developed software distribution systems. [0009]
  • In one aspect of the present invention, a computer implemented method comprises maintaining a database of configuration information. The configuration information includes version information of loaded software stored on a remote server. The configuration information further includes version information of available software that is operable to be loaded upon the remote server. A request is received from a user to load the available software onto the remote server. The version information of the available software is compared with the version information of the loaded software. The available software is copied to the remote server. [0010]
  • In another aspect of the present invention, a system for automated distribution of software comprises a database of configuration information maintained on a computer readable medium. The configuration information includes version information of loaded software stored on a remote server. The configuration information further includes version information of available software that is operable to be loaded upon the remote server. A request page is operable to receive a request from a user to load the available software onto the remote server. A pre-processor interfaces to the database and the request page, the pre-processor operable to compare the version information of the available software with the version information of the loaded software. The pre-processor is further operable to allow the user to terminate or continue if the available software will corrupt the loaded software. A distribution engine interfaces with the pre processor and is operable to copy the available software onto the remote server. [0011]
  • It is a technical advantage of the present invention that it can prevent the inadvertent replacement of current software with obsolete software. This in turn allows for a more productive factory by reducing the time and costs associated with remedying an inadvertent replacement of current software. [0012]
  • It is another technical advantage of the present invention that it can maintain user logs of electronic signatures. In the event a problem occurs, it thus becomes easier to diagnose and correct. [0013]
  • It is a further technical advantage of the present invention that it can provide immediate feedback to a user if a request will corrupt software currently loaded upon the remote server. This can reduce or eliminate the problems of conflicting requests. [0014]
  • Other technical advantages should be apparent to one of ordinary skill in the art in view of the specification, claims, and drawings. [0015]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • A more complete understanding of the present invention and advantages thereof may be acquired by referring to the following description taken in conjunction with the accompanying drawings, in which like reference numbers indicate like features, and wherein: [0016]
  • FIG. 1 is a flow diagram of one embodiment of a method for automated distribution of software according to the present invention; and [0017]
  • FIG. 2 is a block diagram of one embodiment of a system for automated distribution of software according to the present invention. [0018]
  • DETAILED DESCRIPTION OF THE INVENTION
  • FIG. 1 is a flow diagram of one embodiment of a method for automated distribution of software according to the present invention. The method begins at [0019] step 10. At step 12, a database of configuration information is maintained. The configuration information includes version information of loaded software stored on a remote server. For example, the version information could comprise a particular version of a software package. The remote server can be, for example, a file server located on a factory floor. The configuration information further includes version information of software that is available to the remote server and operable to be loaded upon the remote server (“available software”).
  • At [0020] step 14, a user request page is maintained. For example, the user request page can comprise a Hyper Text Mark-up Language (“HTML”) document available over a network to a user using a web browser. At step 16, a user request is received. The request is a request to move the available software onto the remote server.
  • At [0021] step 18, the database that is maintained by step 12 is accessed. The version information of the available software is compared with the version information of the loaded software. At step 20, it is determined if there is a collision. For example, a collision could result if the available software that the user requested to be copied onto the remote server will replace or otherwise corrupt the loaded software. Alternatively, the present invention contemplates that various other collision conditions could be defined by a user. If there is no collision, the method proceeds to step 24 where the software is copied to the remote server.
  • If there is a collision at [0022] step 20, the method moves to step 22 where the user is given the option of either terminating the distribution of the software or continuing distribution of the software despite the collision. At step 26, the user decides whether or not to terminate the distribution. If the user decides to terminate, the method proceeds to step 34. If the user decides to continue, the method proceeds to step 28.
  • At [0023] step 28, a remote user is given the option to terminate the distribution process despite the order to continue by the requesting user. Such a step may be useful in a factory context. For example, a user may request that software be copied to the remote server on the factory floor despite the discovery of a collision by steps 18 and 20. However, the user that decided to ignore the collision may not have access to all the information necessary to make such a decision. At step 28, a remote user on the factory floor can determine if the software should in fact be copied to that remote server. If the remote user decides at step 30 to terminate, the method continues to step 34. If the remote user decides at step 30 to continue, the method proceeds to step 24.
  • In [0024] step 24, the software is copied to the remote server. At step 32, the database is updated. For example, the version information of the software recently loaded upon the remote server can be entered into the database. At step 34, a log is updated of user request. Such a log can comprise electronic signatures of the users making requests and/or decisions in the current method. The method ends at step 36.
  • FIG. 2 is a block diagram of one embodiment of a system, indicated generally at 40, for automated distribution of software according to the present invention. System [0025] 40 comprises a request page 48. For example, the request page can be an HTML document accessible by a user over a network using a web browser. System 40 further includes database 44. Database 44 is maintained on computer readable medium and includes version information of loaded software stored on a remote server. Database 44 further includes version information of available software operable to be loaded upon a remote server. A pre-processor 54 interfaces with database 44 and request page 48. A distribution engine 58 interfaces with pre-processor 54. The embodiment of FIG. 2 includes multiple distribution engines 58. Distribution engine 58 includes cache 60 which interfaces with a software source 72. Remote servers 64 interface with cache 60.
  • In operation, [0026] request page 48 can receive a request from a user to load available software onto remote server 64. For example, remote server 64 may be a file server located on a factory floor, and the user may be requesting a certain software package to be promoted to the factory file server. Pre-processor 54 interfaces with request page 48 and receives the request. Pre-processor 54 then interfaces with database 44 and compares the version information of the software loaded upon remote server 64 with the version information of the available software which the user has requested to be loaded upon remote server 64. In one embodiment, pre-processor 54 comprises an SQL stored procedure integrated with database 44. Pre-processor 54 receives the request from request page 48 and searches database 54 to determine if copying the available software to remote server 64 will create a collision with the software stored on remote server 64. For example, a collision would occur if the available software would overwrite or otherwise corrupt the loaded software on remote server 64.
  • If the [0027] pre-processor 54 determines that there will be a collision between the available software and the loaded software, pre-processor 54 halts the operation to give the user the opportunity to terminate the file distribution or to continue a file distribution.
  • If the user determines to continue, or if there is no collision, [0028] distribution engine 58 then continues the process. Distribution engine 58 can comprise, for example, executable code running on a network server, file server, or other computing platform. Distribution engine 58 determines software source 72 where the available software currently resides. Distribution engine 58 loads available software into cache 60, creates a connection to remote server 64, and loads the available software from cache 60 to remote server 64.
  • Further shown in the embodiment of FIG. 2, [0029] distribution engines 58 may simultaneously distribute the available software from cache 60 to multiple remote servers 64. For example, distribution engine 58 can multi-thread write to five remote servers 64. Furthermore, as seen by FIG. 2, the present invention can support multiple distribution engines 58.
  • Although the present invention has been described in detail, it should be understood that various changes, substitutions and alterations can be made thereto without departing from the spirit and scope of the invention as defined by the appended claims. [0030]

Claims (19)

What is claimed is:
1. A computer implemented method for automated distribution of software, the method comprising:
maintaining a database of configuration information, the configuration information including version information of loaded software stored on a remote server, the configuration information further including version information of available software operable to be loaded upon the remote server;
receiving a request from a user to load the available software on the remote server;
comparing the version information of the available software with the version information of the loaded software; and
copying the available software onto the remote server.
2. The method of claim 1, further comprising, after the comparing step, allowing the user to terminate the method if the available software will corrupt the loaded software.
3. The method of claim 1, further comprising, after the comparing step, allowing the user to continue the method if the available software will corrupt the loaded software.
4. The method of claim 3, further comprising, before the copying step, requiring a remote user to accept the available software on the remote server.
5. The method of claim 1, further comprising maintaining a request page, the request page accessible by a user, and wherein the receiving step comprises receiving the user request on the request page.
6. The method claim 3, wherein the request page is accessible by a web browser.
7. The method of claim 1, further comprising updating the database after the copying step.
8. The method of claim 1, wherein the copying step comprises:
determining a source of the available software;
copying the available software from the source to a local cache;
establishing a connection to the remote server; and
copying the available software from the cache to the remote server.
9. The method of claim 1, further comprising maintaining a log of the users making requests.
10. A computer implemented method for automated distribution of software, the method comprising:
maintaining a database of configuration information, the configuration information including version information of loaded software stored on a remote server, the configuration information further including version information of available software operable to be loaded upon the remote server;
receiving a request from user to load the available software onto the remote server;
comparing the version information of the available software with the version information of the loaded software;
allowing the user to terminate or continue if the available software will corrupt the loaded software; and
copying the available software onto the remote server.
11. The method of claim 10, further comprising, before the copying step, requiring a remote user to accept the available software on the remote server.
12. The method of claim 10, further comprising maintaining a request page, the request page accessible by a user, and wherein the receiving step comprises receiving the user request on the request page.
13. The method of claim 12, wherein the request page is accessible by a web browser.
14. The method of claim 10, further comprising updating the database after the copying step.
15. The method of claim 10, wherein the copying step comprises:
determining a source of the available software;
copying the available software from the source to a local cache;
establishing a connection to the remote server; and
copying the available software from the cache to the remote server.
16. The method of claim 10, further comprising maintaining a log of users making requests.
17. A system for automated distribution of software, the method comprising:
a database of configuration information maintained on a computer readable medium, the configuration information including version information of loaded software stored on a remote server, the configuration information further including version information of available software operable to be loaded upon the remote server;
a request page for receiving a request from a user to load the available software onto the remote server;
a pre-process interfacing with the database and the request page, the pre-processor operable to compare the version information of the available software with the version information of the loaded software and allow the user to terminate or continue the method if the available software will corrupt the loaded software; and
a distribution engine interfaced with the pre-processor for copying the available software onto the remote server.
18. The system of claim 17, wherein the pre-processor comprises a stored SQL procedure.
19. The system of claim 17, wherein the request page is accessible by a web browser.
US09/303,167 1999-04-30 1999-04-30 Method and system for automated distribution of software Expired - Lifetime US6421671B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09/303,167 US6421671B1 (en) 1999-04-30 1999-04-30 Method and system for automated distribution of software

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/303,167 US6421671B1 (en) 1999-04-30 1999-04-30 Method and system for automated distribution of software

Publications (2)

Publication Number Publication Date
US20020059242A1 true US20020059242A1 (en) 2002-05-16
US6421671B1 US6421671B1 (en) 2002-07-16

Family

ID=23170814

Family Applications (1)

Application Number Title Priority Date Filing Date
US09/303,167 Expired - Lifetime US6421671B1 (en) 1999-04-30 1999-04-30 Method and system for automated distribution of software

Country Status (1)

Country Link
US (1) US6421671B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020194314A1 (en) * 2001-05-17 2002-12-19 Alexander Kouznetsov Application generator
US20070226251A1 (en) * 2006-03-24 2007-09-27 Rocket Software, Inc. Method of augmenting and controlling utility program execution for a relational database management system
CN109033436A (en) * 2018-08-14 2018-12-18 武汉达梦数据库有限公司 A kind of multiple version JDBC driving coexistence methods of same database and system

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7117239B1 (en) 2000-07-28 2006-10-03 Axeda Corporation Reporting the state of an apparatus to a remote computer
US6681324B1 (en) * 2000-09-07 2004-01-20 Cisco Technology, Inc. Application appliance enabling operating system and applications to run from a CDROM by determining local configuration and license status
US8108543B2 (en) 2000-09-22 2012-01-31 Axeda Corporation Retrieving data from a server
US7185014B1 (en) 2000-09-22 2007-02-27 Axeda Corporation Retrieving data from a server
US7254601B2 (en) 2001-12-20 2007-08-07 Questra Corporation Method and apparatus for managing intelligent assets in a distributed environment
US20030192041A1 (en) * 2002-04-03 2003-10-09 Mentze Duane E. software distribution system and method
US7178149B2 (en) 2002-04-17 2007-02-13 Axeda Corporation XML scripting of soap commands
US20040162857A1 (en) * 2003-02-14 2004-08-19 Butts David A. System for managing and dynamically recreating factory environments
US7966418B2 (en) 2003-02-21 2011-06-21 Axeda Corporation Establishing a virtual tunnel between two computer programs
US20050125524A1 (en) * 2003-12-08 2005-06-09 Chandrasekhar Babu K. Cache system in factory server for software dissemination
US8028084B2 (en) * 2004-01-20 2011-09-27 Aspect Software, Inc. IP ACD using buffer server
US20050160420A1 (en) * 2004-01-20 2005-07-21 Kruta Andrew W. Method and apparatus for distribution and installation of computer programs across an enterprise
US20050172284A1 (en) * 2004-01-30 2005-08-04 Dandekar Shree A. Method and system for automated generation of customized factory installable software
US20050234827A1 (en) * 2004-04-14 2005-10-20 Rudowsky Michael J System for processing executable applications to be suitable for distribution
US7430592B2 (en) * 2004-04-21 2008-09-30 Dell Products L.P. Method for heterogeneous system configuration
US7478380B2 (en) * 2004-11-15 2009-01-13 Dell Products L.P. Dynamically updatable and easily scalable command line parser using a centralized data schema
KR20060059395A (en) * 2004-11-29 2006-06-02 삼성전자주식회사 Method for serving software to host device through peripheral device amd peripheral device for serving software to host device
US20060168564A1 (en) * 2005-01-27 2006-07-27 Weijia Zhang Integrated chaining process for continuous software integration and validation
US20060190417A1 (en) 2005-02-24 2006-08-24 International Business Machines Corporation System, method and program to estimate cost of distributing software
US7761851B2 (en) * 2005-05-31 2010-07-20 International Business Machines Corporation Computer method and system for integrating software development and deployment
JP4747733B2 (en) * 2005-08-22 2011-08-17 ブラザー工業株式会社 Node device, shared information update processing program, shared information update method, and information sharing system
US9274774B2 (en) * 2005-10-28 2016-03-01 Google Inc. Common installer server
US8370479B2 (en) 2006-10-03 2013-02-05 Axeda Acquisition Corporation System and method for dynamically grouping devices based on present device conditions
US8065397B2 (en) 2006-12-26 2011-11-22 Axeda Acquisition Corporation Managing configurations of distributed devices
US8478861B2 (en) 2007-07-06 2013-07-02 Axeda Acquisition Corp. Managing distributed devices with limited connectivity

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5689706A (en) 1993-06-18 1997-11-18 Lucent Technologies Inc. Distributed systems with replicated files
US5835911A (en) * 1994-02-08 1998-11-10 Fujitsu Limited Software distribution and maintenance system and method
US5806078A (en) * 1994-06-09 1998-09-08 Softool Corporation Version management system
US5664207A (en) 1994-12-16 1997-09-02 Xcellenet, Inc. Systems and methods for automatically sharing information among remote/mobile nodes
US5809248A (en) 1995-07-05 1998-09-15 Sun Microsystems, Inc. Method and apparatus for front end navigator and network architecture for performing functions on distributed files in a computer network
US6098078A (en) * 1995-12-29 2000-08-01 Lucent Technologies Inc. Maintaining consistency of database replicas
US5926636A (en) * 1996-02-21 1999-07-20 Adaptec, Inc. Remote procedural call component management method for a heterogeneous computer network
US6151643A (en) * 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
US5790796A (en) 1996-06-14 1998-08-04 Symantec Corporation Polymorphic package files to update software components
US5995757A (en) 1997-08-29 1999-11-30 Dell Usa, L.P. Software installation and testing for a build-to order computer system
US5991543A (en) 1997-08-29 1999-11-23 Dell Usa, L.P. Software installation and testing for a build-to-order computer system
US5963743A (en) 1997-08-29 1999-10-05 Dell Usa, L.P. Database for facilitating software installation and testing for a build-to-order computer system
US5999943A (en) * 1997-10-31 1999-12-07 Oracle Corporation Lob locators
US6061678A (en) * 1997-10-31 2000-05-09 Oracle Corporation Approach for managing access to large objects in database systems using large object indexes
US6134659A (en) * 1998-01-07 2000-10-17 Sprong; Katherine A. Controlled usage software
US6233565B1 (en) * 1998-02-13 2001-05-15 Saranac Software, Inc. Methods and apparatus for internet based financial transactions with evidence of payment

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020194314A1 (en) * 2001-05-17 2002-12-19 Alexander Kouznetsov Application generator
US6832366B2 (en) * 2001-05-17 2004-12-14 Simdesk Technologies, Inc. Application generator
WO2003100609A1 (en) * 2002-05-17 2003-12-04 Simdesk Technologies, Inc. Application generator
EA007778B1 (en) * 2002-05-17 2007-02-27 Симдеск Текнолоджиз, Инк. Application generator
US20070226251A1 (en) * 2006-03-24 2007-09-27 Rocket Software, Inc. Method of augmenting and controlling utility program execution for a relational database management system
CN109033436A (en) * 2018-08-14 2018-12-18 武汉达梦数据库有限公司 A kind of multiple version JDBC driving coexistence methods of same database and system

Also Published As

Publication number Publication date
US6421671B1 (en) 2002-07-16

Similar Documents

Publication Publication Date Title
US20020059242A1 (en) Method and system for automated distribution of software
US5717911A (en) Relational database system and method with high availability compliation of SQL programs
US9678734B2 (en) System and method for passive detection and context sensitive notification of upgrade availability for computer information
US6438538B1 (en) Data replication in data warehousing scenarios
US7587423B2 (en) Multistep master data cleansing in operative business processes
US7539686B2 (en) Tag-based schema for distributing update metadata in an update distribution system
US6282712B1 (en) Automatic software installation on heterogeneous networked computer systems
EP1978457B1 (en) Method, computer system and software application for providing a central lock service
US5737738A (en) Distributed read/write replication with primary copy first write and primary copy transfer features
US5845128A (en) Automatically preserving application customizations during installation of a new software release
EP0950948B1 (en) File distribution system and method thereof
EP1465065A2 (en) Peripheral device driver maintenance scheme for networked peripheral device clients
US7401085B2 (en) System and method for controlling the release of updates to a database configuration
US8244675B2 (en) Method and apparatus for updating a database using table staging and queued relocation and deletion
US20050114864A1 (en) Method and system for software installation
US20080148248A1 (en) Automatic software maintenance with change requests
US20060248309A1 (en) Method, System and Computer Program for Installing Shared Software Components
US20040044730A1 (en) Dynamic access of data
US5903762A (en) Application execution method and system therefor
US20020095491A1 (en) System and related methods for remote production line monitoring using the Web
EP1091305A1 (en) Method for upgrading a database
US20030014431A1 (en) Database processing method, apparatus for implementing same, and medium containing processing program therefor
EP1397741A2 (en) Method for performing programming by plain text requests
US7818756B2 (en) SKU determination mechanism and API
US6856979B1 (en) Evaluation of expressions using recursive SQL

Legal Events

Date Code Title Description
AS Assignment

Owner name: DELL USA, LP, A TEXAS LIMITED PARTNERSHIP, TEXAS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BRYAN, JOE MARK;BUTTS, DAVID ALAN;WONG, ROGER W.;AND OTHERS;REEL/FRAME:009928/0983

Effective date: 19990430

AS Assignment

Owner name: DELL PRODUCTS L.P., TEXAS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:DELL USA, L.P.;REEL/FRAME:012944/0743

Effective date: 20020508

STCF Information on status: patent grant

Free format text: PATENTED CASE

CC Certificate of correction
FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

AS Assignment

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

Effective date: 20131029

Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH CAROLINA

Free format text: PATENT SECURITY AGREEMENT (TERM LOAN);ASSIGNORS:DELL INC.;APPASSURE SOFTWARE, INC.;ASAP SOFTWARE EXPRESS, INC.;AND OTHERS;REEL/FRAME:031899/0261

Effective date: 20131029

Owner name: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT, TEXAS

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

Owner name: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT, TEXAS

Free format text: PATENT SECURITY AGREEMENT (ABL);ASSIGNORS:DELL INC.;APPASSURE SOFTWARE, INC.;ASAP SOFTWARE EXPRESS, INC.;AND OTHERS;REEL/FRAME:031898/0001

Effective date: 20131029

Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH

Free format text: PATENT SECURITY AGREEMENT (TERM LOAN);ASSIGNORS:DELL INC.;APPASSURE SOFTWARE, INC.;ASAP SOFTWARE EXPRESS, INC.;AND OTHERS;REEL/FRAME:031899/0261

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

FPAY Fee payment

Year of fee payment: 12

AS Assignment

Owner name: DELL USA L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: CREDANT TECHNOLOGIES, INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: FORCE10 NETWORKS, INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: DELL SOFTWARE INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: ASAP SOFTWARE EXPRESS, INC., ILLINOIS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: DELL PRODUCTS L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: PEROT SYSTEMS CORPORATION, TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: DELL INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: COMPELLANT TECHNOLOGIES, INC., MINNESOTA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: APPASSURE SOFTWARE, INC., VIRGINIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: SECUREWORKS, INC., GEORGIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: DELL MARKETING L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: WYSE TECHNOLOGY L.L.C., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

AS Assignment

Owner name: APPASSURE SOFTWARE, INC., VIRGINIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: DELL INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: PEROT SYSTEMS CORPORATION, TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: WYSE TECHNOLOGY L.L.C., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: FORCE10 NETWORKS, INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: DELL MARKETING L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: SECUREWORKS, INC., GEORGIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: ASAP SOFTWARE EXPRESS, INC., ILLINOIS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: DELL PRODUCTS L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: DELL SOFTWARE INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: CREDANT TECHNOLOGIES, INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: COMPELLENT TECHNOLOGIES, INC., MINNESOTA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: DELL USA L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: DELL PRODUCTS L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: COMPELLENT TECHNOLOGIES, INC., MINNESOTA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: CREDANT TECHNOLOGIES, INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: WYSE TECHNOLOGY L.L.C., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: DELL MARKETING L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: SECUREWORKS, INC., GEORGIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: DELL SOFTWARE INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: DELL INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: PEROT SYSTEMS CORPORATION, TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: FORCE10 NETWORKS, INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: DELL USA L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: APPASSURE SOFTWARE, INC., VIRGINIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: ASAP SOFTWARE EXPRESS, INC., ILLINOIS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

AS Assignment

Owner name: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT, NORTH CAROLINA

Free format text: SECURITY AGREEMENT;ASSIGNORS:ASAP SOFTWARE EXPRESS, INC.;AVENTAIL LLC;CREDANT TECHNOLOGIES, INC.;AND OTHERS;REEL/FRAME:040134/0001

Effective date: 20160907

Owner name: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT, TEXAS

Free format text: SECURITY AGREEMENT;ASSIGNORS:ASAP SOFTWARE EXPRESS, INC.;AVENTAIL LLC;CREDANT TECHNOLOGIES, INC.;AND OTHERS;REEL/FRAME:040136/0001

Effective date: 20160907

Owner name: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLAT

Free format text: SECURITY AGREEMENT;ASSIGNORS:ASAP SOFTWARE EXPRESS, INC.;AVENTAIL LLC;CREDANT TECHNOLOGIES, INC.;AND OTHERS;REEL/FRAME:040134/0001

Effective date: 20160907

Owner name: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., A

Free format text: SECURITY AGREEMENT;ASSIGNORS:ASAP SOFTWARE EXPRESS, INC.;AVENTAIL LLC;CREDANT TECHNOLOGIES, INC.;AND OTHERS;REEL/FRAME:040136/0001

Effective date: 20160907

AS Assignment

Owner name: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., T

Free format text: SECURITY AGREEMENT;ASSIGNORS:CREDANT TECHNOLOGIES, INC.;DELL INTERNATIONAL L.L.C.;DELL MARKETING L.P.;AND OTHERS;REEL/FRAME:049452/0223

Effective date: 20190320

Owner name: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., TEXAS

Free format text: SECURITY AGREEMENT;ASSIGNORS:CREDANT TECHNOLOGIES, INC.;DELL INTERNATIONAL L.L.C.;DELL MARKETING L.P.;AND OTHERS;REEL/FRAME:049452/0223

Effective date: 20190320

AS Assignment

Owner name: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., TEXAS

Free format text: SECURITY AGREEMENT;ASSIGNORS:CREDANT TECHNOLOGIES INC.;DELL INTERNATIONAL L.L.C.;DELL MARKETING L.P.;AND OTHERS;REEL/FRAME:053546/0001

Effective date: 20200409

AS Assignment

Owner name: WYSE TECHNOLOGY L.L.C., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: SCALEIO LLC, MASSACHUSETTS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: MOZY, INC., WASHINGTON

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: MAGINATICS LLC, CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: FORCE10 NETWORKS, INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: EMC IP HOLDING COMPANY LLC, TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: EMC CORPORATION, MASSACHUSETTS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: DELL SYSTEMS CORPORATION, TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: DELL SOFTWARE INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: DELL PRODUCTS L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: DELL MARKETING L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: DELL INTERNATIONAL, L.L.C., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: DELL USA L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: CREDANT TECHNOLOGIES, INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: AVENTAIL LLC, CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: ASAP SOFTWARE EXPRESS, INC., ILLINOIS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

AS Assignment

Owner name: SCALEIO LLC, MASSACHUSETTS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC), MASSACHUSETTS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: DELL PRODUCTS L.P., TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: DELL INTERNATIONAL L.L.C., TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: DELL USA L.P., TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

AS Assignment

Owner name: SCALEIO LLC, MASSACHUSETTS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC), MASSACHUSETTS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: DELL PRODUCTS L.P., TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: DELL INTERNATIONAL L.L.C., TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: DELL USA L.P., TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329