Fog Creek Software
Discussion Board

Best Volume/Site licensing methods?

Hello All,

We develop a system that consists of a platform and various topic-specific plug-in modules for use by corporate clients. The system is primarily used by a few specific departments within each facility, with its output then refferenced regularly by most of the operations personell within those facilities. Overall analysis reports are also accessed and used by management at both the facility and headquarters levels.

The system consists of a desktop application used by the departments managing the info that can be installed locally or run from a server using .NET dynamic deployment. A browser-based interface is used to access files, documents, and reports by operations and management. There are also built-in web services to allow integration with portal and other systems.

We will be selling licenses and subscriptions for the system for stand-alone use by small clients, but the majority of our clients will be purchasing for use plant-wide, division-wide, or corporate-wide. We are currently begining the process of laying out our volume or site licensing/subscription fee arrangement for this product.

We are looking into the methods currently being used by other companies. We want to use a system that is easily understood by prospective clients and the distribution channel and that is based on a logical value metric.

What are your thoughts on and experiences with volume/site licensing methods? Any insights or recommendations from the client or developer side?

As always I'm looking forward to the discussion.



Sunday, November 17, 2002

I'm not sure this applies as you're talking about bigger multi site licenses than we do, but anyway here goes:

We use concurrent user licensing i.e. any ten computers at once. We store away the users MAC address in a file as they login, removing it when they cleanly log out. Since most of our users are in and out regularly this cleans itself even when the user crashes.
You could of course age the login times to reduce problems and the app could periodically refresh it's time and date stamp.
Getting the MAC address is tricky (You'll need to see the Winsock FAQ for the best method using SNMP) For terminal services/citrix you'll need to write some code to get the users IP address (since they'll be sharing the MAC address) This is probably also true for WebServices as well.
You could also perhaps have two classes of users where the secondary read only access class is free to use.
Personally I think counting users is a great idea, far too many of my customers wouldn't buy based on the number of machines the software is installed on but this means they don't have to buy extra copies for light users and the license count check keeps 'em honest. (most of them are honest, but I think of a few who would take advantage otherwise and auditing this would be a nightmare)

In practice I think you'll need to sort out what your customers normally do, your program usage sounds a lot like the kind of thing a human resourses department would need:

potentially 2 or 3 power users (the HR Dept)
a dozen or so casual users (the managers)
several hundred readonly / limited rights users (the employees)

perhaps investigating how HR programs are licensed would be worthwhile. Sadly I suspect it's per employee, however maybe you can think of another application that a closer match to yours.

Per site licensing is the easiest one to check, per user should really be per active user rather than per computer thats had the software installed.

Peter Ibbotson
Tuesday, November 19, 2002

*  Recent Topics

*  Fog Creek Home