Now that you are starting to think like a software company, you need to consider that when providing your software licenses to market, a key decision you need to make is how you will balance your efforts to ensure that you are being paid for all of the software that is being used with the customers need to easily use the software. This is a business decision which directly determines how you invest in software licensing technology to protect your software against unlicensed use or over-use of your software.
Compliance is simply the act of whether or not your software is being used by customers within the bounds of a software entitlement and license agreement. A software compliance strategy is a business policy decision you need to define about how you view your customers, and how you want to treat them if they are using software in a non-compliant fashion. This policy usually takes into consideration the level of trust you have with your customers, and how the customer should be treated if they not in compliance. If you trust your customers, you will likely adopt a more lenient software compliance strategy that says you believe your customers are honest, and will pay you for all software usage, so there is no need to stop the software from running in cases where there is non-compliant usage.
For example, on one extreme you may be selling mission critical software directly to large corporations who do not want the financial exposure of using software in a non-compliant fashion. These are the highly trusted customers who will typically "true up" if they know that they are using software outside the bounds of their software license agreement. At the other extreme, you may be selling consumer software through a channel into geographic markets where customers may be far less trustworthy. In these cases, casual copying or software piracy may be a problem you want to prevent. In this case, you may actually want to stop any usage of the software outside the bounds of the software license agreement.
You may also have a more nuanced view of customers where you are lenient, but only up to a point. In fact, there is a range of different actions you can deploy, based upon the level of trust you have with customers. You may even have a range of actions, depending upon factors such as product type, product lifecycle, market, and geography. By documenting your software compliance strategy with key stakeholders in the business, you become very conscious about how you plan to treat non-compliant usage, and therefore, determine how to invest in the design of your software license enforcement technology (to support your strategy).
Enforcement consists of technology and methods such as software license keys for on-premises software, or password/login with other techniques for hosted (on-demand) software. It's extremely important to note that technologies such as license keys don't stop users from using software. License keys and associated software license technologies simply detect whether or not software is being used within the rights communicated within the license key. It's up to the software that is using information provided by the software license management system to determine the action to the user. This action should be a direct result of the software compliance strategy you have adopted based upon the needs of the business.
The typical range of behavior we typically recommend ranges from "allow the software to continue to run, but inform the user of non-compliant usage" in the cases where software is used in a mission critical deployments, to "deny access and deny usage" to software used in less trusted environments. There are also very interesting approaches where the end user of software is somewhere in between the two extremes of trust, and we recommend a form of limited over-usage or limited functionality for non-compliant usage.
The bottom line is that a single software licensing technology such as license keys can be designed to provide a full range of enforcement options, but it's up to the business to decide how the software should behave.
Want to see a sample software compliance strategy that we created with a customer? If so let us know.