Software asset management

Software asset management  (SAM) is a business practice that involves managing and optimizing the purchase, deployment, maintenance, utilization, and disposal of software applications within an organization. According to ITIL, SAM is defined as “…all of the infrastructure and processes necessary for the effective management, control, and protection of the software assets…throughout all stages of their lifecycle.” Fundamentally intended to be part of an organization's information technology business strategy, the goals of SAM are to reduce information technology (IT) costs and limit business and legal risk related to the ownership and use of software, while maximizing IT responsiveness and end-user productivity. SAM is particularly important for large corporations regarding redistribution of licenses and managing legal risks associated with software ownership and expiration. SAM technologies track license expiration, thus allowing the company to function ethically and within software compliance regulations. This can be important for both eliminating legal costs associated with license agreement violations and as part of a company's reputation management strategy. Both are important forms of risk management and are critical for large corporations' long-term business strategies.

SAM is one facet of a broader business discipline known as IT asset management, which includes overseeing both software and hardware that comprise an organization's computers and network.

Role within organizations
SAM can serve many different functions within organizations, depending on their software portfolios, IT infrastructures, resource availability, and business goals.

For many organizations, the goal of implementing a SAM program is very tactical, explicitly focused on balancing the number of software licenses purchased with the number of actual licenses consumed or used. In addition to balancing the number of licenses purchased with the amount of consumption, an effective SAM program must also ensure that the usage of all installed software is in keeping with the terms and conditions of the specific vendor license agreement. In doing so, organizations can minimize liabilities associated with software piracy in the event of an audit by a software vendor or a third party such as the Business Software Alliance (BSA). SAM, according to this interpretation, involves conducting detailed software inventories on an ongoing basis to determine the exact number of software licenses consumed, comparing this information with the number of licenses purchased, and reviewing how the software is being used in respect to the terms and conditions and establishing controls to ensure that proper licensing practices are maintained on an ongoing basis. This can be accomplished through IT processes, purchasing policies and procedures, and technology solutions such as software inventory tools.

Counting installations are the most common means of measuring license consumption but some software is licensed by the number of users, capital, processors, or CPU Cores.

More broadly defined, the strategic goals of SAM often include (but are not limited to) the following:
 * Reduce software and support costs by negotiating volume contract agreements and eliminating or reallocating underutilized software licenses
 * Enforce compliance with corporate security policies and desktop/server/mobile standards
 * Improve worker productivity by deploying the right kinds of technology more quickly and reliably
 * The limit overhead associated with managing and supporting software by streamlining and/or automating IT processes (such as inventory tracking, software deployment, issue tracking, and patch management)
 * Establish ongoing policies and procedures surrounding the acquisition, documentation, deployment, usage and retirement of software to recognize long-term benefits of SAM

SAM Technology
Several technologies are available to support key SAM processes:
 * Software inventory tools intelligently “discover” software installed across the computer network, and collect software file information such as title, product ID, size, date, path, and version.
 * License manager solutions provide an intelligent repository for license entitlements which can then be reconciled against data provided by Software inventory tools to provide the organization with an 'Effective License Position' or view of where the organization is under-licensed (at risk of a compliance audit) or over-licensed (wasting money on unnecessary software purchases).
 * Software metering tools monitor the utilization of software applications across a network. They can also provide real-time enforcement of compliance for applications licensed based on usage.
 * Application control tools restrict what and by whom particular software can be run on a computer as a means of avoiding security and other risks.
 * Software deployment tools automate and regulate the deployment of new software.
 * Patch management tools automate the deployment of software patches to ensure that computers are up-to-date and meet applicable security and efficiency standards.
 * Request management tools allow employees to place requests for software products using a centralized form and process specifically designed to capture and assess specific license requirements as well as to manage and track the procurement and deployment process.
 * Product catalog tools capture product-specific information such as name, edition, version and license agreement types as well as other key top-level information for products used within the business. This information normalizes product naming conventions within the organization and allows mapping between other technology and tools used in the composite SAM solution.

International Organization for Standardization (ISO)
The ISO/IEC 19770 family of standards are designed to help organizations manage IT assets including software assets (SAM). The published standards are outlined below:

ISO/IEC 19770-1:2017: IT Asset Management Systems Requirements is a process framework to enable an organization to incorporate ITAM (including SAM) processes and policies sufficient to satisfy corporate governance requirements and ensure effective support for IT service management overall. The implementation of SAM processes to be "accomplished in multiple staged increments or tiers." Part 1 of the standard details SAM processes including control environment, planning and implementation, inventory, verification and compliance, operations management and life cycle.

ISO/IEC 19770-2:2015: Software identification tag; establishes specifications for tagging software to optimize its identification and management. The current version was published in 2015 and is a revision to the 2009 original Software ID Tag standard. Using software identification tags or SWID tags makes discovery a simpler and more accurate process that can be verified by software vendors if they audit an organisations entire estate. SWID tags are implemented and supported by many vendors including IBM, Microsoft and Adobe.

ISO/IEC 19770-3:2016: Entitlement Management Schema outlines a technical schema which can be used to encapsulate license details including contract information, entitlements, rights, limitations and details about invoice, PO numbers, etc.

ISO/IEC 19770-4:2017: Resource Utilization Measurement provides an ITAM data standard for Resource Utilization Measurement ("RUM").

ISO/IEC 19770-5:2015: Overview and Vocabulary provides an overview of the 19770 standards as well as defines vocabulary used throughout the standards.

Issues with scalability
An example of issues faced when scaling up discovery tools is with Microsoft's System Centre Configuration Manager (SCCM). Using SCCM Metering Rules to monitor software usage across a small estate or a small number of applications is relatively easy and reliable given the total number of unique executables (.exe files) and the number of instances of each executable. Turning on Metering Rules for every packaged application and every executable in a large estate quickly makes the volume of data generated unmanageable and expensive to maintain. Most SAM tools which consume SCCM data rely on these Metering Rules to understand usage.