Deciding what rights to give to your software customers
For software vendors, the most valuable aspect of using a license manager is the freedom to define exactly how your customers buy and use your software products. You can match the attributes of your licenses to the precise needs of your customers and markets. Equally valuable is the ability to address unusual opportunity-specific requirements from your biggest and most important customers or new technology partners.
License managers, such as RLM from Reprise Software, isolate details of the licensing policy from the application code, giving you the freedom to define licensing on a customer by customer or even site by site basis. A single binary version of the product can support various licensing policies because all the variable elements of the licenses are stored in digitally signed files, not embedded in the product itself.
Assigning License Rights
How do I harness the power of the license manager? What rights should I give to my customers? Let’s first look at basic elements of a license that you can control, then look later at some other important parameters that can further refine your licensing policies.
Probably the most basic of all is the ability to control the duration of the license. In some cases, you may want your licenses to be perpetual, with no expiration date. At other times, as in demo or trial modes, you may want your licenses to have a short duration, 30 days or so. Still other times, you may sell usage rights on a periodic basis, monthly or annually, requiring a new license to be issued upon renewal.
Remember that rights once given are difficult to revoke. So, setting a fixed expiration date gives you the opportunity to retire and/or replace licenses in the field more easily should your license policies require a radical overhaul in the future.
Important users demand enhancements to your products to achieve increased productivity and improved business efficiency. Successful independent software vendors (ISVs) are constantly updating and upgrading their products. Importantly, software vendors often require that customers pay to play. Most vendors encourage their customers to pay an annual support and update charge to help fund this on-going development. In other words, only those customers who have paid support are allowed to use the latest release. Version numbers in their licenses give ISVs the control they need to enforce this policy.
Floating or Node-locked?
License managers can “lock” a license to a particular host, and they can control how many licensed copies are allowed to run concurrently. Floating licenses are free to “float” to users who need them. The license manager controls access to these floating licenses via a central server that enforces the maximum license count that you have set for this site. In a sense, floating licenses are locked to the license server, but can be used by anyone with access to that server. Floating licenses are perceived to have more value than other locked licenses because they can be shared, yielding more utility to the user community.
Node-locked licenses, on the other hand, are usually uncounted, allowing an unlimited number of copies to run on a specified host. Which you choose implement, floating or node-locked, depends largely on how your software is intended to be used, shared or unshared. Maximum flexibility calls for software licensing that can support both, ideally with one build of the licensed software product.
Further Entitlement Fine Tuning
After you’ve decided on your basic license entitlement strategies, you can further refine your policies to more precisely match your needs. Below is a list of optional parameters that can be controlled within the context of the basic license attributes above:
- License Sharing: allows a single floating license to satisfy the needs of a user regardless of the number of concurrent copies on his computer. Sharing is commonly used for development tools and other engineering and scientific applications that are multi-threaded.
- Disable on VM: virtual machines pose a security hole for ISVs because VMs can be cloned.
- License Hold time and Minimum Checkout time: some applications are designed to run for a very short time. Extending those times can help you keep your “per user” pricing low at large sites.
License Roaming: enables licenses to be temporarily reassigned to mobile devices for field work.
- NAMED_USER, or USER_BASED Licenses: a class of floating licenses that must be assigned to user names so that they cannot be used as widely as unrestricted floating licenses. Gives you more pricing depth.
- Platform restrictions: enables platform-specific pricing models.
Time zone restrictions: enables geographically-based pricing models. Charge more for licenses used over a wider geography.
- Overdrafts: captures revenue from users who temporarily need to exceed their license inventory.
It’s always a good idea to build a solid consensus within your company about how your license entitlements should be defined before you begin to implement licensing. But, if you need to make some changes in your policy after you release your software, RLM’s “policy in the license” will allow you to adapt without having to re-release your software. Perhaps, Reprise Software’s experts can help you plan your optimal approach. Please feel free to contact us to discuss.