Apparatus for licensing software applications

Data processing: software development – installation – and managem – Software program development tool – Translation of code

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C717S152000, C717S152000

Reexamination Certificate

active

06173446

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates to a software usage determination method and apparatus and more particularly, a computer application for determining the number of clients being serviced by a server in a client-server software application.
BACKGROUND OF THE INVENTION
Traditional user licensing of software is based on two different methods, the per seat license and the concurrent user license. The per seat license provides a method in which anyone who will ever use the software is counted as a licensee. It is most commonly used for stand-alone applications, such as word processors, spreadsheets and CAD software, in which the software is loaded on to each user's computer when it has to be used. Per seat licensing gives the user the right to use the software on his computer. Every user who will use the software must have a license, even if the use is infrequent.
The concurrent user license is based upon how many users are simultaneously connected to the server at any given time. This method is generally used in client-server applications where a substantial portion of the software works on a “server.” Concurrent user licensing gives the company the right to have a certain number of users working simultaneously with the server. As soon as a user disconnects from the server, the server is no longer doing any more work of the disconnected user. Consequently, the license may be used by some other user.
Neither method of licensing is equitable or meaningful for a new generation of software applications for which the server usage by a client is persistent even after the client has disconnected. These new software applications are typically designed to perform a “service” which takes a period of time to complete. This means that usage is persistent even after the user has disconnected. Examples of such applications include workflow automation software, e-commerce software, HR software, enterprise resource planning software, help desk, customer care, call centers, etc. In these applications a server can do work for disconnected users in two ways.
A first manner occurs when the user connects with the application or the “server,” uses the application to initiate a transaction which will last for some period of time which could range from a few minutes to several months, and then disconnects. Even though the user is no longer connected to the server, the “server” or software application is doing the work. For example, a user initiates a purchase order request using workflow automation software. The user will simply initiate the purchase order workflow by filling out a form. This might take a couple of minutes during which time the user is connected to the workflow server. After the form is complete, the user disconnects from the server and the purchase order workflow process continues as the workflow server takes the purchase order and routes it to various individuals for approval. This might take several days or weeks. The workflow server is doing the work of handling the purchase order throughout this entire time period, even though the user who first initiated the purchase order has disconnected.
A second manner occurs when some other user or event triggers a transaction which can involve a disconnected user. Even though the user is disconnected, the server is doing work for that user by updating the user's task list and sending him e-mail notifications.
For these types of new generation applications where server utilization is persistent even when the user is disconnected, the two conventional methods of licensing are not equitable. The per seat license is not equitable to the customer because in many cases there are users who will only use the software infrequently. The customer has to either buy licenses for all such users or exclude infrequent users from full participation. For example, assume the president of a company is required to approve all purchase orders written for $10,000 or more and the purchase order is initiated and processed through various users of the software. In most cases at this company, the purchase orders are for amounts less than that figure and perhaps only once or twice a month is a purchase order written that needs the president's approval for the high dollar amount. The president of the company has to be a licensed user of the software even though he will only be using the software a few minutes each month. Per seat licensing would therefore discourage companies from fully deploying the software solution because they would try to reduce costs by limiting the deployment to only the most frequent users.
Concurrent User Licenses are not equitable to the software vendor because if a user connects to the server, initiates a transaction or process, and then disconnects, the server may still have to keep on performing work for the user even though the user has disconnected. The software is therefore being used even though the user is disconnected.
Therefore, there is a need to provide a server that monitors the usage of software that is equitable to both the provider and the user of the software.
SUMMARY OF THE INVENTION
This invention fulfills this need in the art by providing for an apparatus for monitoring software usage on a network. The apparatus includes a network of computers capable of running at least portions of a computer program. One of the computers in the network acts as a node that monitors the usage by other users. The monitoring node is programmed to determine active usage of the computer program by the users on various incidents involving the software, ascertain the total number of unique users using the software at a given time, compare the ascertained total number with an authorized number and issue a signal if the ascertained total number exceeds the authorized number.
The network of computers may be configured in a client/server arrangement with the node as the server. The node may further be programmed to determine active usage of the program at discrete intervals, and the intervals may coincide with other housekeeping tasks for the node. The node may further be programmed to ascertain the total number of unique users using the software at a given time by determining the number of current users, determining the incident or incidents that each user is working, calculating a participant list as a sum of all incident participants, and determining the number of unique users. If the number of users is in excess of a predetermined amount, the node may issue a signal indicating this occurrence and provide for a commercial transaction that increases the authorized number. The node may further issue a signal of excess usage to update a usage data storage that is used in sending a periodic accounting of usage for updated billing.
Accordingly, a second aspect of the present invention provides for tracking software usage and includes a number of user computers for running at least one software application. The software performs work on at least one incident, and may perform work on a number of separate incidents. A node or server computer monitors the activity of the incidents. The server determines the number of active users using the software application. An active client user is performing or has performed an activity on at least one of the incidents that remain in progress.
The users may perform work on more than one incident at a given time. The incidents may each include a number of steps that are completed in a defined order in which one of the users initiates the incident by performing a first step. Upon completion of the step, a subsequent step of the incident is started. The steps of the incidents may be performed in a parallel or series arrangement. The incident is completed when all of the steps have been performed.
The server may determine an overall fee for using the software applications that includes a first fee for the time the client user actively uses the software application and a second fee for the remainder of the time that the incident remains in progress. The server may be electronically couple

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Apparatus for licensing software applications does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Apparatus for licensing software applications, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Apparatus for licensing software applications will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2470312

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.