`
`(12) United States Patent
`Cox et al.
`
`(10) Patent N0.:
`(45) Date of Patent:
`
`US 6,728,766 B2
`Apr. 27, 2004
`
`US006728766B2
`
`(54) METHODS, SYSTEMS AND COMPUTER
`PROGRAM PRODUCTS FOR LICENSE USE
`MANAGEMENT ON A NETWORK
`
`W0
`
`FOREIGN PATENT DOCUMENTS
`WO 98/50853
`11/1998
`........... .. 606F/9/44
`
`(75)
`
`Inventors: David E. COX, Raleigh, NC (US);
`David L. Kaminsky, Chapel Hill, NC
`(US); David B. Lindquist, Raleigh, NC
`(US)
`
`(73) Assignee:
`
`International Business Machines
`Corp., Armonk, NY (US)
`
`( * ) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`
`(21) Appl. No.: 09/829,854
`
`(22)
`
`(65)
`
`Filed:
`
`Apr. 10, 2001
`
`Prior Publication Data
`
`US 2001/0013064 A1 Aug. 9, 2001
`
`Related US. Application Data
`
`(62) Division of application No. 09/211,529, filed on Dec. 14,
`1998, now Pat. No. 6,324,578.
`
`Int. Cl.7 ............................................ .. G06F 15/177
`(51)
`(52) US. Cl.
`..................... .. 709/220; 709/223; 709/224;
`713/1; 713/2; 713/100
`(58) Field Of Search ............................... .. 709/223, 224,
`709/220, 229; 705/59; 713/200, 201, 1,
`2, 100
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`4/1993 Wyman .................... .. 710/200
`5,204,897 A *
`5,260,999 A * 11/1993 Wyman
`..... .. 705/59
`5,263,165 A
`11/1993 Janis ........ ..
`.. 395/725
`5,440,739 A
`8/1995 Beck et al.
`. . . . .
`. . . . . . . . . .. 70/221
`5,554,979 A
`9/1996 Kohar et al.
`......... .. 340/82572
`5,634,010 A
`5/1997 Ciscon et a1.
`............. .. 709/223
`5,655,081 A
`8/1997 Bonnell et a1.
`........... .. 709/202
`5,671,412 A *
`9/1997 Christiano ............. .. 707/104.1
`
`OTHER PUBLICATIONS
`
`“A Common Desktop Environment for Platforms Based on
`the UNIX Operating System,” By B.E. Cripe, J.A. Brewster,
`and DE. Laursen. Hewlett—Packard Journal, vol. 47, No. 2,
`Apr. 1, 1996, pp. 6—14.
`
`(List continued on next page.)
`
`Primary Examiner—Frantz B. Jean
`(74) Attorney, Agent, or Firm—Myers Bigel Sibley &
`Sajovec; Jeanine S. Ray-Yarletts
`
`(57)
`
`ABSTRACT
`
`Management of configurable applications programs on a
`network is provided by using two program files for each
`configurable application program. The two program files are
`provided to a network server station which operates as the
`on-demand server for software deployment and may also act
`as the application server. The on-demand server makes the
`first (configuration manager) program available to an admin-
`istrator to obtain preferences for the configurable prefer-
`ences of the application program which have been desig-
`nated as administrator preferences. The on-demand server
`also provides a second (application launcher) program to its
`client stations. The application launcher program not only
`provides for a user interface to execute the application
`program itself but also allows a user to specify one or more
`of the configurable parameters of the application program.
`An icon is displayed on the screen of the client station
`through which a user may initiate execution of the applica-
`tion program. The application launcher program provides
`the identity of the user to the server along with the request
`to initiate execution of the application program. The
`on-demand server then initiates execution of the application
`program using stored values for the user and administrator
`set preferences or, if no preferences have yet been obtained
`for the particular user, obtains user preferences before ini-
`tiating execution of the application program.
`
`(List continued on next page.)
`
`18 Claims, 5 Drawing Sheets
`
`10‘”
`
`
`
`Serve
`
`
`
`
`
`
`
`
`
`
`
`24‘
`
`
`
`
`
`
`“:1
`Chem
`
`/,
` 111m
`CI15111
`
`
`
`|PR2017-01291
`
`Ubisoft EX1001 Page 1
`
`IPR2017-01291
`Ubisoft EX1001 Page 1
`
`
`
`US 6,728,766 132
`
`Page 2
`
`
`
`710/33
`709/239
`380/278
`................. .. 717/11
`
`
`
`..
`2/2001 Oh et al.
`2/2001 Horn ...... ..
`2/2001 Takahashi
`.
`3/2001 Dean et al.
`
`6,189,051 B1
`6,192,414 B1
`6,195,432 B1
`6,202,206 B1
`
`d
`
`OTHER PUBLICATIONS
`“Administration of Graphic User Interface and Multimedia
`Objects Using Cooperative Processing,” IBM Technical
`Disclosure Bulletin, VOL 37, N0. 9’ Sep. 1’ 1994’ pp.
`675—678, XP000475542.
`.d
`“
`h
`.
`1.
`h
`.
`f d
`fil
`to
`9‘11 e
`7P0 1C1“ UP.
`“FWD /P (39.74)“) 654‘“
`Microsoft Windows NT 4.0 Profiles and P011c1es pp. 1—76.
`http://www/1eff.org/htlm.charters/acap—charter.html“Appli-
`cation Configuration Access Protocol (acap),” 68 pages.
`IBM Network Station Manager for Windows NT Server 4.0,
`Chapter 5. Using the IBM Network Station Manager, pp.
`5_1 to 5_15.
`httpz//WWW.SOftware.ibmcom/OS/Warp/hbrary/
`,,
`“
`sq202822.htm, WorkSpace on—Demand Handbook, Chap-
`.
`.
`.
`.
`.
`5
`ms 2-3-1> 62: 63> 6~3~1> 6~3~3> 6~
`~
`.
`hfiP1//WWW~trltea1~C0m/50fiNC, JaVa Desktop EHVIIOHment
`from Trltea1,pp. 1—2.
`http://java.sun.c0m/pr0ducts/h0t—javaViews/admin.html,
`“HotJava Views,” pp. 1—24.
`“The Right Work
`http://esuite.lotus.com/eSuite/eSuite,
`~
`'
`~
`~
`~
`9
`Environment for Network Centric Computing,” 24 pages.
`TME10Stw Dtbt
`U GdV 3.1
`Cha ters 10f4 ‘3 5” n “to” S” S m 6’
`emon
`p
`’
`’
`'
`* cited by examiner
`
`’
`
`|PR2017-01291
`
`Ubisoft EX1001 Page 2
`
`US. PATENT DOCUMENTS
`.
`............. .. 707/103
`10/1997 Marlm et al.
`709/302
`11/1997 Regnier et 91
`1/1998 Rose ........................... .. 380/4
`4/1998 Wyman ....................... .. 705/1
`5/1998 DalYf’l 111-
`709/223
`5/1998 Fosdlck .................... .. 717/178
`6/1998 Kells et al.
`............... .. 713/200
`6/1998 Crawford
`.. 709/229
`
`
`
`5,680,615 A
`5,689,708 A
`5,708,709 A
`5,745,879 A
`5,748,896 A
`5,752,041 A *
`5,764,887 A
`5,771,354 A
`
`
`
`.... .. 707/10
`7/1998 Hogan et al.
`5,778,368 A
`709/223
`9/1998 May etal.
`5,809,251 A
`797/100
`9/1998 Johnson et a1.
`5,813,009 A
`N 713/200
`5,845,065 A * 12/1998 Come et a1.
`5,845,077 A
`12/1998 Fawcett
`.................... .. 709/221
`5,848,243 A
`12/1998 Kulkarni et a1.
`.......... .. 709/224
`5,875,327 A
`2/1999 Brandt et al-
`- - - - -
`- - - - - ~~ 713/1
`5,881,236 A
`3/1999 Dickey ........... ..
`709/221
`5,911,066 A
`6/1999 Wllllams et al.
`709/300
`5,933,601 A
`8/1999 Fanshler et al.
`709/223
`.
`709/224
`2/2000 DuVV00r1 et al.
`5/2000 Reps et al.
`............... .. 709/224
`8/2000 Erickson .................... .. 707/10
`8/2000 Hayes, Jr.
`709/223
`.... ..
`8/2000 Hayes, Jr.
`709/226
`8/2000 Franklyn et al.
`709/229
`83000 Hayesalf- ------- --
`709/246
`OIICOIll e a .
`. . . . . . . . . ..
`lg; Elladf’w .et ‘31 ~~~~ ~~
`1/2001 Williams et al.
`............ 345/334
`1/2001 LuZZi et al.
`. . . . . . . . .
`. . . . .. 707/10
`1/2001 Win et a1. ................. .. 709/229
`
`6,021,438 A *
`6,070,190 A
`6,098,067 A
`6,105,063 A
`6,105,066 A
`6,105,069 A *
`6,108,712 A
`2
`’
`’
`6,175,363 B1
`6,175,832 B1
`6,182,142 B1
`
`
`
`IPR2017-01291
`Ubisoft EX1001 Page 2
`
`
`
`US. Patent
`
`Apr. 27, 2004
`
`Sheet 1 0f 5
`
`US 6,728,766 B2
`
`20
`
`
`
`
`
`flflflflflfll]
`unnuunn
`
`Network Manage ent Server
`
`
`
`
`
`Client
`
`FIG. 1
`
`|PR2017-01291
`
`Ubisoft EX1001 Page 3
`
`IPR2017-01291
`Ubisoft EX1001 Page 3
`
`
`
`US. Patent
`
`Apr. 27, 2004
`
`Sheet 2 0f 5
`
`US 6,728,766 B2
`
`Software
`Distribution
`
`50
`
`52
`
`54
`
`56
`
`58
`
`60
`
`62
`
`Yes
`
`Obtain Defaults
`
`NO
`
`Distribution
`
`Complete
`
`
`
`Install Application
`File Packet
`
`
`
`
` Distribute
`Application
`
`Launcher to Clients
`
` Distribute
`
`Configuration
`Manager to
`
`Administrator
`
`Client
`
`
`
`
`
`
`Obtain User
`Preferences for
`Application
`
` Obtain
`Administrator
`
`Preferences for
`
`Application
`
` Defaults
`Needed?
`
`
`
`
`
` Additional
`
`Applications?
`
`
`
`
`
`FIG. 2
`
`|PR2017-01291
`
`Ubisoft EX1001 Page 4
`
`IPR2017-01291
`Ubisoft EX1001 Page 4
`
`
`
`US. Patent
`
`Apr. 27, 2004
`
`Sheet 3 0f 5
`
`US 6,728,766 B2
`
`70
`
`Receive
`
`82
`
`Application File
`Packet
`
`identify Clients to
`Receive
`
`Application and
`Administrator
`
`Distribute
`
`Launcher(s) and
`Manager(s)
`
`Obtain Admin and/
`or Default
`Preferences
`
`Receive Initiate
`
`Execution Request
`and lD User
`Requesting
`
`72
`
`74
`
`76
`
`78
`
`so
`
`84
`
`
`
`
`Obtain User Prefs
`Obtain User Prefs
`Associated With
`
`
`
`Associated With
`Authorized User
`From Launcher
`
`
`
`Authorized User
`From Memory
`
`
`
`86
`
`Initiate Execution
`of Application with
`
`User Prefs
`
`F l G 3
`
`lPR2017-01291
`
`Ubisoft EX1001 Page 5
`
`IPR2017-01291
`Ubisoft EX1001 Page 5
`
`
`
`US. Patent
`
`Apr. 27, 2004
`
`Sheet 4 0f 5
`
`US 6,728,766 B2
`
`ClienttLauncher
`
`
`
` 90
`
`
`
`
`
`Application
`Launcher
`
`92
`
`
`
`
`
`Display Icon
`Associated With
`
`Application on
`Screen
`
`
`/94
`
`
`Icon Selected?
`
`Receive
`
`
`
`
`Yes
`
`Obtain User ID and
`
`Provide Request
`with ID to Server
`
`96
`
`98
`
`User Prefs
`
`
`
`Requested?
`
`Provide User
`Preferences
`
`Run Application
`With User and
`Admin Prefs
`
`
`
`
`
`100
`
`102
`
`FIG. 4
`
`|PR2017-01291
`
`Ubisoft EX1001 Page 6
`
`IPR2017-01291
`Ubisoft EX1001 Page 6
`
`
`
`US. Patent
`
`Apr. 27, 2004
`
`Sheet 5 0f 5
`
`US 6,728,766 B2
`
`License Mgmnt
`
`
`
`
`
`
`
`Track License Usage
`
`FIG. 5
`
`|PR2017-01291
`
`Ubisoft EX1001 Page 7
`
`
`
`186
`
`188
`
`190
`
`192
`
`194
`
`Receive License
`Request
`
`Establish Default
`
`Apply Administrator
`Overrides
`
`
`
`Apply User Overrides
`and Update Database
`if Changes
`
`IPR2017-01291
`Ubisoft EX1001 Page 7
`
`
`
`
`
`US 6,728,766 B2
`
`1
`
`METHODS, SYSTEMS AND COMPUTER
`PROGRAM PRODUCTS FOR LICENSE USE
`MANAGEMENT ON A NETWORK
`
`CROSS REFERENCE TO RELATED
`APPLICATIONS
`
`This application is a divisional of application Ser. No.
`09/211,529 filed Dec. 14, 1998 US. Pat. No. 6,324,578. This
`application is related to US. patent application Ser. No.
`09/211,528 filed Dec. 14, 1998 and entitled METHODS,
`SYSTEMS AND COMPUTER PROGRAM PRODUCTS
`FOR CENTRALIZED MANAGEMENT OF APPLICA-
`
`TION PROGRAMS ON A NETWORK. This application is
`also related to US. patent application Ser. No. 09/072,597
`filed May 5, 1998 and entitled: Client-Server System for
`Maintaining a user Desktop Consistent with Server Appli-
`cation User Access Permissions which is incorporated herein
`by reference in its entirety.
`
`FIELD OF THE INVENTION
`
`The present invention relates to network management in
`general and in particular to application program manage-
`ment on a computer network.
`
`BACKGROUND OF THE INVENTION
`
`Traditional mainframe computer configurations provided
`for user interface to the computer through computer termi-
`nals which were directly connected by wires to ports of the
`mainframe computer. As computing technology has
`evolved, processing power has typically evolved from a
`central processing center with a number of relatively low-
`processing power terminals to a distributed environment of
`networked processors. Examples of this shift in processing
`include local or wide area computer networks which inter-
`connect individual work stations where each workstation has
`
`substantial independent processing capabilities. This shift
`may be further seen in the popularity of the Internet which
`interconnects many processors and networks of processors
`through devices such as, for example, routers. This type of
`network environment is often referred to as a client-server
`
`environment with client stations coupled to and supported
`by a server station.
`In the modern distributed processing computer
`environment, control over software, such as application
`programs, is more difficult than where a mainframe operated
`by an administrator is used, particularly for large organiza-
`tions with numerous client stations and servers distributed
`
`widely geographically and utilized by a large number of
`users. Furthermore, individual users may move from loca-
`tion to location and need to access the network from
`different client stations at different times. The networked
`
`environment increases the challenges for a network admin-
`istrator in maintaining proper licenses for existing software
`and deploying new or updated applications programs across
`the network.
`
`One approach to reducing software distribution and con-
`trol problems is to use an application server in which the
`application programs are installed and maintained on a
`centralized server which supports a plurality of client sta-
`tions. In addition, the Systems Management Server (SMS)
`program from Microsoft Corporation provides an ability to
`transmit an application program from a server to a number
`of clients. The SMS system typically allows installation of
`programs and associated icons at client stations for SMS-
`enabled applications. Acustomized install generally must be
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`created by a system administrator for each different version
`to be installed. Furthermore, once installed at a client, a user
`must typically use that specific client station. The applica-
`tion generally cannot be automatically deleted from the
`client station’s desktop or automatically upgraded the next
`time the user starts the application. Similarly,
`the Tivoli
`Management Environment (TME) 10TM system from Tivoli
`Systems, Inc. provides a software distribution feature which
`may be used to transmit a file package to client and server
`stations on a network from a central TivoliTM server.
`
`A further complication in network systems is that,
`typically, these systems include combinations of network
`applications and native applications as well as combinations
`of different connection types and hardware devices. As used
`herein “native applications” refers to applications which are
`installed locally on a workstation such that characteristics
`associated with the native application are stored on the
`workstation. The combinations of network connections,
`differing hardware, native applications and network appli-
`cations makes portability of preferences or operating envi-
`ronment characteristics which provide consistency from
`workstation to workstation difficult. Furthermore, differ-
`ences in hardware or connections may create inefficiencies
`as users move from workstation to workstation. For
`
`example, a user may, in a first session, access the network
`utilizing a high speed connection and a workstation with a
`high resolution color monitor to execute an application and
`then, in a later session, access the network to execute the
`same application from a mobile computer with a mono-
`chrome display and a low speed modem connection to the
`network. Thus, session content, such as color display data or
`preferences associated with the application, which may have
`been appropriate for the first session, may be inappropriate
`or inefficient in a later session.
`
`Efforts to address mobility of uses in a network have
`included efforts to provide preference mobility such as, for
`example, Novell’s Z.E.N.worksTM, Microsoft’s “Zero
`Administration” initiative for Windows® and International
`
`Business Machines Corporation’s (IBM’s) Workspace On
`DemandTM. However, these solutions each typically require
`pre-installation of software at the workstation to support
`their services. For example, Novell’s Z.E.N. and IBM’s
`Workspace On Demand utilize a designer-supplied support
`layer in the operating system to enable their services. In
`addition to modifying the workstations operating system at
`startup to setup tasks to customize the user’s environment,
`the Microsoft Zero Administration solution may be limited
`to a homogeneous environment where the workstation and
`the server are utilizing the same operating system.
`Another approach to centralized management is the tra-
`ditional mainframe model, such as with the IBM 3270
`system, or an X Windows environment. However, in each of
`these approaches, the client device is treated as a dumb
`terminal with execution of the applications occurring at the
`server rather than the client. Accordingly, the communica-
`tion between the server and the client is typically presenting
`characters for a display screen of the client and/or receiving
`key strokes from the client. Windows Zero Administration,
`as described above, is client rather than user oriented and
`installs applications on client stations which do not fully
`support roaming by users. The JAVATM environment utilized
`on the Internet for web applications provides an ability for
`hardware independent application development but fails to
`provide an integrated framework for presenting multiple
`independent applications to a user. While various web
`applications do allow personalizing of a specific application
`display by user, this capability is generally not managed
`
`|PR2017-01291
`
`Ubisoft EX1001 Page 8
`
`
`
`IPR2017-01291
`Ubisoft EX1001 Page 8
`
`
`
`
`
`US 6,728,766 B2
`
`3
`typically
`it
`across applications for a user. Furthermore,
`associates personalized screen information with an Internet
`address which is client device rather than user associated,
`therefore limiting its ability to support roaming by users.
`Each of these “mobility” systems typically do not address
`the full range of complications which may arise in a het-
`erogeneous network utilizing differing devices and connec-
`tions. The systems typically will not present application
`choices associated with the user and for which the user is
`
`authorized but instead present information associated with
`the particular client workstation. Users would typically have
`to manually define session characteristics at each differing
`workstation they used in the network or maintain local
`characteristic definitions which may be inappropriate for
`particular applications a user is executing and may substan-
`tially reduced the administrative convenience of a centrally
`controlled network. Thus, these various approaches fail to
`provide a seamless integration of application access and
`session characteristics across heterogeneous networks. Such
`solutions may, at most, reduce network administration only
`after initial installation on each workstation. In addition,
`control over access to applications by users is difficult to
`accomplish in a mobile environment.
`An additional user based application management capa-
`bility not fully supported by these various approaches is
`license use management. License use management typically
`involves controlling how many users can use an application.
`A distributed network environment with a plurality of client
`stations and a plurality of different users accessing the
`applications from different clients increases the challenge
`associated with managing license use to insure compliance
`with limitations established by software designers. These
`environments also typically require various steps in the
`installation process to occur at different locations rather than
`allowing the entire process to be controlled from a single
`point for an entire managed network environment.
`
`SUMMARY OF THE INVENTION
`
`Accordingly, it is an object of the present invention to
`provide methods, systems and computer program products
`for management of configurable application programs on a
`computer network which allow a mix of user and system
`administrator defined configurable preferences to be asso-
`ciated with specific application programs.
`It is a further object of the present invention to provide
`such methods, systems and computer program products that
`can accommodate various types of hardware operating under
`different operating systems across client stations.
`These and other objects are provided, according to the
`present invention, by providing two program files for each
`configurable application program which are provided to a
`network server station which operates as an on-demand
`server for software deployment and may also act as the
`application server. The on-demand server makes the first, or
`configuration manager, program available to an administra-
`tor classified user (either remotely at a client station or at a
`direct interface to the server station) to provide an interface
`to establish preferences for the configurable preferences of
`the application program which have been designated as
`administrator only settable. The on-demand server also
`provides a second, or application launcher, program to client
`stations on the network and served by the on-demand server.
`The application launcher program not only provides for a
`user interface to execute the application program itself but
`also allows a user to specify one or more of the configurable
`parameters of the application program. An icon is displayed
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`on the screen of the client station through which a user may
`initiate execution of the application program. The
`on-demand application launcher may also obtain a license
`for the requesting user before initiating execution thereby
`providing centralized license management support.
`The application launcher program first determines the
`user identity (ID) and provides the user information to the
`server along with the request to initiate execution of the
`application program. The application program is then
`executed using stored values for the user and administrator
`set preferences or, if no preferences have yet been obtained
`for the particular user (or new preferences are desired), user
`preferences are obtained before initiating execution of the
`application program itself. Aprofile manager program on the
`on-demand server provides a user interface and maintains
`profile information for each client (hardware related) and
`user (preferences) for all managed configurable application
`programs available on the on-demand server. The profile
`manager program may also control access to various appli-
`cations based on user authorization information.
`
`In one embodiment of the present invention methods,
`systems and computer program products are provided for
`management of configurable application programs on a
`network. An application program having a plurality of
`configurable preferences and a plurality of authorized users
`is installed on a server coupled to the network. An applica-
`tion launcher program associated with the application pro-
`gram is distributed to a client coupled to the network. Auser
`set of the plurality of configurable preferences associated
`with one of the plurality of authorized users executing the
`application launcher program is obtained and an adminis-
`trator set of the plurality of configurable preferences is
`obtained from an administrator. The application program is
`then executed using the obtained user set and the obtained
`administrator set of the plurality of configurable preferences
`responsive to a request from the one of the plurality of
`authorized users. The request may be received from the one
`of the plurality of authorized users through the application
`launcher program.
`In another embodiment of the present invention, a con-
`figuration manager program associated with the application
`program is distributed to a second client coupled to the
`network and the administrator set of the plurality of config-
`urable preferences is obtained from an administrator execut-
`ing the configuration manager program. The administrator
`may be one of the plurality of authorized users who is
`authorized to execute the configuration manager program. In
`one embodiment of the present invention, an icon associated
`with the application program is displayed on a screen-of the
`client and an authorized user may execute the application
`launcher program by selecting the displayed icon.
`In one embodiment of the present invention, obtained user
`sets and obtained administrator sets are stored on a storage
`device coupled to the server and retrieved from the storage
`device when initiating execution of the application program.
`Default preference values may be provided and used for any
`of the plurality of configurable preferences which are not
`specified by the user set or
`the administrator set.
`Furthermore, the default preference values may be also be
`stored on the storage device coupled to the server.
`In a further aspect of the present invention, security may
`be provided by determining if a user requesting execution of
`the application program is one of the plurality of authorized
`users. This aspect may also be combined with the license use
`management aspects of the present
`invention to further
`control access to managed application programs.
`
`|PR2017-01291
`
`Ubisoft EX1001 Page 9
`
`
`
`IPR2017-01291
`Ubisoft EX1001 Page 9
`
`
`
`
`
`US 6,728,766 B2
`
`5
`In another embodiment of the present invention, addi-
`tional application programs are managed according to the
`teachings of the present invention along with user prefer-
`ences obtained from a plurality of users. Furthermore, for
`each application program, associated application launcher
`programs may be distributed to a plurality of client stations
`and obtain user preferences from a plurality of users.
`In a further embodiment of the present
`invention,
`methods, systems and computer program products are pro-
`vided for management of configurable application programs
`on a network. An application program having a plurality of
`configurable preferences and a plurality of authorized users
`is installed on a server and an application launcher program
`associated with the application program is distributed to a
`client. Auser set of the plurality of configurable preferences
`is obtained from one of the plurality of authorized users
`executing the application launcher program and an admin-
`istrator set of the plurality of configurable preferences is
`obtained from an administrator The application program is
`then executed using a stored user set and the administrator
`set of the plurality of configurable preferences responsive to
`a request from the one of the plurality of authorized users.
`In another embodiment of the present invention, methods,
`systems and computer program products are provided for
`management of configurable application programs on a
`network including receiving an application launcher pro-
`gram associated with an application program having a
`plurality of configurable preferences from a server. A user
`set of the plurality of configurable preferences from one of
`the plurality of authorized users executing the application
`launcher program is provided to the server. The server is also
`requested to provide an instance of the application program
`and a stored user set and an administrator set of the plurality
`of configurable preferences for use in executing the appli-
`cation program responsive to a request from the one of the
`plurality of authorized users.
`In a further aspect of the present invention, methods,
`systems and computer program products are provided for
`management of license use for a network. License manage-
`ment policy information for a plurality of application pro-
`grams is maintained at a license management server.
`Requests are received at the license management server for
`a license availability of a selected one of the plurality of
`application programs from a user at a client. The license
`management server determines the license availability for
`the selected one of the plurality of application programs for
`the user based on the maintained license management policy
`information and provides an unavailability indication to the
`client responsive to the selection if the license availability
`indicates that a license is not available for the user or an
`
`availability indication if the licensed availability indicates
`that a license is available for the user. The request may be
`received from an application launcher program associated
`with the selected one of the plurality of application programs
`and the availability or unavailability indication may be
`provided to the application launcher program.
`In one
`embodiment,
`the license management server is an on
`demand server associated with the client which provides an
`instance of the selected one of the application programs to
`the client for execution.
`
`While the invention has been described above primarily
`with respect to the method aspects of the invention, both
`systems and computer program products are also provided.
`Accordingly, the present invention provides for manage-
`ment of configurable application programs in a network
`environment from a central on-demand server location while
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`allowing for user preferences to be tracked independent of
`hardware location of the user. This provides for reduced
`costs and increased uniformity in managing software in a
`network environment by delivering configured applications
`when demanded by a user. It further provides an essentially
`hardware transparent ability for an individual user to inter-
`face to an on-demand server supported client station while
`maintaining the user’s personal preferences for each appli-
`cation program.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a schematic diagram of a computer network with
`configurable application program management according to
`an embodiment of the present invention;
`FIG. 2 is a flowchart illustrating operations for application
`program distribution to clients on a computer network
`according to an embodiment of the present invention;
`FIG. 3 is a flowchart illustrating operations for application
`program distribution and execution from the server perspec-
`tive according to an embodiment of the present invention;
`FIG. 4 is a flowchart illustrating operations for application
`program distribution and execution from the client and user
`perspective according to an embodiment of the present
`invention; and
`FIG. 5 is a flowchart illustrating license use management
`according to an embodiment of the present invention.
`
`DETAILED DESCRIPTION OF PREFERRED
`EMBODIMENTS
`
`The present invention now will be described more fully
`hereinafter with reference to the accompanying drawings, in
`which preferred embodiments of the invention are shown.
`This invention may, however, be embodied in many different
`forms and should not be construed as limited to the embodi-
`
`ments set forth herein; rather, these embodiments are pro-
`vided so that this disclosure will be thorough and complete,
`and will fully convey the scope of the invention to those
`skilled in the art. As will be appreciated by one of skill in the
`art,
`the present invention may be embodied as methods,
`systems or computer program products. Accordingly, the
`present
`invention may take the form of a hardware
`embodiment, a software embodiment or an embodiment
`combining software and hardware aspects.
`FIG. 1 illustrates an embodiment of a computer network
`including configurable application program management
`capabilities according to an embodiment of the present
`invention. Computer network system 10 includes a network
`management server such as a TivoliTM server 20 and
`on-demand servers 22, 22'. As used herein, “on-demand”
`refers to a server delivering applications as needed respon-
`sive to user requests as requests are received. System 10
`further includes client stations 24, 24', 26, 26'. As illustrated,
`on-demand servers 22, 22' are connected to TivoliTM server
`20 over a first network segment 10'. Client stations 24, 24'
`are served by on-demand server 22 and communicate over
`network 10". Similarly, clients 26, 26' are served by server
`22' and communicate over network 10'". As schematically
`illustrated in FIG. 1, client stations 24, 24', 26, 26' may be
`hardware from a variety of designers operating a variety of
`different operating systems.
`System 10, as illustrated in FIG. 1, is a centrally managed
`computer network with TivoliTM server 20, acting as the
`central administration station executing network manage-
`ment software such as TME 10TM from Tivoli Systems, Inc.
`Servers 22, 22' act as on-demand servers for their respective
`
`|PR2017-01291
`
`Ubisoft EX1001 Page 10
`
`
`
`IPR2017-01291
`Ubisoft EX1001 Page 10
`
`
`
`
`
`US 6,728,766 B2
`
`7
`associated client stations 24, 24', 26, 26' and provide for
`client/server application support. It is further to be under-
`stood that networks 10', 10", 10'" may be separate physical
`networks, separate partitions of a single physical network or
`may be a single network. Furthermore, TivoliTM server 20
`may be configured to allow for direct communication
`between server 20 and clients 24, 24', 26, 26'.
`TivoliTM server 20 provides a means for software distri-
`bution and management in computer network system 10.
`Furthermore, on-demand servers 22, 22' each provide an
`application management system for managing configurable
`application programs using both user and administrative
`preferences for various application programs. More
`particularly, as described in the embodiments herein,
`on-demand servers 22, 22' are configured to operate within
`the eNetworkTM environment available from International
`
`Business Machines Corporation (IBM). An on-demand
`server which may be modified according to the present
`invention is described in US. patent application Ser. No.
`09/211,528 which is incorporated herein by reference in its
`entirety. However, while the present
`invention may be
`implemented in this environment, it is also suitable for use
`with other client/server and network management environ-
`ments.
`
`Operations of the present invention will now be described
`with respect to the flowcharts of FIGS. 2 through 5. It will
`be understood that each block of the flowchart illustrations,
`and combinations of blocks in the flowchart illustrations,
`can be imp