US20160301775A1 - On demand provisioning of applications - Google Patents

On demand provisioning of applications Download PDF

Info

Publication number
US20160301775A1
US20160301775A1 US15/188,416 US201615188416A US2016301775A1 US 20160301775 A1 US20160301775 A1 US 20160301775A1 US 201615188416 A US201615188416 A US 201615188416A US 2016301775 A1 US2016301775 A1 US 2016301775A1
Authority
US
United States
Prior art keywords
application
client
clients
instance
application instance
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
US15/188,416
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.)
AOD Corp
Original Assignee
AOD 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 AOD Corp filed Critical AOD Corp
Priority to US15/188,416 priority Critical patent/US20160301775A1/en
Assigned to AOD CORPORATION reassignment AOD CORPORATION NOTICE OF FORECLOSURE Assignors: WRAPPED APPS CORPORATION
Assigned to WRAPPED APPS CORPORATION reassignment WRAPPED APPS CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MARTIN, LUC
Priority to US15/274,271 priority patent/US9876731B2/en
Publication of US20160301775A1 publication Critical patent/US20160301775A1/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

    • H04L67/42
    • 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
    • H04L67/32
    • 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 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 fill 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 mental 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

    CROSS REFERENCE TO RELATED APPLICATIONS
  • The present application is a Continuation of application Ser. No. 12/653,089 filed Dec. 8, 2009, which is a Continuation of application Ser. No. 10/587,405 filed under 371(c) on Jul. 15, 2008, which is the U.S. national stage application of International Application No. PCT/CA2005/000094 filed Jan. 27, 2005, which was published Aug. 4, 2005 as International Publication WO 2005/071886. The International Application claims priority on Canadian Application No. 2,456,799 filed Jan. 27, 2004 and Canadian Application 2,463,006 filed Apr. 1, 2004.
  • 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 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 fill 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 mental 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 (31)

1. An online provisioning and management system for on-demand provisioning of an application to a plurality of clients, the system comprising:
a server having a processor, the processor configured, for each of the plurality of clients:
to receive over a computer communication system a request for the application from the client, the application being an off-the-shelf application; and
responsive to receipt of the request for the application:
automatically to create an application instance of the application in response to the request whereby the application instance is associated with the client, the application instance being different from and independent of the application instance associated with any other client of the plurality of clients;
to provide the application instance for exclusive access, over the computer communication system, by at least one user associated with the client; and
to provide the client with access to online management functions to modify and manage the application instance of the client on demand,
wherein the application instance associated with each client is a separate, stand-alone instance of the application dedicated to the client, thereby creating a virtual multi-tenant version of the application.
2. The system of claim 1, wherein each separate, stand-alone instance of the application dedicated to each client is separately stored in a computing environment.
3. The system of claim 1, wherein, for each client of the plurality of clients, the processor provides the application instance by installing the application instance.
4. The system of claim 1, wherein, for each client of the plurality of clients, the application instance is an installed copy of the application separately stored in a computing environment.
5. The system of claim 1, wherein, for each client of the plurality of clients, the application instance associated with the client comprises security features that make the application instance accessible only by the client and the at least one user associated with the client.
6. The system of claim 1, wherein the server is remote from at least one client of the plurality of clients.
7. The system of claim 1, wherein, for each client of the plurality of clients, access to the application instance is provided by a unique application User Resource Identifier (URI) assigned to the client, the application URI being different from the application URI assigned to any other client of the plurality of clients, and access to the online management functions is provided by a provisioning and management URI different from the application URI.
8. The system of claim 1, wherein the online management functions include the ability for at least one client of the plurality of clients to save and restore a backup copy of the application instance of the client to a local storage device to allow reconstruction of the application instance of the client.
9. The system of claim 1, wherein the online management functions include the ability for at least one client of the plurality of clients to set and change client configuration data relating to the application instance of the client.
10. The system of claim 1, wherein the online management functions include the ability for at least one client of the plurality of clients to upgrade the application instance of the client to a newer code version, or downgrade the application instance of the client to a previous code version.
11. The system of claim 1, wherein the online management functions include the ability to provide at least one client of the plurality of clients with online demonstrations of the application.
12. The system of claim 1, wherein the off-the-shelf application is a single-tenant application.
13. The system of claim 1, wherein the off-the-shelf application is a multi-tenant application.
14. The system of claim 1, wherein the off-the-shelf application is a single-user application.
15. The system of claim 1, wherein the off-the-shelf application is a multi-user application.
16. The system of claim 1, wherein, for at least one client of the plurality of clients, the at least one user associated with the client comprises a plurality of end users.
17. A computer-implemented method for on-demand provisioning of an application to a plurality of clients, the method comprising, for each client of the plurality of clients:
receiving a request for the application from the client over a computer communication system, the application being an off-the-shelf application; and
responsive to receiving the request for the application:
automatically creating an application instance of the application in response to the request whereby the application instance is associated with the client, the application instance being different from and independent of the application instance associated with any other client of the plurality of clients;
providing the application instance for exclusive access, over the computer communication system, by at least one user associated with the client; and
providing the client with access to online management functions to modify and manage the application instance of the client on demand,
wherein the application instance associated with each client is a separate, stand-alone instance of the application dedicated to the client, thereby creating a virtual multi-tenant version of the application.
18. The method of claim 17, wherein each separate, stand-alone instance of the application dedicated to each client is separately stored in a computing environment.
19. The method of claim 17, wherein, for each client of the plurality of clients, providing the application instance comprises installing the application instance.
20. The method of claim 17, wherein, for each client of the plurality of clients, the application instance is an installed copy of the application separately stored in a computing environment.
21. The method of claim 17, wherein, for each client of the plurality of clients, the application instance associated with the client comprises security features that make the application instance accessible only by the client and the at least one user associated with the client.
22. The method of claim 17, wherein, for each client of the plurality of clients, access to the application instance of the client is provided by a unique application User Resource identifier (URI) assigned to the client, the application URI being different from the application URI assigned to any other client of the plurality of clients, and access to the online management functions is provided by a provisioning and management URI different from the application URI.
23. The method of claim 17, wherein the online management functions include the ability for at least one client of the plurality of clients to save and restore a backup copy of the application instance of the client to a local storage device to allow reconstruction of the application instance of the client.
24. The method of claim 17, wherein the provisioning and management functions include the ability for at least one client of the plurality of clients to set and change client configuration data relating to the application instance of the client.
25. The method of claim 17, wherein the online management functions include the ability for at least one client of the plurality of clients to upgrade the application instance of the client to a newer code version, or downgrade the application instance of the client to a previous code version.
26. The method of claim 17, wherein the online management functions include the ability to provide at least one client of the plurality of clients with online demonstrations of the application.
27. The method of claim 17, wherein the off-the-shelf application is a single-tenant application.
28. The method of claim 17, wherein the off-the-shelf application is a multi-tenant application.
29. The method of claim 17, wherein the off-the-shelf application is a single-user application.
30. The method of claim 17, wherein the off-the-shelf application is a multi-user application.
31. The method of claim 17, wherein, for at least one client of the plurality of clients, the at least one user associated with the client comprises a plurality of end users.
US15/188,416 2004-01-27 2016-06-21 On demand provisioning of applications Abandoned US20160301775A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
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 (8)

Application Number Priority Date Filing Date Title
CA2,456,799 2004-01-27
CA 2456799 CA2456799A1 (en) 2004-01-27 2004-01-27 On demand provisioning of web applications
CA002463006A CA2463006A1 (en) 2004-01-27 2004-04-01 On demand provisioning of web applications
CA2,463,006 2004-04-01
US10/587,405 US20080275939A1 (en) 2004-01-27 2005-01-27 Demand Provisioning of Applications
PCT/CA2005/000094 WO2005071886A1 (en) 2004-01-27 2005-01-27 On demand provisioning of applications
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

Related Parent 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

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/274,271 Continuation US9876731B2 (en) 2004-01-27 2016-09-23 On demand provisioning of applications

Publications (1)

Publication Number Publication Date
US20160301775A1 true US20160301775A1 (en) 2016-10-13

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 Before (2)

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

Family Applications After (3)

Application Number Title Priority Date Filing Date
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)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4829563B2 (en) * 2005-08-03 2011-12-07 キヤノン株式会社 Control method and control apparatus
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
US8782637B2 (en) * 2007-11-03 2014-07-15 ATM Shafiqul Khalid Mini-cloud system for enabling user subscription to cloud service in residential environment
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
US9467507B2 (en) * 2011-01-03 2016-10-11 Verizon Patent And Licensing Inc. 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
US20130067345A1 (en) * 2011-09-14 2013-03-14 Microsoft Corporation Automated Desktop Services Provisioning
US8924361B2 (en) * 2011-10-21 2014-12-30 Salesforce.Com, Inc. Monitoring entitlement usage in an on-demand system
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
CN103377402A (en) * 2012-04-18 2013-10-30 国际商业机器公司 Multi-user analysis system and corresponding apparatus 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
US9455876B1 (en) * 2013-02-01 2016-09-27 Ingram Micro Inc. Method and standard for integrating applications into a cloud
ITVA20130030A1 (en) 2013-05-29 2014-11-30 Lamberti Spa SILVER INHIBITORS
CA2887503C (en) * 2014-04-07 2018-10-16 The Toronto-Dominion Bank Systems and methods for providing information-technology assets in an open environment
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
CA2929803C (en) 2015-05-12 2021-10-12 The Toronto-Dominion Bank Systems and methods for accessing computational resources in an open environment
EP3188010A1 (en) * 2015-12-29 2017-07-05 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
US10372441B2 (en) * 2016-11-28 2019-08-06 Microsoft Technology Licensing, Llc Build isolation system in a multi-system environment
US10467241B2 (en) 2017-03-24 2019-11-05 Ca, Inc. Dynamically provisioning instances of a single-tenant application for multi-tenant use
US11044339B2 (en) 2017-04-25 2021-06-22 Microsoft Technology Licensing, Llc Asynchronous service provisioning in computing systems
US10860336B2 (en) * 2017-10-27 2020-12-08 Google Llc Managing multi-single-tenant SaaS services

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020142760A1 (en) * 2001-02-23 2002-10-03 Yoad Gidron System and method for aggregation of user applications for limited-resource devices
US20020166117A1 (en) * 2000-09-12 2002-11-07 Abrams Peter C. Method system and apparatus for providing pay-per-use distributed computing resources
US20030154239A1 (en) * 2002-01-11 2003-08-14 Davis Andrew Thomas Java application framework for use in a content delivery network (CDN)
US20040111709A1 (en) * 2002-10-16 2004-06-10 Xerox Corporation Method for low cost embedded platform for device-side distributed services enablement
US20040139105A1 (en) * 2002-11-27 2004-07-15 Trepess David William Information storage and retrieval
US20050021818A1 (en) * 2003-03-17 2005-01-27 July Systems, Inc. Application intermediation gateway
US20050125509A1 (en) * 2003-12-04 2005-06-09 International Business Machines Corporation On-demand active role-based software provisioning
US20050188345A1 (en) * 2004-02-19 2005-08-25 International Business Machines Corporation Method and system of transforming an application into an on-demand service
US20050216381A1 (en) * 2003-12-22 2005-09-29 International Business Machines Corporation Policy based application provisioning in a collaborative computing environment
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

Family Cites Families (26)

* 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
US6574618B2 (en) 1998-07-22 2003-06-03 Appstream, Inc. Method and system for executing network streamed application
US6721713B1 (en) * 1999-05-27 2004-04-13 Andersen Consulting Llp Business alliance identification in a web architecture framework
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
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
US9444785B2 (en) * 2000-06-23 2016-09-13 Cloudshield Technologies, Inc. Transparent provisioning of network access to an application
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
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
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
US7516457B2 (en) * 2004-01-30 2009-04-07 International Business Machines Corporation Componentized automatic provisioning and management of computing environments for computing utilities
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
CN101258483B (en) * 2005-09-09 2015-08-12 易享信息技术(上海)有限公司 For deriving, issuing, browse and installing system with applying and method thereof in 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
US8145651B2 (en) * 2007-08-17 2012-03-27 Salesforce.Com, Inc. On-demand database service system and method for determining whether a developed application will operate properly with at least one other 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 (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020166117A1 (en) * 2000-09-12 2002-11-07 Abrams Peter C. Method system and apparatus for providing pay-per-use distributed computing resources
US20020142760A1 (en) * 2001-02-23 2002-10-03 Yoad Gidron System and method for aggregation of user applications for limited-resource devices
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
US20030154239A1 (en) * 2002-01-11 2003-08-14 Davis Andrew Thomas Java application framework for use in a content delivery network (CDN)
US20040111709A1 (en) * 2002-10-16 2004-06-10 Xerox Corporation Method for low cost embedded platform for device-side distributed services enablement
US20040139105A1 (en) * 2002-11-27 2004-07-15 Trepess David William Information storage and retrieval
US20050021818A1 (en) * 2003-03-17 2005-01-27 July Systems, Inc. Application intermediation gateway
US20050125509A1 (en) * 2003-12-04 2005-06-09 International Business Machines Corporation On-demand active role-based software provisioning
US20050216381A1 (en) * 2003-12-22 2005-09-29 International Business Machines Corporation Policy based application provisioning in a collaborative computing environment
US20050188345A1 (en) * 2004-02-19 2005-08-25 International Business Machines Corporation Method and system of transforming an application into an on-demand service

Also Published As

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

Similar Documents

Publication Publication Date Title
US9876731B2 (en) On demand provisioning of applications
CN106203001B (en) Use the application license for the person of simultaneously providing
US7774323B2 (en) Method and apparatus for delivering managed applications to remote locations
US7739308B2 (en) Techniques for automatically provisioning a database over a wide area network
US6993657B1 (en) Techniques for managing database systems with a community server
US6076108A (en) System and method for maintaining a state for a user session using a web system having a global session server
US20110047540A1 (en) System and Methodology for Automating Delivery, Licensing, and Availability of Software Products
US7503031B2 (en) Method of transforming an application into an on-demand service
US7603318B1 (en) License distribution
EP1978672B1 (en) Method for implementing management software, hardware with pre-configured software and implementing method thereof
US7962424B1 (en) Overdraft licenses and license distribution
US20090037287A1 (en) Software Marketplace and Distribution System
US20030200300A1 (en) Singularly hosted, enterprise managed, plural branded application services
US20090037337A1 (en) Software Licensing and Enforcement System
US20090037452A1 (en) System and Method for Synchronizing Applications
US20070143446A1 (en) Methods, systems, and computer program products for installing an application from one peer to another including application configuration settings and data
Huang et al. Framework for building a low-cost, scalable, and secured platform for Web-delivered business services
US8799449B2 (en) Information technology remote services management environment
EP2188740A2 (en) Software marketplace and distribution system
CA2401206A1 (en) Method of and system for monitoring an application
MXPA05001673A (en) Tag-based schema for distributing update metadata in an update distribution system.
US20080163199A1 (en) Multi-product package creation and editing
US20090187929A1 (en) Remote monitoring and management ordering system for an information technology remote services management environment
US8175994B2 (en) Method and system for self-learning issues remediation
US20170300667A1 (en) System and method for electronic distribution of software and data

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:039168/0672

Effective date: 20061215

Owner name: AOD CORPORATION, CANADA

Free format text: NOTICE OF FORECLOSURE;ASSIGNOR:WRAPPED APPS CORPORATION;REEL/FRAME:039357/0232

Effective date: 20090317

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