Mention license management and most software developers begin to imagine people in trench coats hiding in the shadows or police raids in the middle of the night. For years, license management, especially in its earlier guise of "copy protection," has been thought of as an annoying and even slightly sinister method of protecting software from illegal duplication.
Today, however, protecting software products from piracy is only one side of license management. As the amount of software used within an organization grows, so do the problems associated with keeping track of that software. In even small- and mid-sized companies, system administrators can find themselves bogged down in the business of monitoring who has what software running on which machines. Modern software licensing tools can protect a developer's intellectual property while simultaneously helping customers track use, estimate needs, and guard against increasingly expensive problems that come with violating a software licensing agreement.
To help address the license control problem faced by its customers, BASIS International now incorporates in its new products an advanced license tracking and management system from GLOBEtrotter Software, Inc., called FLEXlm. The FLEXlm system can handle the licensing needs of products of almost any size or complexity and is used by corporations such as Apple, IBM, Ford, Sony, and Motorola. The FLEXlm system goes beyond the simple "Is-this-product-allowed-to-run?" functionality provided by BASIS' earlier licensing scheme. This new system within BASIS' products provides a reliable and effective way for companies to track software use, manage the number of people who can use a product, and ensure that they are complying with licensing terms.
The Hardware History Of License Management
A look back at the history of computers shows hardware growth and development firmly in the driver's seat, while software rides uncomfortably in the back. Advances in computer technology have revolved around improvements in hardware, with speed and storage capacity reigning supreme. Even today, gigabytes and megahertz serve as technology's yardsticks. The development of license management followed this hardware-to-software path closely. One of the first products of the license management craze was the dongle, a device equally as strange as its name.
A dongle is a small piece of hardware that attaches to a computer, usually through a hardware port such as a printer connection. This device contains a code or activation key that must be detected and validated by the associated software before it will operate. Because each application would require a separate dongle, users with multiple dongle-keyed applications wasted time swapping the devices in and out or suffered with chains of dongles plugged into each other on the backs of their computers. Though dongles are rarely used today, they are highly effective in controlling software use, so they are still supported by modern licensing systems such as FLEXlm.
By the 1990s, license management techniques evolved from hardware to software solutions. As software buyers made it clear that they would not purchase programs with intrusive hardware-based copy protection, developers moved more toward the use of activation codes embedded directly in their software. While these solutions were much easier to use, they were far less secure in their protection and not particularly flexible in offering multiple licensing options to the buyer. What the industry needed was a more configurable license tracking tool that met the needs of both the software developer and the end user.
Today With FLEXlm
The FLEXlm licensing system opens up an almost infinite variety of licensing possibilities to both BASIS and its customers. FLEXlm licensing is controlled from a user-accessible plain text file that contains one or more encrypted license keys which determine how the software behaves. For example, with earlier versions of BASIS products such as the PRO/5 Data Server®, if a customer needed to add user seats to an existing license he or she would "trade in" the existing license key for a new one reflecting the updated user count. This could quickly evolve into a nightmare for people responsible for tracking license keys within the customer organization. With FLEXlm, a customer can add new seats to an existing multiuser license by simply adding a new incremental key for the extra users to the existing license file. Other "extra" features can be added to the license file with similar ease.
Node locking, also called hardware locking, is one of the new features that FLEXlm offers our products. Node locking ties a piece of software to a single piece of hardware, but unlike dongle-based licensing, node locking looks for a particular piece of hardware that's already built into the system that will run the software. A license key generated for a particular hardware "node" is only valid on that computer and will not work anywhere else. This is the method that BASIS has chosen to use during the early phases of its use of FLEXlm, introduced in the non-mission-critical BASIS ODBC Driver®, but other options will follow close behind.
Node-locked licensing is among the most restrictive of the licensing options but works well on a variety of hardware configurations. Companies that primarily use standalone, non-networked PCs require a separate license for each independent system, making node-locked licensing the best way to control software use within that organization. On a network, however, some more sophisticated options are available.
Floating licenses are licenses that are valid on any machine, or any of a predetermined collection of machines, on a company's network. This is made possible through the use of a central license server from which all the individual machines must request a license before the software will run. In organizations with the network hardware to take advantage of it, a floating license system is far more flexible than a node-locked system. Instead of having to buy a separate license for each machine that might need to use the software, a company only needs to buy enough licenses to cover the largest number of people who will need to use the software at a single time. As the customer's needs grow, additional floating licenses can easily be added, and because all licensing is centrally controlled, updates take place quickly at a single location.
FLEXlm also makes it possible to allow a flexible limit to the number of users on a network. If an unforeseen situation arises and a customer needs more licenses than he or she has bought, FLEXlm can be configured to allow the extra users to run the software, recording the "exception" so that additional licenses can be purchased at a later date. In this situation, the user would typically be presented with a message notifying him or her that the maximum number of authorized users has been exceeded but that access is being given based on additional licensing at a later date. This way, a company is not restricted by a fixed-license system.
The Test Drive
FLEXlm also supports the creation of temporary licenses for trial periods. With this system, the software automatically "times out" at the end of a specified period. This allows prospective customers to fairly evaluate a product for a predetermined length of time. Should a customer then wish to purchase the software, the demonstration license can be easily converted to a permanent license. Temporary licenses not only protect the developer from having demonstration copies used indefinitely, they also provide an easy way to protect software that is being tested in the field before the product is generally available.
The Future of Licensing
With the rise of software delivery on the Internet and the increasing complexity of networks throughout the business world, the demands on license management systems continue to grow. Electronic licensing now makes software available 24 hours a day through email and the World Wide Web, and advances in licensing systems are even making it possible to retrieve temporary and permanent keys over the telephone. The end result is a more cost-effective, automated delivery system for developers, and a solid, secure way of making sure that customers always have easy access to the software they've purchased.
Licensing software development is also being driven by increasingly complex and expanding computer networks. As these networks continue to grow and the number of applications running on them increases, more sophisticated and flexible electronic licensing methods like FLEXlm will be required to manage software use. But electronic licensing is much more than just simple software protection. Modern license management systems give customers the tools they need to tailor licensing requirements to fit their needs, track software usage, and ensure proper license compliance. As more software professionals come to use these new license management systems, the idea of trench coats and police raids will fade away, and the only images developers and users will see when they hear the words "license management" will be dollar signs.
Copyright 1999, BASIS International Ltd. All rights reserved.