WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
System and method for software distribution and desktop management in a computer network environment    
United States Patent5933647   
Link to this pagehttp://www.wikipatents.com/5933647.html
Inventor(s)Aronberg; David B. (Nyack, NY); Goldman; Dov J. (White Plains, NY); Spiro; Peter A. (Rye, NY)
AbstractA system for distributing software in a customized configuration, to pre-selected computers in a network environment, includes a workstation running a console, a workstation running an agent, and a file server. The workstation running the console creates distribution control information which dictates how the software is distributed and to what agent based workstations under a given set of conditions. The distribution control information is stored on the file server where it is subsequently downloaded from by the agent based workstation which meets the conditions for a particular configuration of the software.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History
Drawing from US Patent 5933647
System and method for software distribution and desktop management in a

     computer network environment - US Patent 5933647 Drawing
System and method for software distribution and desktop management in a computer network environment
Inventor     Aronberg; David B. (Nyack, NY); Goldman; Dov J. (White Plains, NY); Spiro; Peter A. (Rye, NY)
Owner/Assignee     Cognet Corporation (Valhalla, NY)
Patent assignment
All assignments
Publication Date     August 3, 1999
Application Number     08/792,938
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     January 24, 1997
US Classification    
Int'l Classification    
Examiner     Stamber; Eric W.
Assistant Examiner    
Attorney/Law Firm     Plevy; Arthur L.
Address
Parent Case    
Priority Data    
USPTO Field of Search    
Patent Tags     software distribution desktop management a computer network environment
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
5828887
Yeager
717/167
Oct,1998

[0 after 0 votes]
5805897
Glowny
717/178
Sep,1998

[0 after 0 votes]
5794052
Harding

Aug,1998

[0 after 0 votes]
5790796
Sadowsky
709/221
Aug,1998

[0 after 0 votes]
5784563
Marshall

Jul,1998

[0 after 0 votes]
5764992
Kullick
717/170
Jun,1998

[0 after 0 votes]
5761512
Breslau
717/140
Jun,1998

[0 after 0 votes]
5752042
Cole

May,1998

[0 after 0 votes]
5742829
Davis
717/178
Apr,1998

[0 after 0 votes]
5724509
Starkweather
709/220
Mar,1998

[0 after 0 votes]
5721824
Taylor
709/203
Feb,1998

[0 after 0 votes]
5715462
Iwamoto
717/173
Feb,1998

[0 after 0 votes]
5689640
Okanoue
709/221
Nov,1997

[0 after 0 votes]
5684952
Stein
709/221
Nov,1997

[0 after 0 votes]
5684996
Westerholm
717/168
Nov,1997

[0 after 0 votes]
5666501
Jones
715/748
Sep,1997

[0 after 0 votes]
5586304
Stupek, Jr.
717/170
Dec,1996

[0 after 0 votes]
5555416
Owens
717/178
Sep,1996

[0 after 0 votes]
5495610
Shing
709/221
Feb,1996

[0 after 0 votes]
5473772
Halliwell
717/171
Dec,1995

[0 after 0 votes]
5440739
Beck

Aug,1995

[0 after 0 votes]
5421009
Platt
709/221
May,1995

[0 after 0 votes]
5367686
Fisher
717/174
Nov,1994

[0 after 0 votes]
5359730
Marron
717/169
Oct,1994

[0 after 0 votes]
5339435
Lubkin
717/121
Aug,1994

[0 after 0 votes]
5247683
Holmes
709/221
Sep,1993

[0 after 0 votes]
5155847
Kirouac
709/221
Oct,1992

[0 after 0 votes]
5008814
Mathur

Apr,1991

[0 after 0 votes]
4974149
Valenti
709/217
Nov,1990

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


What is claimed is:

1. A system for distributing software in a customized configuration to a computer coupled to a computer network comprising:

console means for:

creating distribution control information which includes a profile which instructs said computer on how to install said software onto said computer, and is both associated with said software and related to said customized configuration, and,

a virgin process for assuring that an operating system operating on said console means does not conflict with said profile set up on said console means;

server means responsive to said console means for storing said software and said distribution control information; and,

agent means for downloading said software in accordance with said distribution control information, said agent means residing on said computer.

2. The system in accordance with claim 1, wherein said console means is a computer with one of a Windows 95 and Windows NT based operating system.

3. The system in accordance with claim 1, wherein said agent means is a computer with one of a Windows 95 and Windows NT based operating system.

4. The system in accordance with claim 1, wherein said server means is a computer with one of a Windows 95 and Windows NT based operating system.

5. The system in accordance with claim 1, wherein said virgin process includes copying a file from a current operating directory on said console means onto a backup directory.

6. The system in accordance with claim 1, further comprising a remaining plurality of computers also coupled to said computer network, wherein said distribution control information includes a condition expression builder which controls which of said computer and said remaining plurality of computers said software should be distributed to.

7. The system in accordance with claim 6 wherein said condition builder is dependent upon at least one of a name associated with said computer or one of said plurality of computers, a group membership of said computer or one of said plurality of computers, and hard disk capacity of said computer or one of said plurality of computers.

8. A system for a customized distribution of a software in a computer network environment, comprising:

a console based workstation, within said computer network environment, which administers said customized distribution of said software throughout said computer network environment, provides a profile which instructs said agent based workstation on how to install said software onto said agent based workstation in a customized configuration, and is configured for a virgin process which assures that an operating system within said console based workstation does not conflict with said profile set up on said console based workstation;

a file server, within said computer network environment, which receives said software and information related to a configuration of said software for said customized distribution; and

an agent based workstation, within said computer network environment, which retrieves from said file server said software in accordance with said configuration of said software as determined by said console based workstation.

9. The system in accordance with claim 8, wherein said console based workstation is a computer with one of a Windows 95 and Windows NT based operating system.

10. The system in accordance with claim 8, wherein said agent based workstation is a computer with one of a Windows 95 and Windows NT based operating system.

11. The system in accordance with claim 8, wherein said file server is a computer with one of a Windows 95 and Windows NT based operating system.

12. The system in accordance with claim 8, wherein said virgin process includes copying a file from a predetermined directory on said console means onto a backup directory.

13. The system in accordance with claim 8, further comprising a plurality of agent based workstations, wherein said console based workstation is configured to utilize a condition expression builder which controls which of said plurality of said agent based workstations should receive said software.

14. The system in accordance with claim 13, wherein said expression builder is dependent upon at least one of a name of said agent based workstation or one of said plurality of agent based workstations, a group membership of said agent based workstation or one of said plurality of agent based workstations, and hard disk capacity of said agent based workstation or one of said plurality of agent based workstations.

15. A method for distributing software to a target computer having a customized configuration and coupled to a computer network, said method comprising the steps of:

creating distribution control information which is both associated with said software and related to said customized configuration of said target computer using an administrator computer utilizing a configuration different from said customized configuration of said target computer;

storing said software and said distribution control information; and

downloading said software in accordance with said distribution control information to said target computer, wherein initialization of said downloading is performed by said target computer.

16. The method in accordance with claim 15, wherein said step of creating distribution control information includes creating a profile which instructs said computer on how to install said software onto said computer.

17. The method in accordance with claim 15, further comprising the step of assuring that for a console computer where administration of said step of creating distribution control information takes place, there is no conflict with the operating system on said console computer with said profile set up on said console computer.

18. The method in accordance with claim 17, wherein said step of assuring includes copying a file from the current windows directory on said console computer onto a backup directory.

19. The method in accordance with claim 15, wherein a plurality of computers are in said network environment, and further comprising the step of conditioning which of said plurality of computers will perform said step of downloading said software.

20. The method in accordance with claim 19, wherein said step of conditioning selects at least one of said computer and said plurality of computers to perform said step of downloading based on at least one of a name of said computer or one of said plurality of computers, a group membership of said computer or one of said plurality of computers, and hard disk capacity of said computer or one of said plurality of computers.

21. A method for remotely installing software to a select group of a plurality of computers, wherein each of said plurality of computers is respectively coupled to a same computer network and at least one of said plurality of computers is operative to serve as an administrator workstation which, in a first mode, utilizes a first configuration indicative of a base configuration which has been modified to permit at least one installed software package to be executed, said method comprising the steps of:

initializing said administrator workstation in a second mode utilizing said base configuration;

installing at least one software application on said administrator workstation while said administrator workstation is operating in said second mode, resulting in changes being made to said base configuration;

determining said changes made to said base configuration resulting from said step of installing said at least one software application on said administrator workstation;

generating a sequence of steps capable of reproducing said determined changes on any of said plurality of computers; and,

selectively executing at least some of said sequence of steps on each of said select group of said plurality of computers according to a preexisting configuration associated with each of said select group of said plurality of computers, wherein said preexisting configuration may be different for each of said select group of said plurality of computers.

22. The method of claim 21, further comprising the step of building a contingency expression which is utilized to automatically define said select group of said plurality of computers.

23. The method of claim 21, further comprising the step of undoing each of said changes made to said base configuration.

24. The method of claim 21, wherein said step of initializing said administrator workstation in said second mode comprises the steps of:

copying a plurality of files from at least one predetermined location and associated with said first mode to a first backup directory; and,

copying a plurality of files associated with said second mode from a second backup directory to said at least one predetermined location.

25. A method for selectively distributing software to at least one of a plurality of computers coupled to a same network, wherein each of said plurality of computers is respectively operable in a first mode which utilizes an associated configuration indicative of a base configuration which has been modified so previously installed software packages can be executed on it, said method comprising the steps of:

initializing a first of said plurality of computers in a second mode which utilizes said base configuration;

installing a target software package on said first computer resulting in changes being made to said base configuration of said first computer;

ascertaining said changes made to said base configuration of said first computer;

selecting at least some of said ascertained changes to duplicate on a second computer selected from said plurality of computers dependent upon said associated configuration of said second computer; and,

effecting said selected changes on said second computer, thus installing said target software on said second computer in a manner customized for said second computer regardless of said associated configuration of said first computer.

26. The method of claim 25, further comprising the step of building a contingency expression which is utilized to automatically identify at least said second computer.

27. The method of claim 25, further comprising the step of undoing each of said changes made to said base configuration of said first computer.

28. The method of claim 25, wherein said step of initializing said first computer in said second mode comprises the steps of:

copying a plurality of files from at least one predetermined location and associated with said first mode to a first backup directory; and,

copying a plurality of files associated with said second mode from a second backup directory to said at least one predetermined location.
 Description Submit all comments and votes
 


FIELD OF THE INVENTION

The present invention is related to computer network systems and more particularly to a system for distributing software and managing desktops on computers on the network.

BACKGROUND OF THE INVENTION

A complete software distribution and desktop management system for computer networks requires features such as automatic profiling of applications, effortless distribution of software, mass customization of computers on the network, and total support for a Windows 95 or NT based operating system. Present software distribution and desktop management systems only provide some of these features and only to a certain extent. Some of these present software distribution products are: Microsoft Systems Management Server (SMS), Seagate's WinInstall, Symantec Norton Network Administrator Suite (NAS), McAfee Associates Saber LAN Workstation, Tangram AM/PM, and Novell Netware Navigator.

WinInstall provides a rigid framework for performing file distribution, allowing the user to perform only a limited set of tasks at predetermined times. The present invention provides a flexible, object-oriented framework, giving the user total control over what events will take place during a distribution, when they take place, and who they affect. The present invention's object-oriented design also results in an easily expandable, bug-free application.

WinInstall makes the user navigate through a series of confusing screens to perform different tasks. The present invention's main console screen allows the user to create jobs, schedule them, and view the results all from one main view.

WinInstall is designed to provide file distribution only. The present invention goes beyond file distribution and is designed to allow custom configuration of each workstation or group of workstations from the administrator's console.

Many Windows' applications make use of the same components such as ".dll" files. If application "A" installs component "X", application "B", installed after "A", will not copy "X" to the hard drive again. To solve this problem, the documentation for WinInstall recommends that the user profile an application using a "fresh" copy of Windows. WinInstall does nothing to enforce this requirement or to automatically satisfy it. By contrast, the present invention downgrades the Windows environment on the administrator's PC so that it is "fresh" before starting an application installation. Every single package is profiled perfectly, whether or not the administrator is aware of this crucial problem.

The present invention affords many options during a software distribution that WinInstall does not. For example, the present invention provides the capability to delete files, remove directories, create empty directories, perform search-and-replace on multiple files, and kick off executables at any time during an installation.

The present invention provides a graphical interface for viewing and modifying changes to the registry giving the administrator complete control over the registry, including the ability to delete keys and values. WinInstall does not.

The present invention provides a sophisticated graphical condition expression builder to allow distributions based on any combination of several criteria, including user name, group membership, hard disk size, free disk space, and environment variables. Moreover, the present invention has the ability to vary an installation at distribution time based on any of the above criteria. WinInstall and Symantec do not.

The present invention's condition expression builder can be applied to any individual component action of a distribution. This allows a network administrator to customize individual aspects of a particular application with ease. WinInstall and Symantec have no similar ability.

The present invention offers complete control of Windows configuration files, i.e., "ini files", including the ability to add or remove lines, or pieces of text within a line, to or from any section. WinInstall does not offer this flexibility.

The present invention provides the ability to call administrator-defined subroutines to perform common tasks, such as virus-checking or cleaning files from the hard drive, before, during, or after a software distribution. WinInstall and Symantec do not.

The present invention "Profiles" user applications for the administrator, creating all the instructions and commands necessary to distribute the software automatically. Symantec Norton Administrator Suite forces the user to create instructions and commands manually.

Symantec Norton Administrator Suite permits the user to schedule jobs based on user name, group membership and workstation. In contrast, the present invention permits the administrator, i.e., user, to schedule jobs based on many more criteria, including workstation characteristics, and how much free disk space will be left after an installation.

The present invention can automatically profile and distribute any Windows application. Microsoft SMS requires that the application have a special script file to guide the installation process.

Microsoft SMS can schedule any executable to run on a group of workstations. However, the present invention can not only schedule an executable, but also any action in its database to run at the workstation.

Accordingly, it is an object of the present invention to provide a complete software distribution and desktop management system for a computer network environment. It is a further object of the present invention to provide a software distribution and desktop management system with full integration into a graphical user interface based operating system.

SUMMARY OF THE INVENTION

The present invention is a system for distribution of a software in a customized configuration to a computer in network environment. The system includes a console means for creating distribution control information which is both associated with said software and related to said customized configuration. A server means responsive to the console means stores the software and the distribution control information. Linked to the server means is an agent means for downloading the software from the server means, in accordance with the distribution control information. The agent means resides on the computer which downloads the software. Preferably, the console means, agent means and server means are each a computer with a Windows 95 or NT based operating system.

The distribution control information created by the console means includes a profile which instructs the computer running the agent on how to install the software onto itself. The console means further includes a virgin windows process for assuring that a windows based operating system within the console means does not conflict with said profile set up on the console means. The virgin windows process includes copying a file from the current windows directory on the console means onto a backup directory.

The distribution control information includes a condition expression builder which controls which computer should install the software onto itself from the file server. The condition may be based on the name of the computer running the agent, a group membership of the computer running the agent, or hard disk capacity of the computer running the agent.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be better understood with reference to the following illustrative and non-limiting drawings, wherein like features are like numbered throughout the drawings, in which:

FIG. 1 is a system overview schematic of the present invention.

FIG. 2 is a schematic of the hardware and software platforms for the present invention.

FIG. 3 shows a main window through which the present invention is controlled from the workstation running the console.

FIG. 4 shows a dialog box, accessed from the window in FIG. 3, from which actions by the user are selected.

FIG. 5 shows a dialog box, accessed from the window in FIG. 3, from which an install type is selected by the user.

FIG. 6 shows a dialog box, accessed from the window of FIG. 3, from which group selections are made by the user.

FIG. 7 shows a dialog box, accessed from the window of FIG. 3, from which administration properties are selected by the user.

FIG. 8 shows a dialog box, accessed from the window of FIG. 3, from which scheduling related properties are selected by the user.

FIG. 9 shows a dialog box, accessible from the dialog box in FIG. 8, from which condition related selections are made by the user.

FIG. 10 shows a dialog box, accessed from the window of FIG. 3, from which profiling selections are made by the user.

FIG. 11 is a schematic of the "Virgin Windows" process in accordance with the present invention.

FIG. 12 is a schematic of the profiling process in accordance with the present invention.

FIG. 13 is a schematic of the process, accessed from the dialog box of FIG. 6, for administration of users or groups.

FIG. 14 is a schematic of the condition building process, controlled from the dialog box of FIG. 9, in accordance with the present invention.

FIG. 15 is a schematic of the scheduling process, controlled from the Dialog box in FIG. 8, in accordance with the present invention.

FIG. 16 is a schematic of the file menu properties in accordance with the present invention.

FIG. 17 is a schematic of a safe copy process in accordance with the present invention.

FIG. 18 is chart for the process to restore the regular windows during the scheduling process of FIG. 12.

DETAILED DESCRIPTION OF THE INVENTION

Although the present invention can be used in many different computer network environments where a complete software distribution and management solution is useful, the present invention as described herein is especially suited for use in a graphical user interface based operating system. Accordingly, the present invention will be described in conjunction with a Windows 95 or NT operating system based computer network environment.

A complete software distribution and desktop management system for computer networks requires features such as automatic profiling of applications, effortless distribution of software, mass customization of computers on the network, and total support for the operating system such as Windows 95 and Windows NT.

Referring now to FIG. 1 there is shown a system overview schematic 100 of a typical network arrangement in accordance with the present invention. Software distribution and desktop management is performed from the workstation running the console 101 component of the present invention which includes an administrator. The workstation running the console 101 is linked to the file server 102 which in turn is linked to workstations 103 and 104 running the agent components of the present invention. It is noted that in the present invention the profiling occurs on the console 101, the profile is stored on the file server 102, and the profile is distributed to the agents 103 and 104. The profile is a set of instructions to the computers 103 and 104 on how to install any application.

Referring now to FIG. 2, there is shown a display of typical hardware elements for a workstation and a file server, and respective software elements which configure the hardware elements for operation in accordance with the present invention. A typical workstation platform, running the console or agent, includes hard