US20080275939A1 - Demand Provisioning of Applications - Google Patents

Demand Provisioning of Applications Download PDF

Info

Publication number
US20080275939A1
US20080275939A1 US10/587,405 US58740508A US2008275939A1 US 20080275939 A1 US20080275939 A1 US 20080275939A1 US 58740508 A US58740508 A US 58740508A US 2008275939 A1 US2008275939 A1 US 2008275939A1
Authority
US
United States
Prior art keywords
application
provisioning
client
application instance
management
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US10/587,405
Inventor
Luc Martin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wrapped Apps Corp
Original Assignee
Wrapped Apps Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from CA 2456799 external-priority patent/CA2456799A1/en
Application filed by Wrapped Apps Corp filed Critical Wrapped Apps Corp
Assigned to WRAPPED APPS CORPORATION reassignment WRAPPED APPS CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MARTIN, LUC
Publication of US20080275939A1 publication Critical patent/US20080275939A1/en
Priority to US12/653,089 priority Critical patent/US20100169491A1/en
Priority to US15/188,416 priority patent/US20160301775A1/en
Priority to US15/274,271 priority patent/US9876731B2/en
Priority to US15/836,843 priority patent/US20180102980A1/en
Priority to US16/219,195 priority patent/US20190288955A1/en
Assigned to MIRAMARE INVESTMENTS INCORPORATED reassignment MIRAMARE INVESTMENTS INCORPORATED COURT ORDER ENFORCING PATENT AGREEMENT Assignors: AOD CORPORATION
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Definitions

  • the present invention generally relates to on demand provisioning of computer software applications to clients, and in particular relates to a system and a method for hosting such applications and providing on demand, access to those applications by clients and their users, thereby eliminating the need for clients to independently purchase, install, integrate and maintain the applications on their own systems.
  • an end user is the person that uses an application's functionality
  • a client is the entity responsible for purchasing, installing, integrating and maintaining the application.
  • Clients are customers of the application developer or distributor, while end users are employees or guests of the clients.
  • users can be divided into two groups, end users, who use the application's functionality, and master users, or super users, who act on behalf of the client to purchase, install, integrate and maintain the application.
  • a master user is equivalent to the system administrator within the client computing environment. In some instances, the master user and the end user may be one and the same.
  • a client's interaction with an application can generally be divided into two distinct categories, first, acquiring the application, and second, making the application's functionality available to its users.
  • these two steps refer to all the activities necessary to make the application run, including purchasing the application, and installing, integrating, testing, securing, optimizing, managing, upgrading, customizing, troubleshooting, and monitoring the application over its life cycle.
  • Resources are required from both the application developer or distributor and the client.
  • the application developer or distributor furnishes support and consulting, while the client provides information technology (“IT”) resources.
  • IT information technology
  • the client is responsible for the hardware requirements, network bandwidth, storage and the associated support for its users.
  • the process repeats when new versions or upgrades of the application are released. A full 70% to 90% of the client's IT budget is spent acquiring, deploying, integrating and maintaining applications.
  • FIG. 1 shows an example of the traditional “shrink wrap” approach to providing an application's functionality to users 26 .
  • a single tenant server-based application is installed as a single application “instance” 20 within a client computing environment 22 .
  • a server-based application refers to an application that is managed at the server level and accessed remotely by users 26 .
  • server-based applications examples include: 1) Web applications developed using web technologies such as JavaTM 2 Platform, Enterprise Edition (J2EE), Microsoft's .NETTM, Web Services and HyperText Markup Language (HTML); 2) Desktop client server applications or desktop personal productivity applications deployed using thin client technologies such as MicrosoftTM WindowsTM Terminal Server or CITRIXTM ICA; and 3) Applications streamed to each user 26 on request using an application such as AppStreamTM, as described in U.S. Pat. No. 6,574,618, issued on Jun. 3, 2003.
  • AppStreamTM an application
  • Provisioning of applications “on demand” refers to providing applications to clients of the application developer or distributor, enabling them to deliver the application's functionality to the user. It is the client that has to deal with all the technical issues associated with the delivery and usage of the application's functionality by the users, such as purchasing, deploying, maintaining, managing and upgrading. Provisioning of applications “on-demand” refers to replacing the current “shrink-wrap” deployment of existing applications with a system that performs all the functions necessary for providing and readying the application for use by the user.
  • FIG. 2 The traditional application service provider (“ASP”) approach to solving this problem is shown in FIG. 2 .
  • single tenant server-based applications are installed as application instances 20 and maintained in a service provider computing environment 52 .
  • Access by users 26 to the applications' functionality is provided online, through a computer communication system 40 by way of an application universal resource identifier (“URI”).
  • Computer communication system 40 may be any data network, such as the Internet, an intranet, extranet or other TCP/IP based communication network, or other types of data networks, including wireless data networks.
  • FIG. 3 One existing approach to solving the problem is shown in FIG. 3 .
  • the ASP provides a sever-based application installed as an instance 20 in a service provider computing environment 52 .
  • access by users 26 to the application's functionality is provided online through a computer communication system 40 by way of an application URI.
  • One advantage of this system is that clients also gain online, on demand access, through the computer communication system 40 , to provisioning and management functions, thereby permitting clients to make online purchase requests and to configure and manage the application.
  • a system for on demand, provisioning of at least one application to at least one client comprising: an online provisioning and management system configured for communication with the at least one client over a computer communication system, the online provisioning and management system configured to create an application instance of the at least one application in response to a rental request from the at least one client over the communication system, the application instance being a separate, stand-alone installation of the at least one application, the application instance being dedicated to the at least one client, the online provisioning and management system configured to allow access to the application instance by users of the at least one client over the computer communication system, thereby permitting the users to use the application instance, the online provisioning and management system configured to provide the at least one client with access to provisioning and management functions over the computer communication system for allowing the at least one client to rent, manage and maintain the application instance on demand.
  • a method for on demand provisioning of at least one application to at least one client comprising the steps of: providing an online provisioning and management system configured for communication with the at least one client over a computer communication system and for providing provisioning and management functions; receiving a rental request for the at least one application from the at least one client over the computer communication system; causing the online provisioning and management system to create an application instance of the at least one application in response to the rental request, the application instance being a separate, stand-alone installation of the at least one application, the application instance being dedicated to the at least one client; allowing access to the application instance by users of the at least one client over the computer communication system, thereby permitting the users to use the application instance; and allowing access by the at least one client to the provisioning and management functions over the computer communication system, the provisioning and management function comprising features to allow the at least one client to rent, manage, and maintain the application instance on demand.
  • One advantage of the applicant's system and method for on demand provisioning of applications over the existing on demand approach is that, in one aspect, the applicant's system works with existing off-the-shelf, server-based software applications that have been developed with a single tenant approach. Such applications do not have to be modified or customized to work with the applicant's system.
  • Another advantage of a further aspect of the applicant's system is that multiple applications can be offered through the same web portal, since there is no need to integrate the application's functionality with the provisioning and management functions.
  • One advantage of one aspect of the applicant's system and method as described herein over the traditional ASP approach is that the complexities of delivering applications as a service are hidden through the application of technology automation, since the applicant's system replaces all steps required in the delivery and management of applications which are currently performed manually.
  • FIG. 1 is a schematic diagram showing the existing traditional “shrink wrap” approach to providing server-based software applications in a client computing environment.
  • FIG. 2 is a schematic diagram showing the traditional application service provider approach to providing applications to clients in a service provider computing environment over an online computer communication system.
  • FIG. 3 is a schematic diagram showing one existing approach to on demand provisioning of software applications to clients in a service provider computing environment over an online computer communication system.
  • FIG. 4 is a schematic diagram of the applicant's system for on demand provisioning of applications to clients in a service provider computing environment over an online computer communication system.
  • FIG. 5 is a flow chart showing the steps for one of the applicant's methods for on demand provisioning of applications to clients.
  • a system 10 for on demand provisioning of software applications to clients is shown in schematic form, including an online provisioning and management system 24 for maintaining, provisioning and managing applications and application instances 20 in a service provider computing environment 52 .
  • Online provisioning and management system 24 also provides an online interface with clients (represented by “master users”) and end users 26 operating in a client computing environment 22 , via an online computer communication system 40 , such as the Internet, an intranet, extranet or other TCP/IP based communication network, or other types of data networks, including wireless data networks.
  • This online interface provides end users 26 access to functionalities of application instances 20 and gives clients access to provisioning and management functions offered by online provisioning and management system 24 .
  • Provisioning and management functions of online provisioning and management system 24 relate to all the features necessary to allow clients to purchase, manage, and maintain application instances 20 , on demand.
  • the service provider computing environment 52 can be operated by any entity, such as telecommunication companies, hosting companies, application service providers, system integrators and outsourcers, to name a few, wanting to provision applications on demand to clients.
  • service provider computing environment 52 may be operated by a company wanting to provision applications to its departments and branches (clients) for use by its employees (users).
  • the online provisioning and management system 24 is installed in service provider computing environment 52 and maintains and manages all applications and application instances 20 , making them available for use by clients and their corresponding users 26 .
  • the applications can be any existing, off-the-shelf, server-based software applications that have been developed with a single tenant approach, and need not have been developed from the ground up with the intent of being provisioned “on demand” or being used in a multi-tenant environment.
  • application instances 20 are shown to be located in the service provider computing environment 52 , which may be comprised of local and remote servers, provided there is maintained a suitable connection between the servers and the online provisioning and management system 24 .
  • Clients access client provisioning and management functions offered by online provisioning and management system 24 online through the computer communication system 40 via a unique provisioning and management URI.
  • Online provisioning and management system 24 can display to the client all available applications and all information related to the on demand provisioning and management of application instances 20 .
  • Online provisioning and management system 24 can be configured to set up client accounts containing all the client's personal information and to permit modification of that information by the clients.
  • Online provisioning and management system 24 may support e-commerce transactions and may be customized and branded in accordance with each service provider computing environment 52 in which it is deployed.
  • Online provisioning and management system 24 receives and acts on client requests through computer communication system 40 and provides information and feedback to the client through the same system.
  • Client requests may relate to any provisioning and management function provided by online provisioning and management system 24 and may include, but are not limited to application purchase and subscription requests, subscription modification request, live application demonstration requests, trial subscription requests, application access requests, configuration requests, modification requests, upgrade requests, subscription renewal requests, copy requests, backup requests, suspension requests, termination requests, requests for usage statistics, and security requests.
  • online provisioning and management system 24 Upon receipt of a client application subscription request for an application, online provisioning and management system 24 creates and installs a separate application instance 20 of the desired application for use by the requesting client only. This may be accomplished automatically upon receipt of a request, or it may be initiated manually.
  • Application instance 20 is a separate, stand-alone installation of the desired application that is stored and maintained in the service provider computing environment 52 .
  • Application instance 20 may be installed on a local or remote server, which is part of the service provider computing environment, provided there is maintained a suitable connection between the server and the online provisioning and management system 24 .
  • the remote server could be a shared portion of the client computing environment 22 . In all cases, application instance 20 is dedicated to the client and is made available for the exclusive use of the users 26 of the requesting client.
  • the client is supplied with a unique application URI or path that can be distributed to end users 26 , giving them immediate, direct and seamless access to application instance 20 . If a second client requests a subscription to the same application, a second identical application instance 20 is created and installed by online provisioning and management system 24 for use by the users 26 of the second client. These steps are repeated for each subsequent client and each desired application.
  • Each application instance 20 is provided with client-modifiable features that can be configured by the requesting client via the online provisioning and management system 24 .
  • application instance 20 may include security features that make it accessible only by the particular requesting client and its corresponding users 26 .
  • Application instance 20 may also include branding features that can be configured and modified by the client through the online provisioning and management system 24 .
  • provisioning and management system 24 In addition to providing clients with the ability to purchase subscriptions to applications, on demand, the following provisioning and management functions are provided by online provisioning and management system 24 and are accessible through the computer communication system 40 by each potential client seeking to purchase subscriptions to application: (1) standard e-commerce features; (2) online live demonstrations of applications; and (3) online, time-limited trials of applications before the decision is made to subscribe.
  • Online provisioning and management system 24 may also monitor and control access to application instances 20 by clients and their corresponding users 26 , and removes the application instances 20 when requested to do so by clients or when the subscription terms expire.
  • the following additional provisioning and management functions are provided by online provisioning and management system 24 and are made available to clients through the online computer communication system 40 , following the purchased of a subscription: (1) seamless access to the respective application instances 20 using unique application URIs or paths supplied to each client and generally made available by the clients to their corresponding users 26 ; (2) the ability to upgrade and/or renew subscription terms for the application instances 20 ; (3) the ability to save or restore backup copies of the application instances 20 to a local storage device to permit reconstruction of the application instances 20 , if required; (4) the ability to set and change client configuration data associated with the application instances 20 ; (5) the ability to rename or change the path or URI used to access the application instances 20 ; (6) the ability to suspend or resume user 26 access to the application instances 20 ; (7) the ability to review resource consumption by the application instances 20
  • provisioning and management functions are normally accessible only through a provisioning and management URI by an authorized system administrator or “master user” of the client 22 who is given special status through a userid and/or password access system.
  • the provisioning and management URI may be different from the application URI mentioned above.
  • Online provisioning and management system 24 may be configured to limit access to application instances 20 , for example, to a maximum number of user hits or a maximum number of concurrent users 26 .
  • online provisioning and management system 24 provides for upgrading of applications and the subsequent upgrading of each corresponding application instance 20 .
  • Online provisioning and management system 24 may be configured to upgrade application instances 20 only on receipt of a specific upgrade request from the corresponding client.
  • online provisioning and management system 24 may support e-commerce transaction processing through the computer communication system 40 , can handle multiple requests from multiple clients, and can deploy multiple application instances 20 of multiple applications.
  • Application instances 20 are installed copies of the requested applications, as modified by each client either at the time of purchase or at any time during the life cycle, as allowed and provided by the online provisioning and management system 24 , and are stored and maintained in the service provider computing environment 52 , and dedicated to each respective client.
  • FIG. 5 is a flow chart showing the steps involved in one basic method of the applicant's on demand provisioning of applications.
  • the method includes providing online provisioning and management system 24 (step 100 ) installed in service provider computing environment 52 and configured for communication with clients over computer communication system 40 and for allowing the clients access to provisioning and management functions provided of the online provisioning and management system 24 , receiving a rental request for an application from a client (step 102 ), causing the online provisioning and management system 24 to create and install an application instance 20 of the desired application in response to the rental request (step 104 ), the application instance 20 being a separate, stand-alone, installation of the requested application, dedicated to the requesting client, allowing access to the installed application instance 20 by the client's users 26 (step 106 ), thereby permitting the client's users 26 to use application instance 20 , and allowing access by the client (generally a “master-user” representing the client) to the provisioning and management functions of the online provisioning and management system 24 (step 108 ).
  • provisioning provision

Abstract

A system and method for on demand provisioning of applications to clients, the system providing on demand access to applications by clients and their users over a computer communication system such as the Internet, thereby eliminating the need for clients to independently purchase, install, integrate and maintain the applications on their own systems. The system and method designed to create and install a separate, stand alone, dedicated copy or instance of the applications for each new client and to provide the clients with on demand access to provisioning and management functions allowing the clients to purchase, manage and maintain the applications on demand.

Description

    FIELD
  • The present invention generally relates to on demand provisioning of computer software applications to clients, and in particular relates to a system and a method for hosting such applications and providing on demand, access to those applications by clients and their users, thereby eliminating the need for clients to independently purchase, install, integrate and maintain the applications on their own systems.
  • BACKGROUND
  • In the present description, an end user is the person that uses an application's functionality, while a client is the entity responsible for purchasing, installing, integrating and maintaining the application. Clients are customers of the application developer or distributor, while end users are employees or guests of the clients. In general, users can be divided into two groups, end users, who use the application's functionality, and master users, or super users, who act on behalf of the client to purchase, install, integrate and maintain the application. A master user is equivalent to the system administrator within the client computing environment. In some instances, the master user and the end user may be one and the same.
  • A client's interaction with an application can generally be divided into two distinct categories, first, acquiring the application, and second, making the application's functionality available to its users.
  • When combined, these two steps refer to all the activities necessary to make the application run, including purchasing the application, and installing, integrating, testing, securing, optimizing, managing, upgrading, customizing, troubleshooting, and monitoring the application over its life cycle. Resources are required from both the application developer or distributor and the client. The application developer or distributor furnishes support and consulting, while the client provides information technology (“IT”) resources. The client is responsible for the hardware requirements, network bandwidth, storage and the associated support for its users. The process repeats when new versions or upgrades of the application are released. A full 70% to 90% of the client's IT budget is spent acquiring, deploying, integrating and maintaining applications.
  • FIG. 1 shows an example of the traditional “shrink wrap” approach to providing an application's functionality to users 26. In this traditional approach, a single tenant server-based application is installed as a single application “instance” 20 within a client computing environment 22. A server-based application refers to an application that is managed at the server level and accessed remotely by users 26. Examples of server-based applications include: 1) Web applications developed using web technologies such as Java™ 2 Platform, Enterprise Edition (J2EE), Microsoft's .NET™, Web Services and HyperText Markup Language (HTML); 2) Desktop client server applications or desktop personal productivity applications deployed using thin client technologies such as Microsoft™ Windows™ Terminal Server or CITRIX™ ICA; and 3) Applications streamed to each user 26 on request using an application such as AppStream™, as described in U.S. Pat. No. 6,574,618, issued on Jun. 3, 2003. In this traditional approach, applications must be purchased, installed, integrated, tested and maintained by the client. Some support and consulting may be offered by the application developer or distributor, but it is the client who is responsible for ensuring access to the application's functionality by its users 26. The disadvantage of this traditional approach is that each time new software is needed or application upgrades made available, the whole process must be repeated, which can eat up a lot of client resources. Moreover, the development and maintenance of IT infrastructure, including software applications, is not generally the core expertise of the client.
  • Of course, the ultimate goal of all clients is to provide the application's functionality to the client's users and guests. Therefore, it would be advantageous if a system could be provided that reduced or eliminated the complexity and cost associated with the acquisition, deployment and maintenance of computer applications, so as to provide the client and its users with the easiest and most expeditious possible access to the application's functionality at the lowest possible cost. Such a system would allow clients and their corresponding users to extract the application's functionality “on demand”, without having to deal with all the other tasks required to deploy, integrate and maintain the application.
  • Provisioning of applications “on demand” refers to providing applications to clients of the application developer or distributor, enabling them to deliver the application's functionality to the user. It is the client that has to deal with all the technical issues associated with the delivery and usage of the application's functionality by the users, such as purchasing, deploying, maintaining, managing and upgrading. Provisioning of applications “on-demand” refers to replacing the current “shrink-wrap” deployment of existing applications with a system that performs all the functions necessary for providing and readying the application for use by the user.
  • The traditional application service provider (“ASP”) approach to solving this problem is shown in FIG. 2. In this approach, single tenant server-based applications are installed as application instances 20 and maintained in a service provider computing environment 52. Access by users 26 to the applications' functionality is provided online, through a computer communication system 40 by way of an application universal resource identifier (“URI”). Computer communication system 40, may be any data network, such as the Internet, an intranet, extranet or other TCP/IP based communication network, or other types of data networks, including wireless data networks.
  • One advantage of this solution is that applications need no longer be installed and maintained by the client in the client computing environment. Instead, they are installed and maintained in the service provider computing environment 52, thus saving the client considerable time and IT resources.
  • One problem with this traditional ASP approach is that for it to function properly, each new client requires a separate installation or “instance” 20 of the application to be installed within the service provider computing environment 52, however, there is no mechanism in place to create and manage this new installation, it must be done manually for each new client. Also, in this traditional approach there is no convenient means for the client to purchase, configure or manage the applications except through traditional methods such as contacting the service provider by telephone or email. In the traditional service provider approach, the applications are not “on demand”. This results in higher costs for providing and managing applications since all provisioning and management functions must be performed manually. The time required to deploy applications is also increased. Moreover, due to the multiple points of contact between the client and the ASP, and the complex nature of the interaction, there is a significant opportunity for human error, which produces less consistent and less reliable results.
  • One existing approach to solving the problem is shown in FIG. 3. In this solution, the ASP provides a sever-based application installed as an instance 20 in a service provider computing environment 52. As before, access by users 26 to the application's functionality is provided online through a computer communication system 40 by way of an application URI. One advantage of this system is that clients also gain online, on demand access, through the computer communication system 40, to provisioning and management functions, thereby permitting clients to make online purchase requests and to configure and manage the application. One problem with this approach is that for the application to be usable by multiple clients, each having multiple users 26, the application must be developed from the ground up with a “multi-tenant” approach in mind, or existing single-tenant applications must be customized, a costly, time consuming and risky process. Therefore, the system cannot be used for on demand provisioning of most existing off-the-shelf applications to clients. Although each client and its users 26 appear to get access to a customized version of the application, in reality, they are all accessing the same application instance 20, with only the client's personal data being stored separately. No separate application instance 20 is created and installed for each client. Typically, only a single multi-tenant application is offered through a web portal dedicated to provisioning and managing that application's functionality. Functionalities of the application are closely coupled to the provisioning and management functions of the web portal, which makes the application more difficult to develop, manage and maintain. The system is not easily adapted to offering multiple applications through the same web portal.
  • SUMMARY
  • In view of the foregoing, there is a need, to provide a system and method for on demand, provisioning of software applications to clients based on a system of application provisioning that creates a new installed instance of an application for each new client and provides the client with a convenient “self service” means to rent or subscribe to, configure and manage the application over time.
  • According to one aspect of the present system, there is provided, a system for on demand, provisioning of at least one application to at least one client, the system comprising: an online provisioning and management system configured for communication with the at least one client over a computer communication system, the online provisioning and management system configured to create an application instance of the at least one application in response to a rental request from the at least one client over the communication system, the application instance being a separate, stand-alone installation of the at least one application, the application instance being dedicated to the at least one client, the online provisioning and management system configured to allow access to the application instance by users of the at least one client over the computer communication system, thereby permitting the users to use the application instance, the online provisioning and management system configured to provide the at least one client with access to provisioning and management functions over the computer communication system for allowing the at least one client to rent, manage and maintain the application instance on demand.
  • According to another aspect, there is provided a method for on demand provisioning of at least one application to at least one client, the method comprising the steps of: providing an online provisioning and management system configured for communication with the at least one client over a computer communication system and for providing provisioning and management functions; receiving a rental request for the at least one application from the at least one client over the computer communication system; causing the online provisioning and management system to create an application instance of the at least one application in response to the rental request, the application instance being a separate, stand-alone installation of the at least one application, the application instance being dedicated to the at least one client; allowing access to the application instance by users of the at least one client over the computer communication system, thereby permitting the users to use the application instance; and allowing access by the at least one client to the provisioning and management functions over the computer communication system, the provisioning and management function comprising features to allow the at least one client to rent, manage, and maintain the application instance on demand.
  • One advantage of the applicant's system and method for on demand provisioning of applications over the existing on demand approach (see FIG. 3) is that, in one aspect, the applicant's system works with existing off-the-shelf, server-based software applications that have been developed with a single tenant approach. Such applications do not have to be modified or customized to work with the applicant's system. Another advantage of a further aspect of the applicant's system is that multiple applications can be offered through the same web portal, since there is no need to integrate the application's functionality with the provisioning and management functions.
  • One advantage of one aspect of the applicant's system and method as described herein over the traditional ASP approach (see FIG. 2), is that the complexities of delivering applications as a service are hidden through the application of technology automation, since the applicant's system replaces all steps required in the delivery and management of applications which are currently performed manually.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The applicant's on demand provisioning of applications will be further understood from the following description of preferred embodiments with reference to the drawings in which:
  • FIG. 1 is a schematic diagram showing the existing traditional “shrink wrap” approach to providing server-based software applications in a client computing environment.
  • FIG. 2 is a schematic diagram showing the traditional application service provider approach to providing applications to clients in a service provider computing environment over an online computer communication system.
  • FIG. 3 is a schematic diagram showing one existing approach to on demand provisioning of software applications to clients in a service provider computing environment over an online computer communication system.
  • FIG. 4 is a schematic diagram of the applicant's system for on demand provisioning of applications to clients in a service provider computing environment over an online computer communication system.
  • FIG. 5 is a flow chart showing the steps for one of the applicant's methods for on demand provisioning of applications to clients.
  • DETAILED DESCRIPTION
  • Referring to FIG. 4, a system 10 for on demand provisioning of software applications to clients is shown in schematic form, including an online provisioning and management system 24 for maintaining, provisioning and managing applications and application instances 20 in a service provider computing environment 52. Online provisioning and management system 24 also provides an online interface with clients (represented by “master users”) and end users 26 operating in a client computing environment 22, via an online computer communication system 40, such as the Internet, an intranet, extranet or other TCP/IP based communication network, or other types of data networks, including wireless data networks. This online interface provides end users 26 access to functionalities of application instances 20 and gives clients access to provisioning and management functions offered by online provisioning and management system 24. Provisioning and management functions of online provisioning and management system 24 relate to all the features necessary to allow clients to purchase, manage, and maintain application instances 20, on demand.
  • The service provider computing environment 52 can be operated by any entity, such as telecommunication companies, hosting companies, application service providers, system integrators and outsourcers, to name a few, wanting to provision applications on demand to clients. In a closed enterprise environment, service provider computing environment 52 may be operated by a company wanting to provision applications to its departments and branches (clients) for use by its employees (users).
  • The online provisioning and management system 24 is installed in service provider computing environment 52 and maintains and manages all applications and application instances 20, making them available for use by clients and their corresponding users 26. In general, the applications can be any existing, off-the-shelf, server-based software applications that have been developed with a single tenant approach, and need not have been developed from the ground up with the intent of being provisioned “on demand” or being used in a multi-tenant environment. In FIG. 4, application instances 20 are shown to be located in the service provider computing environment 52, which may be comprised of local and remote servers, provided there is maintained a suitable connection between the servers and the online provisioning and management system 24.
  • Clients access client provisioning and management functions offered by online provisioning and management system 24 online through the computer communication system 40 via a unique provisioning and management URI. Online provisioning and management system 24 can display to the client all available applications and all information related to the on demand provisioning and management of application instances 20. Online provisioning and management system 24 can be configured to set up client accounts containing all the client's personal information and to permit modification of that information by the clients. Online provisioning and management system 24 may support e-commerce transactions and may be customized and branded in accordance with each service provider computing environment 52 in which it is deployed.
  • Online provisioning and management system 24 receives and acts on client requests through computer communication system 40 and provides information and feedback to the client through the same system. Client requests may relate to any provisioning and management function provided by online provisioning and management system 24 and may include, but are not limited to application purchase and subscription requests, subscription modification request, live application demonstration requests, trial subscription requests, application access requests, configuration requests, modification requests, upgrade requests, subscription renewal requests, copy requests, backup requests, suspension requests, termination requests, requests for usage statistics, and security requests.
  • Upon receipt of a client application subscription request for an application, online provisioning and management system 24 creates and installs a separate application instance 20 of the desired application for use by the requesting client only. This may be accomplished automatically upon receipt of a request, or it may be initiated manually. Application instance 20 is a separate, stand-alone installation of the desired application that is stored and maintained in the service provider computing environment 52. Application instance 20 may be installed on a local or remote server, which is part of the service provider computing environment, provided there is maintained a suitable connection between the server and the online provisioning and management system 24. For example, the remote server could be a shared portion of the client computing environment 22. In all cases, application instance 20 is dedicated to the client and is made available for the exclusive use of the users 26 of the requesting client. The client is supplied with a unique application URI or path that can be distributed to end users 26, giving them immediate, direct and seamless access to application instance 20. If a second client requests a subscription to the same application, a second identical application instance 20 is created and installed by online provisioning and management system 24 for use by the users 26 of the second client. These steps are repeated for each subsequent client and each desired application.
  • Each application instance 20 is provided with client-modifiable features that can be configured by the requesting client via the online provisioning and management system 24. For example, application instance 20 may include security features that make it accessible only by the particular requesting client and its corresponding users 26. Application instance 20 may also include branding features that can be configured and modified by the client through the online provisioning and management system 24.
  • In addition to providing clients with the ability to purchase subscriptions to applications, on demand, the following provisioning and management functions are provided by online provisioning and management system 24 and are accessible through the computer communication system 40 by each potential client seeking to purchase subscriptions to application: (1) standard e-commerce features; (2) online live demonstrations of applications; and (3) online, time-limited trials of applications before the decision is made to subscribe.
  • Online provisioning and management system 24 may also monitor and control access to application instances 20 by clients and their corresponding users 26, and removes the application instances 20 when requested to do so by clients or when the subscription terms expire. The following additional provisioning and management functions are provided by online provisioning and management system 24 and are made available to clients through the online computer communication system 40, following the purchased of a subscription: (1) seamless access to the respective application instances 20 using unique application URIs or paths supplied to each client and generally made available by the clients to their corresponding users 26; (2) the ability to upgrade and/or renew subscription terms for the application instances 20; (3) the ability to save or restore backup copies of the application instances 20 to a local storage device to permit reconstruction of the application instances 20, if required; (4) the ability to set and change client configuration data associated with the application instances 20; (5) the ability to rename or change the path or URI used to access the application instances 20; (6) the ability to suspend or resume user 26 access to the application instances 20; (7) the ability to review resource consumption by the application instances 20, including usage of storage space, bandwidth and CPU time; (8) the ability to review accesses to the application instance 20 by users 26, including current users, named users, and number of hits, etc.; and (9) the ability to upgrade or downgrade application instances 20 to a newer or older code version, respectively. Except for user access to the application instances 20, these provisioning and management functions are normally accessible only through a provisioning and management URI by an authorized system administrator or “master user” of the client 22 who is given special status through a userid and/or password access system. The provisioning and management URI may be different from the application URI mentioned above.
  • Online provisioning and management system 24 may be configured to limit access to application instances 20, for example, to a maximum number of user hits or a maximum number of concurrent users 26.
  • As noted above, online provisioning and management system 24 provides for upgrading of applications and the subsequent upgrading of each corresponding application instance 20. Online provisioning and management system 24 may be configured to upgrade application instances 20 only on receipt of a specific upgrade request from the corresponding client.
  • As noted above, online provisioning and management system 24 may support e-commerce transaction processing through the computer communication system 40, can handle multiple requests from multiple clients, and can deploy multiple application instances 20 of multiple applications.
  • The applicant's herein-described system for on demand provisioning of applications to clients provides clients and their corresponding users 26 with seamless access to application, without the burden of intrusive infrastructure and software requirements, or the added IT expenses associated with manually deploying and maintaining the application instances 20 in a local client computing environment. Application instances 20 are installed copies of the requested applications, as modified by each client either at the time of purchase or at any time during the life cycle, as allowed and provided by the online provisioning and management system 24, and are stored and maintained in the service provider computing environment 52, and dedicated to each respective client.
  • FIG. 5, is a flow chart showing the steps involved in one basic method of the applicant's on demand provisioning of applications. The method includes providing online provisioning and management system 24 (step 100) installed in service provider computing environment 52 and configured for communication with clients over computer communication system 40 and for allowing the clients access to provisioning and management functions provided of the online provisioning and management system 24, receiving a rental request for an application from a client (step 102), causing the online provisioning and management system 24 to create and install an application instance 20 of the desired application in response to the rental request (step 104), the application instance 20 being a separate, stand-alone, installation of the requested application, dedicated to the requesting client, allowing access to the installed application instance 20 by the client's users 26 (step 106), thereby permitting the client's users 26 to use application instance 20, and allowing access by the client (generally a “master-user” representing the client) to the provisioning and management functions of the online provisioning and management system 24 (step 108). As noted above, provisioning and management functions provided by online provisioning and management system 24 include features to allow the client to rent, manage and maintain the application instance 20.
  • All of the features of the applicant's above-described system and method for on demand, provisioning of applications to clients can be developed and implemented using existing standard technologies and programming languages, including existing web services, Extensible Markup Language (XML), Simple Object Access Protocol (SOAP), Hypertext Transfer Protocol (HTTP), relational databases, and application servers. Those skilled in the art, having reviewed and studied the applicant's above descriptions, will readily understand how to develop and implement the above-described system and method.
  • It will also be understood by those skilled in the art that the applicant's above described system and method is applicable to on demand, online provisioning of applications by service providers to clients and their users 26 in a commercial environment over a global computer communication network such as the Internet, or other network, and is equally applicable in an enterprise environment where a company's data center (equivalent to the application service provider) deploys applications to departments and branches (equivalent to clients) for use by individual employees (equivalent to users 26), over an internal, closed local area network environment or an extranet.
  • The above described system and method for on demand provisioning of applications to clients may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. The present embodiments are therefore to be considered as illustrative and not restrictive, the scope of the applicant's system and method for on demand provisioning of applications to clients being indicated by the appended claims rather than by the foregoing description, and all changes that come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein.

Claims (16)

1 .A system for on demand, provisioning of at least one application to at least one client, said system comprising:
an online provisioning and management system configured for communication with the at least one client over a computer communication system,
said online provisioning and management system configured to create an application instance of the at least one application in response to a rental request from the at least one client over said communication system,
said application instance being a separate, stand-alone installation of the at least one application,
said application instance being dedicated to the at least one client, said online provisioning and management system configured to allow access to said application instance by users of the at least one client over said computer communication system, thereby permitting the users to use said application instance,
said online provisioning and management system configured to provide the at least one client with access to provisioning and management functions over said computer communication system for allowing the at least one client to rent, manage and maintain said application instance on demand.
2. The system of claim 1, wherein said online provisioning and management system is an application installed in an application service provider computing environment that is remote from the at least one client.
3. The system of claim 1, wherein access to said application instance by said users is provided by an application URI and access to said provisioning and management functions is provided by a provisioning and management URI, wherein said application URI and said provisioning and management URI are not identical.
4. The system of claim 1, wherein the at least one application is any off-the-shelf, server-based software application.
5. The system of claim 1, wherein said provisioning and management functions include the ability for the at least one client to save and restore a backup copy of said application instance to a local storage device to allow reconstruction of said application instance.
6. The system of claim 1, wherein said provisioning and management functions include the ability for the at least one client to set and change client configuration data relating to said application instance.
7. The system of claim 1, wherein said provisioning and management functions include the ability for the at least one client to upgrade said application instance to a newer code version of said application instance, or downgrade said application instance to an older code version of said application instance.
8. The system of claim 1, wherein said provisioning and management functions include the ability to provide the at least one client with online demonstrations of the at least one application.
9. A method for on demand provisioning of at least one application to at least one client, said method comprising the steps of:
providing an online provisioning and management system configured for communication with the at least one client over a computer communication system and for providing provisioning and management functions;
receiving a rental request for the at least one application from the at least one client over said computer communication system;
causing said online provisioning and management system to create an application instance of the at least one application in response to said rental request, said application instance being a separate, stand-alone installation of the at least one application, said application instance being dedicated to the at least one client;
allowing access to said application instance by users of said at least one client over said computer communication system, thereby permitting said users to use said application instance; and
allowing access by the at least one client to said provisioning and management functions over said computer communication system, said provisioning and management function comprising features to allow the at least one client to rent, manage, and maintain said application instance on demand.
10. The method of claim 9, wherein said online provisioning and management system is an application installed in an application service provider computing environment that is remote from the at least one client.
11. The method of claim 9, wherein access to said application instance by said users is provided by an application URI and access to said provisioning and management functions is provided by a provisioning and management URI, wherein said application URI and said provisioning and management URI are not identical.
12. The method of claim 9, wherein the at least one application is any off-the-shelf, server-based software application.
13. The method of claim 9, wherein said provisioning and management functions include the ability for the at least one client to save and restore a backup copy of said application instance to a local storage device to allow reconstruction of said application instance.
14. The method of claim 9, wherein said provisioning and management functions include the ability for the at least one client to set and change client configuration data relating to said application instance.
15. The method of claim 9, wherein said provisioning and management functions include the ability for the at least one client to upgrade said application instance to a newer code version of said application instance, or downgrade said application instance to an older code version of said application instance.
16. The method of claim 9, wherein said provisioning and management functions include the ability to provide the at least one client with online demonstrations of the at least one application.
US10/587,405 2004-01-27 2005-01-27 Demand Provisioning of Applications Abandoned US20080275939A1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US12/653,089 US20100169491A1 (en) 2004-01-27 2009-12-08 On demand provisioning of applications
US15/188,416 US20160301775A1 (en) 2004-01-27 2016-06-21 On demand provisioning of applications
US15/274,271 US9876731B2 (en) 2004-01-27 2016-09-23 On demand provisioning of applications
US15/836,843 US20180102980A1 (en) 2004-01-27 2017-12-09 On demand provisioning of applications
US16/219,195 US20190288955A1 (en) 2004-01-27 2018-12-13 On demand provisioning of applications

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CA 2456799 CA2456799A1 (en) 2004-01-27 2004-01-27 On demand provisioning of web applications
CA2456799 2004-01-27
CA002463006A CA2463006A1 (en) 2004-01-27 2004-04-01 On demand provisioning of web applications
CA2463006 2004-04-01
PCT/CA2005/000094 WO2005071886A1 (en) 2004-01-27 2005-01-27 On demand provisioning of applications

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
PCT/CA2005/000094 A-371-Of-International WO2005071886A1 (en) 2004-01-27 2005-01-27 On demand provisioning of applications

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/653,089 Continuation US20100169491A1 (en) 2004-01-27 2009-12-08 On demand provisioning of applications

Publications (1)

Publication Number Publication Date
US20080275939A1 true US20080275939A1 (en) 2008-11-06

Family

ID=34808912

Family Applications (6)

Application Number Title Priority Date Filing Date
US10/587,405 Abandoned US20080275939A1 (en) 2004-01-27 2005-01-27 Demand Provisioning of Applications
US12/653,089 Abandoned US20100169491A1 (en) 2004-01-27 2009-12-08 On demand provisioning of applications
US15/188,416 Abandoned US20160301775A1 (en) 2004-01-27 2016-06-21 On demand provisioning of applications
US15/274,271 Active US9876731B2 (en) 2004-01-27 2016-09-23 On demand provisioning of applications
US15/836,843 Abandoned US20180102980A1 (en) 2004-01-27 2017-12-09 On demand provisioning of applications
US16/219,195 Abandoned US20190288955A1 (en) 2004-01-27 2018-12-13 On demand provisioning of applications

Family Applications After (5)

Application Number Title Priority Date Filing Date
US12/653,089 Abandoned US20100169491A1 (en) 2004-01-27 2009-12-08 On demand provisioning of applications
US15/188,416 Abandoned US20160301775A1 (en) 2004-01-27 2016-06-21 On demand provisioning of applications
US15/274,271 Active US9876731B2 (en) 2004-01-27 2016-09-23 On demand provisioning of applications
US15/836,843 Abandoned US20180102980A1 (en) 2004-01-27 2017-12-09 On demand provisioning of applications
US16/219,195 Abandoned US20190288955A1 (en) 2004-01-27 2018-12-13 On demand provisioning of applications

Country Status (4)

Country Link
US (6) US20080275939A1 (en)
EP (1) EP1709765A1 (en)
CA (2) CA2463006A1 (en)
WO (1) WO2005071886A1 (en)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070032888A1 (en) * 2005-08-03 2007-02-08 Canon Kabushiki Kaisha Control apparatus, communication device, and communication method
US20120260246A1 (en) * 2011-04-06 2012-10-11 International Business Machines Corporation Software application installation
US20120311564A1 (en) * 2007-11-03 2012-12-06 Khalid Atm Shafiqul System and method to support subscription based Infrastructure and software as a service
US20130103641A1 (en) * 2011-10-21 2013-04-25 Salesforce.Com, Inc. Monitoring entitlement usage in an on-demand system
US20130125011A1 (en) * 2011-11-16 2013-05-16 Microsoft Corporation Enabling service features within productivity applications
US20130159453A1 (en) * 2011-12-14 2013-06-20 Michael McLean Pre-Provisioned Web Application Platform Site Collections
US20140173553A1 (en) * 2012-12-19 2014-06-19 Salesforce.Com, Inc. System, method and computer program product for creating an application within a system
WO2014191389A1 (en) 2013-05-29 2014-12-04 Lamberti Spa Shale inhibitors
US20150288702A1 (en) * 2014-04-07 2015-10-08 The Toronto-Dominion Bank Systems and methods for providing information-technology assets in an open environment
US9455876B1 (en) * 2013-02-01 2016-09-27 Ingram Micro Inc. Method and standard for integrating applications into a cloud
US9483258B1 (en) * 2011-04-27 2016-11-01 Intuit Inc Multi-site provisioning of resources to software offerings using infrastructure slices
US9928469B1 (en) 2012-10-02 2018-03-27 Amazon Technologies, Inc. Techniques for administrating finite life instances
US10153941B2 (en) * 2016-05-17 2018-12-11 Microsoft Technology Licensing, Llc Distributed operational control in computing systems
US10171287B2 (en) * 2012-04-18 2019-01-01 International Business Machines Corporation Multi-user analytical system and corresponding device and method
US10235676B2 (en) 2015-05-12 2019-03-19 The Toronto-Dominion Bank Systems and methods for accessing computational resources in an open environment
US20190238632A1 (en) * 2011-01-03 2019-08-01 Atlassian, Inc. Wireless network cloud computing resource management
US10635997B1 (en) * 2012-06-15 2020-04-28 Amazon Technologies, Inc. Finite life instances
US10649767B2 (en) * 2015-12-29 2020-05-12 Tata Consultancy Services Limited System and method for creating an integrated digital platform
US11044339B2 (en) 2017-04-25 2021-06-22 Microsoft Technology Licensing, Llc Asynchronous service provisioning in computing systems
US11093237B2 (en) * 2016-11-28 2021-08-17 Microsoft Technology Licensing, Llc. Build isolation system in a multi-system environment

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8000260B2 (en) 2006-06-19 2011-08-16 International Business Machines Corporation Method for dynamic information technology infrastructure provisioning
US20080295110A1 (en) * 2007-05-23 2008-11-27 Fabrizio Muscarella Framework for Startup of Local Instance of Remote Application
US8276193B2 (en) * 2008-10-02 2012-09-25 International Business Machines Corporation System for online compromise tool
US8793348B2 (en) * 2009-09-18 2014-07-29 Group Business Software Ag Process for installing software application and platform operating system
US20130067345A1 (en) * 2011-09-14 2013-03-14 Microsoft Corporation Automated Desktop Services Provisioning
US10774431B2 (en) * 2014-10-21 2020-09-15 Dioxide Materials, Inc. Ion-conducting membranes
US10069680B1 (en) 2015-03-16 2018-09-04 Amazon Technologies, Inc. Dedicated virtual computing system servers
US10467241B2 (en) 2017-03-24 2019-11-05 Ca, Inc. Dynamically provisioning instances of a single-tenant application for multi-tenant use
US10860336B2 (en) * 2017-10-27 2020-12-08 Google Llc Managing multi-single-tenant SaaS services

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6151643A (en) * 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
US20040107125A1 (en) * 1999-05-27 2004-06-03 Accenture Llp Business alliance identification in a web architecture
US6816882B1 (en) * 2000-05-31 2004-11-09 International Business Machines Corporation System and method for automatically negotiating license agreements and installing arbitrary user-specified applications on application service providers

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6574618B2 (en) 1998-07-22 2003-06-03 Appstream, Inc. Method and system for executing network streamed application
US6668375B1 (en) * 1999-12-15 2003-12-23 Pitney Bowes Inc. Method and system for providing build-to-order software applications
US6854107B2 (en) * 1999-12-29 2005-02-08 Baker Hughes Incorporated Method of and system for designing an N-tier software architecture for use in generating software components
US9444785B2 (en) * 2000-06-23 2016-09-13 Cloudshield Technologies, Inc. Transparent provisioning of network access to an application
US7596784B2 (en) * 2000-09-12 2009-09-29 Symantec Operating Corporation Method system and apparatus for providing pay-per-use distributed computing resources
US7330717B2 (en) * 2001-02-23 2008-02-12 Lucent Technologies Inc. Rule-based system and method for managing the provisioning of user applications on limited-resource and/or wireless devices
US7283811B2 (en) * 2001-02-23 2007-10-16 Lucent Technologies Inc. System and method for aggregation of user applications for limited-resource devices
FI112149B (en) * 2001-03-30 2003-10-31 Sonera Oyj Installation of software applications in terminal equipment
US7533050B2 (en) * 2001-06-26 2009-05-12 International Business Machines Corporation Integration of computer applications and e-business capability
US7174379B2 (en) * 2001-08-03 2007-02-06 International Business Machines Corporation Managing server resources for hosted applications
US7222152B1 (en) * 2001-10-01 2007-05-22 Microsoft Corporation Generic communications framework
US7213065B2 (en) * 2001-11-08 2007-05-01 Racemi, Inc. System and method for dynamic server allocation and provisioning
US7127713B2 (en) * 2002-01-11 2006-10-24 Akamai Technologies, Inc. Java application framework for use in a content delivery network (CDN)
US7577722B1 (en) * 2002-04-05 2009-08-18 Vmware, Inc. Provisioning of computer systems using virtual machines
US6781486B2 (en) * 2002-06-27 2004-08-24 Harris Corporation High efficiency stepped impedance filter
US20040064470A1 (en) 2002-08-02 2004-04-01 Jedox Gmbh Method for generating a stand-alone multi-user application from predefined spreadsheet logic
US7644145B2 (en) * 2002-10-16 2010-01-05 Xerox Corporation Integrated server platform for the autonomous provisioning of device services
GB2395805A (en) * 2002-11-27 2004-06-02 Sony Uk Ltd Information retrieval
US7076562B2 (en) * 2003-03-17 2006-07-11 July Systems, Inc. Application intermediation gateway
US7194756B2 (en) * 2003-06-20 2007-03-20 N2 Broadband, Inc. Systems and methods for provisioning a host device for enhanced services in a cable system
US20050096973A1 (en) * 2003-11-04 2005-05-05 Heyse Neil W. Automated life and career management services
US7409463B2 (en) * 2003-12-04 2008-08-05 International Business Machines Corporation On-demand active role-based software provisioning
US8010456B2 (en) * 2003-12-22 2011-08-30 International Business Machines Corporation Policy based application provisioning in a collaborative computing environment
CN101427220A (en) * 2004-01-30 2009-05-06 国际商业机器公司 Componentized automatic provisioning and management of computing environments for computing utilities
US7503031B2 (en) * 2004-02-19 2009-03-10 International Business Machines Corporation Method of transforming an application into an on-demand service
US7882546B2 (en) * 2004-03-04 2011-02-01 International Business Machines Corporation Controlling access of a client system to an access protected remote resource
US7281045B2 (en) * 2004-08-26 2007-10-09 International Business Machines Corporation Provisioning manager for optimizing selection of available resources
US7774366B2 (en) * 2005-03-08 2010-08-10 Salesforce.Com, Inc. Systems and methods for implementing multi-application tabs and tab sets
JP5395434B2 (en) * 2005-09-09 2014-01-22 セールスフォース ドット コム インコーポレイティッド System and method for exporting, publishing, browsing and installing on-demand applications in a multi-tenant database environment
US7730478B2 (en) * 2006-10-04 2010-06-01 Salesforce.Com, Inc. Method and system for allowing access to developed applications via a multi-tenant on-demand database service
US8700645B2 (en) * 2007-08-17 2014-04-15 Salesforce.Com, Inc. On-demand database service system, method, and computer program product for validating a developed application
US8661056B1 (en) * 2008-11-03 2014-02-25 Salesforce.Com, Inc. System, method and computer program product for publicly providing web content of a tenant using a multi-tenant on-demand database service
US10255344B2 (en) * 2012-06-04 2019-04-09 [24]7.ai, Inc. Multi-tenant data integration

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6151643A (en) * 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
US20040107125A1 (en) * 1999-05-27 2004-06-03 Accenture Llp Business alliance identification in a web architecture
US6816882B1 (en) * 2000-05-31 2004-11-09 International Business Machines Corporation System and method for automatically negotiating license agreements and installing arbitrary user-specified applications on application service providers

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070032888A1 (en) * 2005-08-03 2007-02-08 Canon Kabushiki Kaisha Control apparatus, communication device, and communication method
US8782637B2 (en) * 2007-11-03 2014-07-15 ATM Shafiqul Khalid Mini-cloud system for enabling user subscription to cloud service in residential environment
US20120311564A1 (en) * 2007-11-03 2012-12-06 Khalid Atm Shafiqul System and method to support subscription based Infrastructure and software as a service
US20190238632A1 (en) * 2011-01-03 2019-08-01 Atlassian, Inc. Wireless network cloud computing resource management
US10594783B2 (en) * 2011-01-03 2020-03-17 Atlassian, Inc. Wireless network cloud computing resource management
US10785289B2 (en) 2011-01-03 2020-09-22 Atlassian, Inc. Wireless network cloud computing resource management
US11470147B2 (en) 2011-01-03 2022-10-11 Atlassian Pty Ltd. Wireless network cloud computing resource management
US20120260246A1 (en) * 2011-04-06 2012-10-11 International Business Machines Corporation Software application installation
US9483258B1 (en) * 2011-04-27 2016-11-01 Intuit Inc Multi-site provisioning of resources to software offerings using infrastructure slices
US20130103641A1 (en) * 2011-10-21 2013-04-25 Salesforce.Com, Inc. Monitoring entitlement usage in an on-demand system
US8924361B2 (en) * 2011-10-21 2014-12-30 Salesforce.Com, Inc. Monitoring entitlement usage in an on-demand system
US20130125011A1 (en) * 2011-11-16 2013-05-16 Microsoft Corporation Enabling service features within productivity applications
US10192199B2 (en) * 2011-11-16 2019-01-29 Microsoft Technology Licensing, Llc Enabling service features within productivity applications
US9436509B2 (en) * 2011-12-14 2016-09-06 Microsoft Technology Licensing, Llc Pre-provisioned web application platform site collections
US20130159453A1 (en) * 2011-12-14 2013-06-20 Michael McLean Pre-Provisioned Web Application Platform Site Collections
US10171287B2 (en) * 2012-04-18 2019-01-01 International Business Machines Corporation Multi-user analytical system and corresponding device and method
US10635997B1 (en) * 2012-06-15 2020-04-28 Amazon Technologies, Inc. Finite life instances
US9928469B1 (en) 2012-10-02 2018-03-27 Amazon Technologies, Inc. Techniques for administrating finite life instances
US9195438B2 (en) * 2012-12-19 2015-11-24 Salesforce.Com, Inc. System, method and computer program product for creating an application within a system
US20140173553A1 (en) * 2012-12-19 2014-06-19 Salesforce.Com, Inc. System, method and computer program product for creating an application within a system
US9455876B1 (en) * 2013-02-01 2016-09-27 Ingram Micro Inc. Method and standard for integrating applications into a cloud
US11029933B1 (en) * 2013-02-01 2021-06-08 Ingram Micro Inc. Method and standard for integrating aplications into a cloud
WO2014191389A1 (en) 2013-05-29 2014-12-04 Lamberti Spa Shale inhibitors
US20150288702A1 (en) * 2014-04-07 2015-10-08 The Toronto-Dominion Bank Systems and methods for providing information-technology assets in an open environment
US9930046B2 (en) * 2014-04-07 2018-03-27 The Toronto-Dominion Bank Systems and methods for providing information-technology assets in an open environment
US10235676B2 (en) 2015-05-12 2019-03-19 The Toronto-Dominion Bank Systems and methods for accessing computational resources in an open environment
US10649767B2 (en) * 2015-12-29 2020-05-12 Tata Consultancy Services Limited System and method for creating an integrated digital platform
US10153941B2 (en) * 2016-05-17 2018-12-11 Microsoft Technology Licensing, Llc Distributed operational control in computing systems
US11093237B2 (en) * 2016-11-28 2021-08-17 Microsoft Technology Licensing, Llc. Build isolation system in a multi-system environment
US11044339B2 (en) 2017-04-25 2021-06-22 Microsoft Technology Licensing, Llc Asynchronous service provisioning in computing systems

Also Published As

Publication number Publication date
US20170012893A1 (en) 2017-01-12
US20190288955A1 (en) 2019-09-19
CA2463006A1 (en) 2005-07-27
US20100169491A1 (en) 2010-07-01
CA2554590A1 (en) 2005-08-04
US20180102980A1 (en) 2018-04-12
WO2005071886A1 (en) 2005-08-04
EP1709765A1 (en) 2006-10-11
US20160301775A1 (en) 2016-10-13
US9876731B2 (en) 2018-01-23

Similar Documents

Publication Publication Date Title
US9876731B2 (en) On demand provisioning of applications
US9047322B2 (en) Techniques for automatically discovering a database device on a network
US9269115B2 (en) Application licensing using sync providers
EP1978672B1 (en) Method for implementing management software, hardware with pre-configured software and implementing method thereof
US20110047540A1 (en) System and Methodology for Automating Delivery, Licensing, and Availability of Software Products
AU2005200345B2 (en) Update distribution system architecture and method for distributing software
EP1840744B1 (en) Method and apparatus for delivering managed applications to remote locations
US7603318B1 (en) License distribution
US7962424B1 (en) Overdraft licenses and license distribution
US20030200300A1 (en) Singularly hosted, enterprise managed, plural branded application services
US20070143446A1 (en) Methods, systems, and computer program products for installing an application from one peer to another including application configuration settings and data
US8799449B2 (en) Information technology remote services management environment
US9032367B2 (en) Providing a demo appliance and migrating the demo appliance to a production appliance
MXPA05001673A (en) Tag-based schema for distributing update metadata in an update distribution system.
US8175994B2 (en) Method and system for self-learning issues remediation
US20040010542A1 (en) Managed service apparatus, systems, and methods
JP2009116801A (en) Affiliate management program, method therefor and apparatus thereof
KR20080040082A (en) Central management of enterprise resource

Legal Events

Date Code Title Description
AS Assignment

Owner name: WRAPPED APPS CORPORATION, CANADA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MARTIN, LUC;REEL/FRAME:018789/0829

Effective date: 20061215

STCB Information on status: application discontinuation

Free format text: EXPRESSLY ABANDONED -- DURING EXAMINATION

AS Assignment

Owner name: MIRAMARE INVESTMENTS INCORPORATED, CANADA

Free format text: COURT ORDER ENFORCING PATENT AGREEMENT;ASSIGNOR:AOD CORPORATION;REEL/FRAME:058520/0448

Effective date: 20210615