If this title intrigued you at all, chances are you work for a company that sells software it creates, what many call an Independent Software Vendor (ISV). Most ISVs are pretty good at writing software, so when the time comes to consider adding a license manager to their software some ISVs feel it best that they just write the license manager part themselves and be done with it. Here are six things to consider before you build your own license manager.
Independent software vendors who see the need for a software license manager face the universal question of whether to build or buy. Here are a few things to consider before making your decision.
Software License Adoption
How Do I Get my Company on Board?
You’ve tried to introduce the concept of software licensing into your company. But, you’re not sure of the best way to move the process forward. Here are some tips to get you to the finish line.
It All Starts at The Top
We have assisted many companies in making the transition from “trust-based” to “trust, but verify” with a license manager. To us, the key ingredient in a successful license management project starts at the top: You need executive—hopefully, Chief Executive—support and sponsorship to gain the benefits available from licensing. Since the decision to adopt license management touches so many parts of your organization, you’ll need to make sure it’s clear to others in your company that a licensing program helps increase revenue and provides visibility at the highest levels of your company.
Identify Your Go-To Person
As important as it is to have executive-level support for your licensing program, it’s equally important to have a single focal point from your organization to be the “go-to” person for licensing. Ideally this person is well-known and respected throughout the organization and has good knowledge of the functional groups that will be impacted by licensing and how they will respond. While neither an MBA nor a Computer Science degree are necessary, being able to both “walk the walk” as well as “talk the talk” are important to lending credibility to your licensing program.
Show Me the Money
The focus for the licensing program should be revenue- and profit-driven (hence the need for an executive-level sponsor). To implement licensing, your company will make an investment in man-hours. To get a return on this investment, there needs to be a payback for this in terms of increased revenue and profitability.
What’s In It For The Customer?
While more money is always a good thing, this shouldn’t come at the expense of customer/end-user goodwill. Remember, software licensing is all about keeping “honest users honest” and giving them an easy-to-use tool to help ensure compliance with the terms and conditions of your existing paper or clickwrap license agreements, as well as to easily acquire more licenses. Taking an overly negative attitude towards customers and end users with your licensing program will be immediately obvious to them and will negate benefits from increased license compliance. Talk to trusted users of your products, or co-workers most in touch with your users (support, sales, etc.) and do a “sanity check” with them on your proposed licensing policies. While no licensing system will make everyone completely happy, on balance, both revenue and customer satisfaction should go up with a well-done licensing program.
Where Do I Start?
First, reconcile your current licensing policies, agreements, and existing infrastructure (if any) with what your marketing and sales teams tell you would be most desirable. If you currently provide permanent licenses, and see that customers are asking about annual subscription licenses, that’s a good place to start. What about adding floating licensing to your existing per-CPU model? Per user? Time zone based? Put time into market research, both internal and external, to figure out where you want to go license policy-wise.
Who’s Gonna Do All This Work?
After applying great business policies via licensing, you’ll need some resources. Now’s a great time, if you haven’t done so already, to go back to that executive sponsor with a briefing on what may be possible with software licensing. Do a quick back of the envelope calculation about impacts on revenue and profitability. Be realistic; there may be a short term negative impact to get infrastructure set up, employees trained, and the product and documentation updated. However, there should be an obvious payback in the one-to-three year timeframe.
Deliver your sales pitch: Will your executive sponsor approve the internal resources to implement the programs required to create your dream software license management program; a plan that will ultimately increase revenue and profitability?
Armed with the right team, it’s time to nail down a ship date for your product(s) that will have the new licensing implementation. It’s quite likely that there’s a new release or two already being sketched out on someone’s whiteboard in the company. Request a data change (or set a new one in the future) to accommodate your licensing program. Get support from your executive sponsor if you get push back. On the software engineering side, you’ll probably need a day or so to integrate and test the licensing libraries, change the install routine, and document everything.
If at First You Don’t Succeed…
You may have some complications in your first rollout of a product with licensing. Hopefully, this will be seen as part of the normal process with software. But, it wouldn’t hurt to try to foresee all possible problems as part of getting ready to roll out licensing. Be sure to have a contingency plan for what happens when a customer is frustrated with getting your software up and running under license management. It may be worth it in the long-run to provide that customer with a temporary “everything works” license to get them over the hump and up and running with licensing. Have dedicated support and on call engineering resources in place when that all-important roll out date arrives. It’s safe to say that you’d be better off having the resources but not needing them due to your brilliant foresight and your thoughtful mitigation of all possible licensing-related problems.
Now That You’re Over the Hump
It’s time to brief your executive sponsor on the effects of the rollout of your software licensing program. They were instrumental in getting the program going and they should be able to share the glory of the success of getting licensed products out the door. As part of your rollout plan, put a stake in the ground 30, 60 or 90 days after release to come up with some simple performance metrics.
Have support calls gone up or down? What above revenues? If you time your first licensing release to coincide with the beginning or ending of a fiscal quarter, you may be able to get more bang for your licensing buck.
Make performance stats available as soon as you can and be sure to publish them inside your company. Even if the numbers aren’t all wonderful, give everyone the story, including plans for future releases with licensing, new licensing models in the queue, etc.
Making Licensing Part of The Culture
Hopefully, your results will be paid back in the short or medium term. Ideally your company is making more profitable use of the employees and infrastructure devoted to software creation and both customers/users and employees are happy with the decision to go to software licensing. If so, great; to the extent you can, keep doing what you have to push software licensing into more products in your company. Some traditional hardware companies now treat their physical products as platforms for enabling what their customer gets via a software license.
We hope you have found this article useful in your quest to adopt software licensing. If you have any questions, please don’t hesitate to contact us.
Do You Really Need a License Manager? Or can you use an Activation Server as a License Manager?
In certain circumstances, you could use an Activation Server as a license manager.
This would be the case for very simple, straightforward node-locked licensing. For example, an app that runs on a phone or a tablet (or a simple application that runs on the desktop). Instead of integrating a license manager, you add a call to activate the license, and the activation server performs the initial activation on the first request, and verifies that the license is activated on subsequent requests.
- You avoid the cost of a license manager.
- The code is easier to integrate
- The software footprint in your code is smaller
- Your application must contact the activation server on every invocation.
- The licensing models supported are quite simple – nodelocked, uncounted only
How would this work?
Let’s put aside the issue of how the activation keys are created in the first place. There are a variety of ways this is accomplished, depending on your business rules.
When your application runs, you do the following:
- determine some unique charactistic of the device or computer. If it is a phone, this might be as simple as the phone number or the device’s ethernet MAC address.
- your software presents the activation key and the device id to the activation server and receive the status:
- Not Activated previously -> the server records the device ID, and returns a success status.
- Activated previously from this device -> the server returns a success status.
- If the key was activated from another device, the status would be “key already used”.
It’s really as simple as that. There is a single web services call to perform the initial activation and checks status later.
Reprise Software offers licensing solutions for both node-locked and concurrent (floating) licenses. As you have read elsewhere on this blog, virtually every type of license is supported. This article presents a overview of RLMCloud, our Licensing-as-a-Service offering.
If you support concurrent (floating) licensing, Reprise offers both traditional on-premise license servers that your customers set up on their own networks, and license servers in the RLMCloud.
RLMCloud is an easy-to-use solution for hosting your product licenses on standard RLM license servers in the Cloud. Reprise’s Cloud licensing solution is turnkey, and 100% hosted by Reprise Software, Inc. It is administered through your browser. Your customers use your products without installing license servers on their own networks. Their floating licenses are in the Cloud instead.
Best of all, RLM supports both Cloud-based license servers and on-premise license servers. For example, you can simultaneously support large enterprise customers who insist on on-premises license servers and smaller customers who would value the convenience of a Cloud-based license server. RLM supports this within the same version of your application with no code changes.
Address the Challenges of on-premise Software Licensing
RLMCloud solves some of the more challenging issues with on-premises license servers, such as:
- no longer need to ask your customer for the license server hostid
- no more license server set-up/maintenance required by end customer
- eliminate hostid spoofing
- virtual machine cloning is no longer an issue
- license server rehosting is no longer an issue
- instantly disable licenses for non-payment, or for lapsed subscription
- upgrade/downgrade licenses without special “replace” or “upgrade” licenses
- enable secure pay-per-use payment models using RLM report log
- set up automatic failover server support
Support for mobile platforms
“Software Monetization” – What does it mean to your business?
Industrial companies are increasingly using software as the driver of their future growth. Sustainable growth is fed by profits. But to grow profitably, you need to ensure that your software infrastructure has the proper licensing controls built-in, so that you can get paid for the fair use of your products. This is what we mean by “software monetization”… turning your products, whether software or software-driven devices, into dynamic, profitable businesses.
Protect and Defend
The first step is IP protection. Adopt a technology that gives you a satisfactory degree of security to prevent unlicensed use, and to deter imitators (grey-markets) who would use your IP to compete against you. We all know that no software is totally hack-proof, but you have to make malicious attacks against your products non-trivial.
Control through SOFTWARE MONETIZATION
Consider how your customers will obtain licenses or activate your software. Fully leverage near ubiquitous connectivity to simplify installation and authentication, whether it is through in-product activation or by supporting floating licenses by deploying license servers in the Cloud. Your choices should reflect how your customers use your products, as well as their own preferences. For example, some customers will insist on staying off the public Internet, so make sure you have a strategy for these cases.
Shake the Trees
Increasing profitability comes from both your current base, as well as new markets. Monetization means extracting revenue from existing bases by giving them choices of new feature bundles, and by scaling price to the value that they receive. New pricing models, such as monthly/annual subscriptions, token-based licenses, and usage metering may cast a wider net into your existing markets. Perhaps a super-low price point, or even a free version is a way to broaden your base. Conversely, there may be valuable features that you currently bundle that could be offered as an up-sell opportunity. Monetization also means delivering totally new products/features using the same licensing technology to derive new sources of revenue.
Your customers are always on the move, and that means your licenses have to move with them. With software licensing, you have mechanisms for customers to self-serve. After your customers easily convert a trial versions into paid versions, they can later move licenses to a new machine, or add new modules, or upgrade to a new release. In all cases, access is in their hands, but you are always in control.
Software licensing also helps manufacturers simplify supply chains by reducing the number of unique physical devices needed to address multiple market segments while extending the useful lifetimes of these devices.
What if you could know which parts of your products were used the most, how often? With software licensing, you can gather and monitor actionable product usage data, not just to calculate an invoice, but also to gain marketing insight into how your product is used, and where to allocate precious development resources.
Software licensing services easily tie into CRM and E-Commerce/payment platforms for speedy quote-to-cash. This means timely revenue recognition and an improved customer experience.
Build on the Shoulders of Giants
In-house development of software monetization tools offers little competitive advantage. Worse, it can derail engineers from development of new features where true product differentiation and competitive advantage lives.
Fortunately, today’s software developers welcome the paradigm shift toward designs built on a combination of licensed code and in-house application software. By acquiring a 3rd-party software monetization solution rather than building it, development organizations enable themselves to focus their efforts on delivering more innovative products more quickly within shrinking market windows.
This article discusses the Top 3 Software Licensing Models – subscription license, perpetual license and consumptive license.
Software customers and publishers negotiate pricing based on both the perceived value of the application and how the application will be used. The software licensing model defines how the product will be used. Let’s define the top 3 software licensing models.
Perpetual license – a non-expiring license to use an application. The customer has no obligation to pay for support or update services.
Advantages: Simple to deploy and manage. Customers may be able to expense the purchase as capital.
Potential downside: Difficult to securely handle machine upgrades and software redeployment. Publisher is locked into the old license policy for years. Customers may end up using very old software versions to save money if they elect to forego maintenance. This in turn could lead to poor publisher reputation when software becomes outdated. For the customer, perpetual licenses require larger initial outlay. For the publisher, perpetual licenses require a steady stream of new license sales to maintain revenues. Pressure to discount is high.
Subscription license – a renewable license, usually annual, including software support and updates during the coverage period. The license is automatically terminated unless it is renewed.
Advantages: Encourages steady, predictable revenue flow to publisher. Lower initial cost for the user, faster approval cycle. Allows for short-term rentals. License policy can be changed at renewal time. Limits license exposure to overuse when machines are decommissioned or upgraded. Customers are able to annually expense the budgeted license renewal fees. Less price discounting pressure. Encourages on-going client-vendor relationship.
Potential downside: Increased license management overhead. Requires accurate record keeping to manage license life cycle.
Consumptive license – This license has a periodic fee based on usage. Payment can be before or after use. Example cases: overdrafts, utility-pricing based on time or work done, etc.
Advantages: Maximum license and pricing flexibility. Price most closely related to value. Encourages steady revenue flow to publisher. Lowest initial cost for the customer. The customer is never denied a license. License policy can be changed at any time. Customers may be able to expense the license fees as they occur, perhaps monthly. Least price discounting pressure. Encourages on-going client-vendor relationship.
Potential downside: Requires most license management overhead. Reliable license usage reports must be created periodically, and mid-cycle to check against budget. Licensing must be integrated into CRM or accounts receivable systems. Customers may have issues with privacy.
This Article Describes Cloud-Based License Management and in particular several problems solved by this approach.
Traditional floating licensing requires a license server installation on the end customer’s network. Although this deployment strategy is still the most common, you can improve the situation by moving the license servers into the cloud. Let’s look at the issues where Cloud-Based License Management can be of some considerable help.
The crux of the matter is that when you deliver licenses to your customer, you lose control. When you manage your customer’s licenses in the cloud, then you retain control. It’s that simple.
Some of the advantages of delivering licenses in the cloud are…
Customer Preference – Some customers don’t want to set up a license server. They feel this is the vendor’s responsibility. Most small customers don’t have in-house IT support. Licensing in the cloud eliminates the need to install and maintain the license server locally.
Reduce Support Time – Installing a license server can sometimes cause problems. Licensing in the cloud eliminates this task altogether.
Instant Revenue – The publisher can recognize revenue immediately. No more waiting around for the customer to track down the hostid of the server.
Use Anywhere – Your customer can run your software anywhere: on virtual machines, in classrooms, labs, at off-site training, and at trade shows, etc.
License Rehosting – Traditional floating licensing makes it difficult to securely rehost a customer’s license server when it fails or when it is decommissioned. This is not an issue with licensing in the cloud.
Suspend/Reinstate Licenses – Traditional floating licensing also made it difficult to terminate or suspend licenses. With the license server in the cloud, you can easily deal with non-payment or lapsed subscriptions.
Modify license inventories – With cloud-based license management, it is easy to change license counts up or down, and handle version upgrades.
Usage-based licensing – Pricing software based on usage relies on accurate records. In traditional license server deployments, license usage data is collected at the customer site, making it difficult to collect. With cloud-based license management, the report log containing the usage data is on the cloud, not at your customer’s facility.
Always up-to-date – Your cloud-licensed customers take advantage of upgrades to the server software immediately when released. Backward compatibility of the client-side ensures this.
Failover Servers – Maximize license server up-time with automatic failover server setup, at multiple datacenters.
Post Use Billing – an alternative to Subscription or Permanent License Grants
There are situations where it is impossible to anticipate the level of usage of a software package before it is actually used. In cases like this, a fixed number of permanent licenses or subscriptions may not satisfy your customer’s needs. Many ISVs and their customers prefer a licensing option which allows the software to be used in excess of some predetermined limit, and then invoiced after-the-fact for the actual usage which exceeds this limit. This type of license model has been referred to as Pay-Per-Use, or Metered or Post Use Billing.
Of course, your life is full of real-world examples of post use billing: your water bill, your electric bill, etc. Why not adopt this common model to software as well?
RLM supports most flavors of this license model with a combination of metered licenses and an authenticated usage report log.
RLM supports metered, or pay-per-use licenses, with the METER keyword in the license line. When you create a METERed license, the license server maintains a number of meters each with an individual count. When your application runs, the license server decrements the meter after each successful license checkout, and (optionally) periodically while the application continues running. To utilize this effectively, the license server needs to be under your control, ie. not installed on your customer’s network. RLMCloud is perfect for this, since you control the servers and hence the meters.
Alternately, you can issue more floating licenses than your customer has purchased, then use the report log to determine usage in excess of the purchased licenses. At the end of the month, for example, you would invoice your customer for the excess usage. This is possible because RLM’s usage report logs are authenticated so that you can verify that they haven’t been modified. Even better, if the license servers are under your control in RLMCloud, you have continuous access to the report logs.
By using a Post Use Billing license model in addition to your normal permanent or subscription licenses, you can help your customers utilize your software more effectively as well as increase your revenues.
RLM and RLM Activation Pro
Sometimes people are a bit confused by the Reprise product line, in particular, wondering about the difference between RLM and RLM Activation Pro. The two products work together, and both products involve a server component, so that’s the basis for the confusion.
Let’s start with a couple of definitions:
- RLM (the Reprise License Manager) is a software license manager. You (a software publisher) integrate RLM into your product, and RLM keeps track at runtime who is using your product licenses. RLM can do this entirely within the client library (linked into your application), or, more commonly, your application makes a request of the RLM License Server to “check out” a license. The license server runs either on computers in your customer’s network, or in the cloud if you are using our RLMCloud service. Your application uses RLM every time it runs to verify that the license rights are still present, thus enabling use. RLM, however, never gets involved in the issuing of the actual license files to your customers.
- RLM Activation Pro, on the other hand, is a Software Activation product. Software Activation’s purpose in life is to generate and dispense the license files for your product to your customers with minimum fuss. Activation Pro also has a server component which we call the activation server. Your application contacts the activation server and supplies a short text activation key, and in exchange, the activation server returns the license which enables your product. Generally, this is done once, right after your customer purchases your software, not every time your software is invoked.
So in summary, RLM provides runtime checking that your application is licensed to run and that the current usage of your application is within the limits you have set, every time your application runs. Activation Pro is used once at the time your customer purchases your software in order to retrieve the license file which is specific to that customer.