What data is required to track software usage? Users check out a software license at some point in time, they use the software, and check the license back in when they are done. License managers keep a record of this software license usage and availability of licenses. Considering the diverse array of license management systems offered by individual software suppliers, an IT manager might wish for a unified way of recording software license usage into a database in order to create a standardized data source for generating a variety of software usage reports.
The following diagram depicts the situation: a software license is granted by a license server, checked out by a user working for a specific department located in a particular region, on the user’s host machine, between a start and a stop time.
That, in short, provides a snapshot of the data stored in a database. Every software usage record reported by a license server has the name of the software, the check-out and check-in time of the software license, the name of the user, and the host where the software was run. This describes a complete software session when a license is used.
Information about the user’s department and the user’s region or office is not reported by license managers, and needs to be imported into the database. This may come from LDAP or some corporate system that stores a user database, including the user’s current department and current office location. This makes it possible to allocate software usage to departments and regions, which are typically available in hierarchical form. Departmental and regional hierarchies will of course be specific to each company, and are liable to change from time to time. Even the user’s association with a department and a region is subject to change on an ongoing basis.
For most large companies, information about software usage allocated to departments and/or regions is very important as this can form the basis of “charge-back” to the appropriate entities based on actual usage of any software. Such usage allocation using objective data (instead of gut-instinct) is only possible if all software usage is recorded as described above.
Just about any company involved with product development uses a vast variety of software packages for design, analysis, manufacturing and so on. There could be hundreds of software packages routinely used by hundreds or thousands of users on a daily basis. Recording all software usage, especially that which utilizes a shared licensing model, can quickly grow into millions of software usage records. This does not constitute a road block as just about any modern database system can very easily handle large data volumes.
Data capture and storage forms the backbone of the Software Asset Optimization (SAO) solution offered by Altair. In a future post, I will write about critical software usage metrics that may be retrieved from the database and presented to decision makers to help ensure that the company is gaining maximum utility from its expensive software assets. Spend what you must, but never more than is necessary!