throbber
(12)
`
`United States Patent
`Cox et al.
`
`(10) Patent N0.:
`(45) Date of Patent:
`
`US 6,510,466 B1
`Jan. 21, 2003
`
`US006510466B1
`
`(54) METHODS, SYSTEMS AND COMPUTER
`PROGRAM PRODUCTS FOR CENTRALIZEI)
`
`5,848,243 A 12/1998 Kulkarni et al. .......... .. 709/224
`5,875,327 A
`2/1999 Brandt et al. ................ .. 713/1
`
`MANAGEMENT OF APPLICATION
`
`PROGRAMS ONA NETWORK
`
`5,881,236 A
`
`3/1999 Dickey . . . . . . . . . . .
`
`6/1999 Williams et a1.
`5,911,066 A
`5,933,601 A * 8/1999 Fanshift et a1. . . . . .
`
`. . . .. 709/221
`
`709/300
`. . . .. 709/223
`
`(75) Inventors: David E- COX, Raleigh, NC (Us); Kent
`F- Hayes, J11, Chapel Hill, NC (Us);
`David B. Lindquist, Raleigh, NC (US);
`John R_ McGarvey, Apex, NC (Us);
`Abdl Salahshour, Ralelgh’ NC (Us)
`
`(73) Assignee: International Business Machines
`Corporation, Armonk, NY (US)
`
`( * ) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(0) by 0 days.
`
`5/2000 Reps et a1. ............... .. 709/224
`6,070,190 A
`(List continued on next page.)
`
`FOREIGN PATENT DOCUMENTS
`9850853
`11/1998
`........... .. G06F/9/44
`
`WO
`
`OTHER PUBLICATIONS
`_
`“A Common Desktop Environment for Platforms Based on
`the UNIX Operating System,” BY 315- Cripe, J-A- Brewster,
`and DE. Laursen, Hewlett—Packard Journal, vol. 47, No. 2,
`Apr- 1, 1996, pp- 6—14
`
`(21) Appl NO . 09/211 528
`
`.
`
`..
`
`,
`
`(List continued on next page.)
`
`_
`.
`(22) Flled'
`(51) I
`C17
`
`nt.
`
`.
`
`.............................................. ..
`
`Dec‘ 14’ 1998
`
`G061) 13/00
`
`Primary Examiner—David Wiley
`(74) Attorney, Agent, or Firm—Myers Bigel Sibley &
`Sajovec; Jeanine S. Ray-Yarletts
`
`709/229; 709/223
`(52) US. Cl. ............... ..
`(58) Field of Search .............................
`709/223, 203,
`709/219’ 229’ 710/3’ 129’ 31
`,
`References Clted
`US PATENT DOCUMENTS
`_
`Elm;
`
`2 1;;
`
`~~~~~~~~~~~~~~~~~~ ~~
`
`(56)
`
`’
`
`’
`
`CC e a .
`
`. . . . . . . ..
`
`"
`
`gfslclirneétaii
`2 *
`709/202
`5:655:081 A * 8/1997 Bonnell ct
`707/103
`5,680,615 A 10/1997 Marlin et al.
`-
`709 /3()2
`5,689,709 A 11/1997 Regnier et a1,
`380/4
`5,708,709 A * 1/1998 Rose .......... ..
`5,745,879 A
`4/1998 Wyman ....................... .. 705/1
`5,748,896 A
`5/1998 Daly et a1- ~~~~~~~~~~~~~~~~ -- 709/223
`
`2
`
`’
`
`’
`
`gensfet (‘111
`
`raw OI . . . . ..
`
`2 *
`
`?ziagtitlal' "
`
`ABSTRACT
`(57)
`Methods, Systems and Computer program products for man_
`agement of application programs on a network including a
`server supporting client stations are provided. The server
`provides applications on-demand to a user logging in to a
`client supported by the server. Mobility is provided to the
`user and hardware portability is provided by establishing a
`user desktop interface responsive to a login request which
`presents to the user a desktop screen through a web browser
`interface which accesses and downloads selected application
`programs from the server responsive to a request from ‘the
`3}
`01 kt P
`“h 1
`I Th 11111
`I
`user on 0 user es 0 screen a
`e c 1en .
`e a
`1ca 1on
`program is then provided from the server and executed at the
`client. The application program may further be customized
`to conform to the user’s preferences and may also provide
`for license use management by determining license avail
`ability before initiating execution of the application pro
`gram. Finally, software distribution and installation may be
`provided from a single network management server.
`
`'
`
`'
`
`'
`
`'
`
`'
`
`'
`
`9/1998 Johnson et a1. ........... .. 707/100
`5,813,009 A
`5,845,077 A 12/1998 Fawcett .................... .. 709/221
`
`42 Claims, 9 Drawing Sheets
`
`200
`/
`
`m
`Admin Console
`
`l
`
`22
`
`204
`
`206
`
`202
`
`Client Management Sewer
`
`Web Server
`
`m
`User Console
`
`208
`
`DataBase
`
`IPR2016-01271
`UNIFIED 1025
`
`

`
`US 6,510,466 B1
`Page 2
`
`US. PATENT DOCUMENTS
`
`6,098,067 A * 8/2000 Erickson .................... .. 707/10
`6,105,063 A * 8/2000 Hayes, Jr. .... ..
`709/223
`6,105,066 A
`8/2000 Hayes, Jr. ....... ..
`709/226
`6,105,069 A
`8/2000 Franklin et al. ..
`709/229
`6,108,712 A
`8/2000 Hayes, Jr. ....... ..
`709/246
`6,115,040 A * 9/2000 Bladow et al. ........... .. 345/335
`6,158,010 A * 12/2000 Moriconi et al. ......... .. 713/201
`6,175,363 B1
`1/2001 Williams et al. ..
`345/334
`
`. . . .. 707/10
`1/2001 LuZZi et al. . . . . . .
`6,175,832 B1
`709/229
`1/2001 Win et al. ..
`6,182,142 B1
`6,189,051 B1 * 2/2001 Oh et al. .................... .. 710/33
`6,192,414 B1
`2/2001 Horn ........................ .. 709/239
`6,195,432 B1 * 2/2001 Takanashi et al.
`.... .. 380/9
`6,202,206 B1 * 3/2001 Dean et al. ................. .. 717/11
`
`OTHER PUBLICATIONS
`
`“Administration of Graphic User Interface and Multimedia
`Objects Using Cooperating Processing,” IBM Technical
`Disclosure Bulletin, vol. 37, No. 9, Sep. 1, 1994, pp.
`675—678.
`
`http://nf/pdc97/pro?les and policies.htm “Guide to
`Microsoft WindoWs NT 4.0 Pro?les and Policies” pp 1—76.
`http://WWW/ietf.org/htlm.charters/acap—charter.html “Appli
`cation Con?guration 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/
`sq202822.htm, “WorkSpace on—Demand Handbook,” Chap
`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 : //j ava.sun.com/products/hot—j avavieWs/admin.html,
`“HotJava Views,” pp 1—24.
`http://esuite.lotus.com/eSuite/eSuite, “The Right Work
`Environment for NetWork Centric Computing,” 24 pages.
`
`* cited by examiner
`
`

`
`U.S. Patent
`
`Jan. 21, 2003
`
`Sheet 1 0f 9
`
`US 6,510,466 B1
`
`20
`
`00: E /'°
`
`Network Management
`Server
`
`Network
`
`—/\
`
`10'
`
`v
`
`J
`
`F '.
`Illltlllllll!
`IIIIIIIIII
`
`,/
`
`,_,.==(_,
`
`10II
`
`\N‘/
`
`10III
`
`24'
`
`26
`
`26'
`
`V
`
`7
`
`Client
`
`Client
`
`.
`Cllent
`
`

`
`U.S. Patent
`
`Jan. 21, 2003
`
`Sheet 2 0f 9
`
`US 6,510,466 B1
`
`20°
`
`FIG. 2
`
`?g
`Admin Console
`
`204
`
`206
`
`202
`
`'
`
`Web Server
`
`Client Management Server
`
`g
`m
`User Console
`
`208 -
`DataBase
`
`204
`\
`
`214
`/
`
`206
`
`222
`
`20°
`/
`
`—
`
`Web Server
`
`=
`
`=
`
`Web Browser
`
`User
`Conf.
`Mgmnt Auth
`
`Servlets
`
`/
`
`Hdw.
`lnven
`
`\ Network Registry \
`\
`\
`\
`\
`\
`210 212
`220
`216
`
`Config. Framework
`
`208
`
`224
`
`License System
`Mgmnt Mgmnt
`
`\
`\
`218
`
`226
`
`l Desktop/Webtop/Apps
`
`Client Access
`
`228
`
`202
`/
`
`'
`
`

`
`U.S. Patent
`
`Jan. 21, 2003
`
`Sheet 3 0f 9
`
`US 6,510,466 B1
`
`FIG. 4
`
`( On--Demand Server >
`
`Yes
`
`232
`,/
`
`‘Configuration
`
`V
`\ 234
`
`/
`
`<New Session? No
`\
`yes /
`
`236
`
`Login
`
`V
`
`238
`
`New Access
`\ Request?
`‘\
`
`Yes
`
`,240
`
`Access Application
`
`

`
`U.S. Patent
`
`Jan. 21, 2003
`
`Sheet 4 0f 9
`
`US 6,510,466 B1
`
`FIG. 5
`
`( Configuration )
`l
`Import Application
`Definition
`
`1
`
`Input User Info for
`Application
`l
`Input License Policy
`
`l
`
`Input Access
`1Specifications
`1
`Update DataBase
`
`End D
`
`250
`
`252
`
`254
`
`256
`
`258
`
`

`
`U.S. Patent
`
`Jan. 21, 2003
`
`Sheet 5 6f 9
`
`US 6,510,466 B1
`
`FIG. 6
`
`Login
`
`I
`
`260
`/
`
`262
`
`Receive HTTP
`Request
`
`V
`
`Obtain ID and
`Password
`
`264
`
`268
`
`No
`
`_
`
`License Avallable?
`
`_
`
`266
`
`270
`
`Display Error Message
`
`Display Desktop with
`Authorized Applications
`and Enable Logging
`
`

`
`U.S. Patent
`
`Jan. 21, 2003
`
`Sheet 6 0f 9
`
`US 6,510,466 B1
`
`FIG. 7
`(
`
`Access
`
`)
`
`l
`
`280
`Receive Application /
`Request
`
`283
`
`/
`
`282
`
`Obtain ID and
`Password
`
`I
`
`N°< Credentials
`Available?
`\.
`
`—-_-
`
`_
`No /
`Authorized?
`
`N0
`mm License Available?
`
`286\
`
`290
`
`‘ Display Error Message
`
`l
`
`Initiate Instance of
`Application and Enable
`Logging
`_
`
`GB
`
`

`
`U.S. Patent
`
`Jan. 21, 2003
`
`Sheet 7 0f 9
`
`US 6,510,466 B1
`
`FIG. 8
`
`(
`
`Tivoli Distribution v
`
`-
`
`.
`
`"
`
`11o
`
`Provide Software /
`Access to» Tivoli
`Server
`
`1
`
`1 12
`Specify Direcotories
`for Software and /
`Program
`information
`
`Execute Pre-
`Distribution
`Program
`
`Distribute Software
`to Specified OD
`Sewers
`
`1 14
`
`1 16
`
`V
`Execute After
`Distribution
`Program
`
`1 18
`/
`
`0
`120
`Update Profile
`Management List /
`of OD Server
`
`

`
`U.S. Patent
`
`Jan. 21, 2003
`
`Sheet 8 of 9
`
`US 6,510,466 B1
`
`our
`
`
`
`.6_&<.9m_mwm
`
`
`
`92wEma£_>>
`
`omAGE
`
`
`
`mEmEoommxomn_._m.,m_mm
`
`inE2
`
`Emu
`
`¢LF
`
`
`
`Em.mo.n_.~w_n_
`
`.wt<mmmoo._n_anF
`
`um.
`
`wmo_O
`
`v_mm._.9:.
`
`wmmxomm
`
`
`
`xmflco_§_fi_o
`
`mmmxomaofsawon.
`
`$mc_E._m._.
`
`our
`
`mmmxumm
`
`
`
`mwmcmzowmmxomu
`
`
`
`m__...__8:moB>mwam.
`
`
`
`
`
`m9.66.".w__n_o:a_Ew_o
`
`
`
`Em:_E.w._.
`
`65co@§&<
`
`.mco::m._5...<
`
`>m_%_n_wcmwtwmV3
`
`§&<:30
`
`_m;u::3
`
`
`
`Em_mo_n_..m_n_
`
`9o..mmmmoooiwe
`
`
`
`9:..2E_._m_o
`
`
`
`mmmxommw__u_
`
`
`
`Em699.666u__=m_8.
`
`mmADE
`
`<0.03
`
`an.E
`
`mmmmmms.T._O.:m
`
`w:mm__
`
`9mc_E.o._.
`
`mmmxomam_=.mE.n._
`
`Emmi...wmosom-
`
`
`
`Emn_.ot<\m:o_mm_-
`
`
`
`>>mn=n__>5:8E_-
`
`
`
`:_oE_._.awn
`
`atomUCNEEOU
`
`
`
`m_._.m=<2.
`
`toQ_.:=>_n_%<«E
`
`co_._:_.ao
`
`
`
`Em:_c..:w._.
`
`
`
`
`
`mmmxomam__n.m>mw3.»
`
`
`
`
`
`:o:_::mD0flown.0__n_2690
`
`Eouwsoa:wowtmgw2...
`
`
`
`
`
`v_mm._.ommxommm__u_
`
`
`
`
`
`
`
`
`
`
`
`
`
`

`
`U.S. Patent
`
`Jan. 21, 2003
`
`Sheet 9 0f 9
`
`US 6,510,466 B1
`
`1U
`
`

`
`US 6,510,466 B1
`
`1
`METHODS, SYSTEMS AND COMPUTER
`PROGRAM PRODUCTS FOR CENTRALIZED
`MANAGEMENT OF APPLICATION
`PROGRAMS ON A NETWORK
`
`CROSS REFERENCE TO RELATED
`APPLICATIONS
`
`This application is related to the following application
`?led concurrently hereWith: METHODS, SYSTEMS AND
`COMPUTER PROGRAM PRODUCTS FOR MANAGE
`MENT OF CONFIGURABLE APPLICATION PRO
`GRAMS ONANETWORK. This application is also related
`to US. patent application Ser. No. 09/072,597 ?led May 5,
`1998 and entitled: Client-Server System for Maintaining a
`user Desktop Consistent With Server Application User
`Access Permissions Which is incorporated herein by refer
`ence 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.
`
`10
`
`15
`
`20
`
`BACKGROUND OF THE INVENTION
`
`25
`
`2
`customiZed install generally must be created by a system
`administrator for each different version to be installed.
`Furthermore, once installed at a client, a user must typically
`use that speci?c client station. The application 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 ?le 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 dif?cult. Furthermore, differ
`ences in hardWare or connections may create inef?ciencies
`as users move from Workstation to Workstation. For
`example, a user may, in a ?rst 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 ?rst session may be inappropriate or
`inef?cient in a later session.
`Efforts to address mobility of users 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 is typically
`limited to a homogeneous (Windows@ only) 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 does 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
`
`Traditional mainframe computer con?gurations 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 dif?cult 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 arc installed and maintained on a
`centraliZed server Which supports a plurality of client sta
`tions (sometimes referred to as a client/server application as
`contrasted to a desktop application). In addition, the Systems
`Management Server (SMS) program from Microsoft Cor
`poration provides an ability to transmit an application pro
`gram 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. A
`
`30
`
`35
`
`40
`
`45
`
`55
`
`60
`
`65
`
`

`
`US 6,510,466 B1
`
`3
`applications, such as the Netscape Mission Control desktop,
`do allow personaliZing of a speci?c application display by a
`user, this capability is generally not managed across appli
`cations for a user. Furthermore, it typically associates per
`sonaliZed screen information With an Internet address (and
`sometimes a “cookie” installed at the client) Which is
`associated With a client device rather than a user, 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 system 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 de?ne session characteristics at each differing
`Workstation they used in the netWork or maintain local
`characteristic de?nitions 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 by users is difficult to accomplish in a
`mobile environment.
`Furthermore, these various approaches have, at most, only
`limited capabilities to provide a uniform framework for
`deployment of neW or updated application programs from
`different softWare designers. To the extent softWare distri
`bution capabilities from a central location are provided, such
`as With the TME IOTM system, they 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 centraliZed management of application programs on a
`computer netWork.
`It is a further object of the present invention to provide
`such methods, systems and computer program products that
`are user based across various hardWare interface devices.
`It is another object of the present invention to provide
`such methods, systems and computer program products that
`provide for softWare deployment from a central administra
`tive server location across a plurality of client stations.
`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 methods, systems and com
`puter program products for management of application
`programs on a netWork including a server supporting client
`stations. The server provides applications on-demand to a
`user logging in to a client supported by the server. Mobility
`is provided to the user and hardWare portability is provided
`by establishing a user desktop interface responsive to a login
`request Which presents to the user a desktop screen through
`a Web broWser interface. The desktop accesses and doWn
`loads selected application programs from the server respon
`sive to a request from the user, such as the selection of an
`icon associated With the application program Which is dis
`
`15
`
`25
`
`35
`
`45
`
`55
`
`65
`
`4
`played on the user desktop screen at the client. The appli
`cation program is then provided from the server and
`executed at the client. The application program may further
`be customiZed to conform to the user’s preferences and may
`also provide for license use management by determining
`license availability before initiating execution of the appli
`cation program. Accordingly, applications are provided
`on-demand to users independent of the device used to access
`the server.
`Centralized control of softWare distribution is also pro
`vided for a netWork management server managed computer
`netWork such as a TivoliTM environment. Application pro
`grams are distributed as ?le packages (packets) to
`on-demand servers. A pro?le manager import call is
`included in the distributed ?le packet along With an import
`text ?le containing the data required to properly install and
`register the application program on the on-demand server
`and make it available to authoriZed users. Settable
`on-demand server identi?er ?elds are included to alloW a
`plurality of on-demand servers to receive a common ?le
`packet and properly install and register the program for use
`locally.
`In one embodiment of the present invention, a method for
`management of application programs on a netWork includ
`ing a server and a client is provided. A plurality of appli
`cation programs are installed at the server. The plurality of
`application programs may be installed on a netWork drive
`accessible to the server. A login request initiating a session
`is received from a user through an application executing at
`the client. Auser desktop interface is then established at the
`client associated With the user responsive to the login
`request from the user. The desktop interface includes a
`plurality of display regions associated With a set of the
`plurality of application programs installed at the server for
`Which the user is authoriZed. The server receives a selection
`of one of the plurality of application programs from the user
`desktop interface and provides an instance of the selected
`one of the plurality of application programs to the client for
`execution responsive to the selection.
`In a further embodiment, application management infor
`mation for the plurality of applications is maintained at the
`server and a plurality of display regions associated With a set
`of the plurality of application programs for Which the user is
`authoriZed is included responsive to the application man
`agement information. In a further embodiment of the present
`invention, application launcher programs associated With
`each of the set of the plurality of application programs for
`Which the user is authoriZed are distributed to the client and
`selections of programs are received from one of the appli
`cation launcher programs Which is associated With the
`selected one of the plurality of application programs. The
`application launcher programs may be provided as JAVATM
`applets and the user desktop interface may be provided as a
`Web broWser The application management information may
`include con?gurable user preference information for the
`plurality of application programs and a set of the con?g
`urable user preference information associated With the user
`and the selected one of the plurality of application programs
`may be provided to the client for use in executing the
`instance of the application program. The set of the con?g
`urable user preference information may include both user
`preferences con?gurable by the user and user preferences
`not con?gurable by the user Which are con?gurable by an
`administrator. The user preference information may be
`updated responsive to updates from the user and the admin
`istrator respectively.
`In another embodiment of the present invention, the user
`desktop interface is con?gured at the server responsive to an
`
`

`
`US 6,510,466 B1
`
`5
`identi?er of the user associated With the login request so as
`to provide a con?gured user desktop interface. The con?g
`ured user desktop interface is then provided to the client for
`display. The user desktop may be con?gured not to include
`display regions associated With any of the plurality of
`application programs installed at the server for Which the
`user is not authoriZed.
`In another aspect of the present invention, a license
`availability is determined for the selected one of the plurality
`of application programs for the user. License availability for
`the user desktop application itself may also be determined.
`An unavailability indication is provided to the client respon
`sive to the selection if the license availability indicates that
`a license is not available for the user. The license availability
`may be determined by the one of the application launcher
`programs associated With the selected one of the plurality of
`application programs Which may obtain the license avail
`ability from a license management server. The license man
`agement server may run on the same machine as the on
`demand application server.
`In a further aspect of the present invention, event logging
`information is received at the server from the instance of the
`selected one of the plurality of application programs. The
`server provides the received event logging information to a
`netWork management server associated With the server. In
`addition, event logging information may be provided to the
`user desktop application.
`In yet another aspect of the present invention, methods are
`provided for distribution of application programs to a target
`station on a netWork from a centraliZed netWork manage
`ment server coupled to the netWork. The application pro
`gram to be distributed is provided to the systems (netWork)
`management server and a source directory and a target
`directory for distribution of the application program are
`speci?ed. A ?le packet associated With the application
`program is prepared including a segment con?gured to
`initiate registration operations for the application program at
`the target station. The ?le packet is then distributed to the
`target station or stations. In one embodiment, the netWork
`management server is a TivoliTM server. The segment con
`?gured to initiate registration operations may include an
`import data ?le and a call to an import program eXecuting on
`the target station.
`In one embodiment of the softWare distribution aspect of
`the present invention, the application program is provided as
`a JAVATM applet and is registered based on a Universal
`Resource Locator (URL) address accessible to a broWser
`application. The segment con?gured to initiate registration
`operations includes a variable ?eld into Which the target
`station inserts its identi?cation during registration opera
`tions. The ?le packet may be distributed to a plurality of
`target stations each having an identi?cation Which may be
`inserted into the variable ?eld at the target station.
`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 application programs in a netWork environment
`from a central location While alloWing for user preferences
`to be maintained independent of hardWare location of the
`user along With centraliZed distribution of neW and/or
`updated application programs. This provides for reduced
`costs and increased uniformity in deploying softWare in a
`netWork environment. It further provides an essentially
`hardWare transparent ability for an individual user to inter
`face to an on-demand server supported client station While
`
`5
`
`15
`
`25
`
`35
`
`45
`
`55
`
`65
`
`6
`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
`application program management according to an embodi
`ment of the present invention;
`FIG. 2 is a schematic diagram of an on-demand server
`system according to an embodiment of the present inven
`tion;
`FIG. 3 is a schematic diagram of the on-demand server
`system of FIG. 2 according to an embodiment of the present
`invention;
`FIG. 4 is a ?oWchart illustrating operations for application
`program distribution and eXecution according to an embodi
`ment of the present invention;
`FIG. 5 is a ?oWchart illustrating con?guration operations
`for application program distribution and execution accord
`ing to an embodiment of the present invention;
`FIG. 6 is a ?oWchart illustrating user login operations for
`application program distribution and eXecution according to
`an embodiment of the present invention;
`FIG. 7 is a ?oWchart illustrating application access opera
`tions for application program distribution and execution
`according to an embodiment of the present invention;
`FIG. 8 is a ?oWchart illustrating operations for application
`program distribution and eXecution in a netWork manage
`ment server environment such as a TivoliTM environment
`according to an embodiment of the present invention;
`FIGS. 9A, 9B and 9C are ?oWcharts further illustrating
`operations for application program distribution and execu
`tion according to an embodiment of the present invention;
`and
`FIG. 10 is an illustration of an interface screen used in
`centraliZed softWare deployment according to an embodi
`ment 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 con?gurable 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 ?rst netWork segment 10‘. Client stations 24, 24‘
`
`

`
`US 6,510,466 B1
`
`7
`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
`a variety of different hardWare operating a variety of differ
`ent 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
`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 con?gured to alloW for direct communication
`betWeen server 20 and clients 24, 24‘, 26, 26‘. In addition, a
`single machine may be con?gured to include a client, an
`on-demand server and/or a netWork (system) management
`server.
`As Will be described further herein With reference to the
`?oWcharts, TivoliTM server 20 provides a means for softWare
`distribution and management in computer netWork system
`10. Furthermore, on-demand servers 22, 22‘ each provide an
`application management system for managing con?gurable
`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 con?gured to operate Within
`the eNetWorkTM environment available from International
`Business Machines Corporation (IBM). As Will be further
`discussed herein, the present invention provides

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket