One of the most important decisions that a software product manager will have to make is which license metric to choose when developing a software licensing model. To help understand which metrics are best for your software in light of virtualization, it’s good to provide a little background on license metrics, the value of virtualization, and the software stack.
What is a License Metric and Why It’s Important
The license metric is the element of the software licensing model which is counted and to which pricing is applied (of course, pricing is applied to the license metric for a functional unit of software – aka a "product").
The ideal license metric should meet 4 criteria:
- Simple – it’s easy to understand, which is a challenge in product portfolios
- Fair – the customer sees it as a fair way to charge for the value received by using the software
- Scalable – the more the customer uses of the software, the more money the Independent Software Vendor (ISV) will make
- Measurable – it has to be something everyone can agree upon
Many software licensing metrics don’t meet all four criteria, as sometimes a tradeoff has to be made, usually to favor simplicity. This is true for software that is used to perform a complex combination of tasks, such as software that is used to test other software (for variety of performance parameters). It’s easier to select a value proxy for the sake of simplicity.
Common License Metrics:
Fortunately, the software world has a handful of categories of commonly-used metrics, although derivations can be in the hundreds if you look at nuances in the different ways software can provide value. But the basic categories of software licensing metrics can be characterized as follows:
- Named User/Role – The named user at a particular role of people who can use the software (for example the "administrator" role for user=Cris, or the "viewer" role for Catherine.
- Concurrent User/Instance – The unit of measure is the number of simultaneous instances of software or simultaneous users using software.
- Instance – Each installation or use of the software.
- Managed Capacity – The size of the job or task performed by the software, such as the total number of employees for HR software, the number of routers being controlled by network management software, the amount of storage in a security logging system, etc.
- Performance – The speed or capacity of the software to perform a job (somewhat independent of hardware), which can be based upon the capability to do multi-threading or throttle some other element of speed in the software.
- Physical Machine – the physical machine upon which the software is run.
- Machine Compute Capacity – the capacity of the physical machine (number/size of CPUs, processors, or cores) upon which the software is run.
The Value & Challenge of Virtual Machines to License Metrics
For better or worse, (running software in) virtual machines are here to stay. From an enterprise perspective, there are several primary reasons why they are so valuable:
- Machine costs can be lowered by allowing multiple VMs (virtual machines) to run on the same machine, or, allowing a single VM to span multiple machines.
- Availability and reliability can be improved by allowing back-up copies of VM’s, or, a virtual motion technology such as VMotion to move VMs to an operational machine should one become defective.
What this means is that customers may not have their VM’s fixed to a particular physical machine, or, that an instance of software could be running on multiple virtual machines.
The challenge for Independent Software Vendors is to enable customers to realize the benefit of virtual machines without sacrificing revenue because the "scalability" test of a license metric is being compromised. Which translates to customers using more software than the pricing model intended.
Next week: The Software Stack and the Best License Metric for You!