`Case 2:16-cv-00741-RWS Document 151-2 Filed 05/18/17 Page 1 of 17 PageID #: 1789
`
`EXHIBIT B
`
`EXHIBIT B
`
`
`
`Case 2:16-cv-00741-RWS Document 151-2 Filed 05/18/17 Page 2 of 17 PageID #: 1790
`I IIIII IIIIIIII Ill lllll lllll lllll lllll lllll lllll lllll lllll 111111111111111111
`US006728766B2
`
`(12) United States Patent
`Cox et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 6,728,766 B2
`Apr. 27, 2004
`
`(54) METHODS, SYSTEMS AND COMPUTER
`PROGRAM PRODUCTS FOR LICENSE USE
`MANAGEMENT ON A NETWORK
`
`FOREIGN PATENT DOCUMENTS
`
`WO
`
`WO 98/50853
`
`11/1998
`
`............. G06F/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 O days.
`
`(21) Appl. No.: 09/829,854
`
`(22)
`
`Filed:
`
`Apr. 10, 2001
`
`(65)
`
`Prior Publication Data
`
`US 2001/0013064 Al Aug. 9, 2001
`
`Related U.S. Application Data
`
`(62)
`
`(51)
`(52)
`
`(58)
`
`(56)
`
`Division of application No. 09/211,529, filed on Dec. 14,
`1998, now Pat. No. 6,324,578.
`
`Int. Cl.7 . ... ... .. ... ... ... ... .. ... ... ... ... ... .. ... ... G06F 15/177
`U.S. Cl. ....................... 709/220; 709/223; 709/224;
`713/1; 713/2; 713/100
`Field of Search ................................. 709/223, 224,
`709/220, 229; 705/59; 713/200, 201, 1,
`2,100
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`5,204,897 A * 4/1993 Wyman ...................... 710/200
`5,260,999 A * 11/1993 Wyman ....................... 705/59
`11/1993 Janis .......................... 395/725
`5,263,165 A
`8/1995 Beck et al. ................... 70/221
`5,440,739 A
`9/1996 Kohar et al. ........... 340/825.72
`5,554,979 A
`5/1997 Ciscon et al. ............... 709/223
`5,634,010 A
`8/1997 Bonnell et al. ............. 709/202
`5,655,081 A
`5,671,412 A * 9/1997 Christiano ............... 707/104.1
`(List continued on next page.)
`
`OTHER PUBLICATIONS
`
`"A Common Desktop Environment for Platforms Based on
`the UNIX Operating System," By B.E. Cripe, J.A. Brewster,
`and D.E. 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(cid:173)
`istrator to obtain preferences for the configurable prefer(cid:173)
`ences of the application program which have been desig(cid:173)
`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(cid:173)
`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(cid:173)
`tiating execution of the application program.
`
`18 Claims, 5 Drawing Sheets
`
`Client
`
`
`
`Case 2:16-cv-00741-RWS Document 151-2 Filed 05/18/17 Page 3 of 17 PageID #: 1791
`
`US 6,728,766 B2
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`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
`5,778,368 A
`5,809,251 A
`5,813,009 A
`5,845,065 A
`5,845,077 A
`5,848,243 A
`5,875,327 A
`5,881,236 A
`5,911,066 A
`5,933,601 A
`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
`6,115,040 A
`6,158,010 A
`6,175,363 Bl
`6,175,832 Bl
`6,182,142 Bl
`
`10/1997
`11/1997
`1/1998
`4/1998
`5/1998
`5/1998
`6/1998
`6/1998
`7/1998
`9/1998
`9/1998
`* 12/1998
`12/1998
`12/1998
`2/1999
`3/1999
`6/1999
`8/1999
`2/2000
`5/2000
`8/2000
`8/2000
`8/2000
`8/2000
`8/2000
`9/2000
`12/2000
`1/2001
`1/2001
`1/2001
`
`Marlin et al. ............... 707/103
`Regnier et al.
`............. 709/302
`Rose ............................. 380/4
`Wyman ... ... .. ... ... ... ... .. ... 705/1
`Daly et al. .................. 709/223
`Fosdick ...................... 717/178
`Kells et al. ................. 713/200
`Crawford .................... 709/229
`Hogan et al. ................. 707/10
`May et al. .................. 709/223
`Johnson et al. ............. 797 /100
`Conte et al. ................ 713/200
`Fawcett ...................... 709/221
`Kulkarni et al. ............ 709/224
`Brandt et al. . .. ... ... ... ... ... 713/1
`Dickey ....................... 709/221
`Williams et al. ............ 709/300
`Fanshier et al.
`............ 709/223
`Duvvoori et al. ........... 709/224
`Reps et al.
`................. 709/224
`Erickson . . . . . . . . . . . . . . . . . . . . . . 707 /10
`Hayes, Jr .................... 709/223
`Hayes, Jr .................... 709/226
`Franklyn et al. ............ 709/229
`Hayes, Jr .................... 709/246
`Bladow et al.
`............. 345/335
`Moriconi et al.
`........... 713/201
`Williams et al. ............ 345/334
`Luzzi et al.
`. . . . . . . . . . . . . . . . . . 707 /10
`Win et al. ................... 709/229
`
`...................... 710/33
`2/2001 Oh et al.
`6,189,051 Bl
`2/2001 Horn .......................... 709/239
`6,192,414 Bl
`2/2001 Takahashi ................... 380/278
`6,195,432 Bl
`3/2001 Dean et al. ................... 717 /11
`6,202,206 Bl
`OTHER PUBLICATIONS
`"Administration of Graphic User Interface and Multimedia
`Objects Using Cooperative Processing," IBM Technical
`Disclosure Bulletin, vol. 37, No. 9, Sep. 1, 1994, pp.
`675-678, X:P000475542.
`"Guide
`http://nf/pdc97/profiles_and _policies.htm
`to
`Microsoft Windows NT 4.0 Profiles and Policies" pp. 1-76.
`http://www/ieff.org/htlm.charters/acap---charter.html "Appli(cid:173)
`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.
`http ://www.software.ibm.com/os/warp/library I
`sq202822.htm, "WorkSpace on-Demand Handbook," Chap(cid:173)
`ters 2.3.1; 6.2; 6.3; 6.3.1; 6.3.3; 6.5.
`http://www.triteal.com/SoftNC, Java Desktop Environment
`from Triteal, pp. 1-2.
`http://java.sun.com/products/hot-javaviews/admin.html,
`"HotJava Views," pp. 1-24.
`http://esuite.lotus.com/eSuite/eSuite, "The Right Work
`Environment for Network Centric Computing," 24 pages.
`TME 10 Software Distribution User's Guide, Version 3.1,
`Chapters, 1, 4 and 5.
`* cited by examiner
`
`
`
`Case 2:16-cv-00741-RWS Document 151-2 Filed 05/18/17 Page 4 of 17 PageID #: 1792
`
`U.S. Patent
`
`Apr. 27, 2004
`
`Sheet 1 of 5
`
`US 6,728,766 B2
`
`20
`
`10'
`
`Network
`
`22
`
`22'
`
`10"'
`
`10"
`
`24'
`
`26"" D
`
`Client
`
`FIG. 1
`
`24
`
`Client
`
`
`
`Case 2:16-cv-00741-RWS Document 151-2 Filed 05/18/17 Page 5 of 17 PageID #: 1793
`
`U.S. Patent
`
`Apr. 27, 2004
`
`Sheet 2 of 5
`
`US 6,728,766 B2
`
`Software
`Distribution
`
`Install Application
`File Packet
`
`Distribute
`Application
`Launcher to Clients
`
`Distribute
`Configuration
`Manager to
`Administrator
`Client
`
`Obtain User
`Preferences for
`Application
`
`50
`
`52
`
`54
`
`56
`
`58
`
`Obtain
`Administrator
`Preferences for
`
`Application f ao
`
`62
`
`64
`
`No
`
`Yes
`
`Yes
`
`Obtain Defaults
`
`No
`
`Distribution
`Complete
`
`FIG. 2
`
`
`
`Case 2:16-cv-00741-RWS Document 151-2 Filed 05/18/17 Page 6 of 17 PageID #: 1794
`
`U.S. Patent
`
`Apr. 27, 2004
`
`Sheet 3 of 5
`
`US 6,728,766 B2
`
`OD Server
`
`Receive
`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 ID User
`Requesting
`
`70
`
`72
`
`74
`
`76
`
`78
`
`80
`
`82
`
`Obtain User Prefs
`Associated With
`Authorized User
`From Launcher
`
`Initiate Execution
`of Application with
`User Prefs
`
`FIG. 3
`
`84
`
`Obtain User Prefs
`Associated With
`Authorized User
`From Memory
`
`86
`
`
`
`Case 2:16-cv-00741-RWS Document 151-2 Filed 05/18/17 Page 7 of 17 PageID #: 1795
`
`U.S. Patent
`
`Apr. 27, 2004
`
`Sheet 4 of 5
`
`US 6,728,766 B2
`
`Client: Launcher
`
`Receive
`Application
`Launcher
`
`Display Icon
`Associated With
`Application on
`Screen
`
`No
`
`Icon Selected?
`
`/
`
`Obtain User ID and
`Provide Request
`with ID to Server
`
`No
`
`Provide User
`Preferences
`
`90
`
`92
`
`94
`
`96
`
`98
`
`100
`
`102
`
`Run Application
`With User and
`Admin Prefs
`
`FIG. 4
`
`
`
`Case 2:16-cv-00741-RWS Document 151-2 Filed 05/18/17 Page 8 of 17 PageID #: 1796
`
`U.S. Patent
`
`Apr. 27, 2004
`
`Sheet 5 of 5
`
`US 6,728,766 B2
`
`186
`
`188
`
`190
`
`192
`
`194
`
`License Mgmnt
`
`Receive License
`Request
`
`Establish Default
`
`Apply Administrator
`Overrides
`
`Apply User Overrides
`and Update Database
`if Changes
`
`Track License Usage
`
`End
`
`FIG. 5
`
`
`
`Case 2:16-cv-00741-RWS Document 151-2 Filed 05/18/17 Page 9 of 17 PageID #: 1797
`
`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 U.S. Pat. No. 6,324,578. This
`application is related to U.S. patent application Ser. No.
`09/211,528 filed Dec. 14, 1998 and entitled METHODS,
`SYSTEMS AND COMPUTER PROGRAM PRODUCTS
`FOR CENTRALIZED MANAGEMENT OF APPLICA(cid:173)
`TION PROGRAMS ON A NETWORK. This application is
`also related to U.S. 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(cid:173)
`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(cid:173)
`ment on a computer network.
`
`BACKGROUND OF THE INVENTION
`
`Traditional mainframe computer configurations provided
`for user interface to the computer through computer termi(cid:173)
`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(cid:173)
`processing power terminals to a distributed environment of
`networked processors. Examples of this shift in processing 35
`include local or wide area computer networks which inter(cid:173)
`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(cid:173)
`tions with numerous client stations and servers distributed
`widely geographically and utilized by a large number of 50
`users. Furthermore, individual users may move from loca(cid:173)
`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(cid:173)
`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(cid:173)
`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(cid:173)
`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(cid:173)
`enabled applications. A customized install generally must be
`
`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(cid:173)
`tion generally cannot be automatically deleted from the
`5 client station's desktop or automatically upgraded the next
`time the user starts the application. Similarly, the Tivoli
`Management Environment (TME) 10™ system from Tivoli
`Systems, Inc. provides a software distribution feature which
`may be used to transmit a file package to client and server
`10 stations on a network from a central Tivoli™ 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
`15 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-
`20 cations makes portability of preferences or operating envi(cid:173)
`ronment characteristics which provide consistency from
`workstation to workstation difficult. Furthermore, differ(cid:173)
`ences in hardware or connections may create inefficiencies
`as users move from workstation to workstation. For
`25 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-
`30 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.works™, Microsoft's "Zero
`Administration" initiative for Windows® and International
`Business Machines Corporation's (IBM's) Workspace On
`40 Demand™. 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
`45 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
`55 server rather than the client. Accordingly, the communica(cid:173)
`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
`60 installs applications on client stations which do not fully
`support roaming by users. The JAVA TM 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
`65 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
`
`
`
`Case 2:16-cv-00741-RWS Document 151-2 Filed 05/18/17 Page 10 of 17 PageID #: 1798
`
`US 6,728,766 B2
`
`3
`across applications for a user. Furthermore, it typically
`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(cid:173)
`erogeneous network utilizing differing devices and connec(cid:173)
`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(cid:173)
`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(cid:173)
`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
`
`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
`5 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
`10 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. A profile manager program on the
`15 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-
`20 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
`25 configurable preferences and a plurality of authorized users
`is installed on a server coupled to the network. An applica(cid:173)
`tion launcher program associated with the application pro(cid:173)
`gram is distributed to a client coupled to the network. A user
`set of the plurality of configurable preferences associated
`30 with one of the plurality of authorized users executing the
`application launcher program is obtained and an adminis(cid:173)
`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
`35 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(cid:173)
`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-
`45 urable preferences is obtained from an administrator execut(cid:173)
`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.
`
`40
`
`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(cid:173)
`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 50
`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 55
`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 60
`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 65
`also allows a user to specify one or more of the configurable
`parameters of the application program. An icon is displayed
`
`
`
`Case 2:16-cv-00741-RWS Document 151-2 Filed 05/18/17 Page 11 of 17 PageID #: 1799
`
`US 6,728,766 B2
`
`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
`5 when demanded by a user. It further provides an essentially
`hardware transparent ability for an individual user to inter(cid:173)
`face to an on-demand server supported client station while
`maintaining the user's personal preferences for each appli(cid:173)
`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(cid:173)
`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
`25 invention; and
`FIG. 5 is a flowchart illustrating license use management
`according to an embodiment of the present invention.
`
`5
`In another embodiment of the present invention, addi(cid:173)
`tional application programs are managed according to the
`teachings of the present invention along with user prefer(cid:173)
`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(cid:173)
`vided for management of configurable application programs 10
`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. A user set of the plurality of configurable preferences 15
`is obtained from one of the plurality of authorized users
`executing the application launcher program and an admin(cid:173)
`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 20
`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(cid:173)
`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 30
`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(cid:173)
`cation program responsive to a request from the one of the 35
`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(cid:173)
`ment policy information for a plurality of application pro(cid:173)
`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- 65
`ment of configurable application programs in a network
`environment from a central on-demand server location while
`
`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(cid:173)
`ments set forth herein; rather, these embodiments are pro(cid:173)
`vided so that this disclosure will be thorough and complete,
`and will fully convey the scope of the invention to those
`40 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
`45 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
`50 management server such as a Tivoli™ server 20 and
`on-demand servers 22, 22'. As used herein, "on-demand"
`refers to a server delivering applications as needed respon(cid:173)
`sive to user requests as requests are received. System 10
`further includes client stations 24, 24', 26, 26'. As illustrated,
`55 on-demand servers 22, 22' are connected to Tivoli™ 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
`60 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 Tivoli™ server 20, acting as the
`central administration station executing network manage(cid:173)
`ment software such as TME 10™ from Tivoli Systems, Inc.
`Servers 22, 22' act as on-demand servers for their respective
`
`
`
`Case 2:16-cv-00741-RWS Document 151-2 Filed 05/18/17 Page 12 of 17 PageID #: 1800
`
`US 6,728,766 B2
`
`7
`ass