Installed with Software Asset Management plugin

A number of tables, properties, user roles, script includes, client scripts, UI policies, and business rules are installed with Software Asset Management plugin.

Activating Software Asset Management plugin adds these components.

Demo data is available with Software Asset Management plugin.

Tables

Software Asset Management plugin adds the following tables.

Table 1. Software Asset Management plugin tables
Table Description
Processor Definition [cmdb_processor_definition] Describes a computer in terms of the attributes IBM uses for its PVU licensing model. A row can be associated with one or more discovered computers if they are all identical in terms of the attributes used for PVU licensing.
Processor Mapping [sam_processor_mapping] Encodes the information specified by the IBM Table of Processor Value Units per core and is used in matching a computer's processor definition to a PVU cost for that computer. Each row in this table is a mapping between a set of processors and the associated PVU cost (per core).
Software Counter [sam_sw_counter] Configures license counting options for software models.
Software Counter Compliance Violations [sam_sw_counter_violation] Stores records of software counter compliance issues that are due to violations other than installs exceeding rights, such as:
  • Maximum CPU/user count exceeded, based on model limits.
  • Maximum or minimum rights rules not followed, based on model limits.
  • Options installed on a server with a license that does not support options (Oracle).
Software Counter Detail [sam_sw_counter_detail] Reconciles a software installation or usage with its corresponding software license and entitlement. The software counting logic automatically generates and maintains these records.
Software Counter History [sam_sw_counter_history] Stores read-only copies of software counter records, which the system generates automatically each time a software counter finishes counting licenses.
Software Counter Result [sam_sw_counter_result] Records all software counter results. Organizes the results based on the Grouping field (such as Company, Department, or Location) on the Software Counter record.
Software Counter Summary [sam_sw_counter_summary] Aggregates all the software counter details for a given allocation state, a given group, and a given software counter. The software counting logic automatically generates and maintains these records.
Software Discovery Model [cmdb_sam_sw_discovery_model] Stores a unique and definitive list of all software found by a discovery tool.
Software Installation [cmdb_sam_sw_install] Associates software discovery models and the hardware on which they are installed.
Software Usage [cmdb_sam_sw_usage] Associates software discovery models and the hardware that uses the models. ServiceNow Discovery does not populate the Software Usage [cmdb_sam_sw_usage] table. Use a third party tool to add information about software assets to the Software Usage table.

Properties

Software Asset Management plugin adds the following system properties.

Table 2. Software Asset Management plugin properties
Name Description
sam.install_deletion_deadline Defines the number of days after which a software install is deleted if not discovered with the configuration item. The best practice is to use a value that is greater than the number of days between consecutive discovery runs.
  • Type: integer
  • Default value: 7
  • Location: System Properties [sys_properties] table

User roles

Software Asset Management plugin adds the following user roles.

Table 3. Software Asset Management plugin user roles
Role Contains roles Description
sam

inventory_user

contract_manager

category_manager

financial_mgmt_user

Can create, edit, change, and manage software licenses. Can edit the Software model field on a Discovery model. Can approve a model. Has full control of the Software Asset Management plugin feature. Controls the Software Asset Management plugin IBM PVU Process Pack, if activated.

Script includes

Software Asset Management plugin adds the following script includes.

Table 4. Software Asset Management plugin script includes
Name Description
DiscoveryModelMatcher Matches a discovery model with a software product model.
ProcessorDefinitionsUtils Contains utilities for managing the Processor Definition [cmdb_processor_definition] table.
ProcessorValueUnitsUtils Contains logic that determines the IBM PVU pricing associated with a given processor. Also generates an event when a processor mapping is not found.
SAMMigration Deprecated. Used by the fix job that migrates software license management data to Software Asset Management plugin.
SAMSuiteEngine Contains functions for handling suite inference on software installations.
SAMUtil Generates models and counters for Software Asset Management plugin.

Client scripts

Software Asset Management plugin adds the following client scripts.

Table 5. Software Asset Management plugin client scripts
Name Table Description
Clean up Counter Software Counter [sam_sw_counter] Ensures integrity between the various counting options of a software counter.
Deactivate automatched checkbox Software Discovery Model [cmdb_sam_sw_discovery_model] Deactivates the automatically matched check box when a user edits the software model.
Notify if counter in progress Software Counter [sam_sw_counter] Displays a message if the counter is currently running.

UI policies

Software Asset Management plugin adds the following UI policies.

Table 6. Software Asset Management plugin UI policies
Name Table Description
Enforce Installs per license Software Counter [sam_sw_counter] Makes the Installs per license field mandatory when the software counter License type is By number of users.
Handle custom counts License Calculation [sam_sw_license_calculation] Displays the fields for entitlement type and valuation script when Count by is set to custom.
Hide condition fields Software Counter [sam_sw_counter] Hides the Software usage condition field if the license calculation query table is set to Software install and hides the Software install condition field if the license calculation query table is set to Software usage.
Hide query table Software Counter [sam_sw_counter] Hides the Query table field on the Software Counter form.

Business rules

Software Asset Management plugin adds the following business rules.

Table 7. Software Asset Management plugin business rules
Name Table Description
assign processor Computer [cmdb_ci_computer] Attempts to match a processor with a processor definition.
Build Primary Key Software Installation [cmdb_sam_sw_install] Sets the primary key for the record to the serial number on the [cmdb_sam_sw_install] table. If the serial number is empty, the rule creates one based on the publisher, display name, product ID, version, and revision.
Build Primary Key Software Usage [cmdb_sam_sw_usage] Creates the primary key for the record from the publisher, name, product ID, and version number on the [cmdb_sam_sw_usage] table.
Check for software suite Software Installation [cmdb_sam_sw_install] Checks if the current software install is part of a software suite.
Check for suite omission Software Installation [cmdb_sam_sw_install] Checks if the current software install should be omitted from any suites.
Clean up Cache Software License [alm_license] Removes the cache for the counter of the software license record when a software license is deleted.
Clean up software normalization Software Installation [cmdb_sam_sw_install] Deletes the discovery model if the discovery model is changed and it is not used by other software installs. This rule is not enabled by default.
Clear install and usage records Software Counter Summary [sam_sw_counter_summary] Uncaches all related install and usage records when a software counter summary is deleted.
Clear normalized flag Software Usage [cmdb_sam_sw_usage] Clears normalized flag on certain field changes.
Clear normalized flag Software Installation [cmdb_sam_sw_install] Clears the is_normalized check box when a field value is changed from a normalized value.
CPU/Core count change Computer [cmdb_ci_computer] Clears the Cached check box on related software installs when the CPU count or CPU core count changes.
Create a Software Normalization Software Installation [cmdb_sam_sw_install] Links the record to the discovery model with that primary key on the [cmdb_sam_sw_install] table if the primary key changes. The business rule creates a discovery model if none exist for that primary key.
Create a Software Normalization Software Usage [cmdb_sam_sw_usage] Links the record to the discovery model with that primary key on the [cmdb_sam_sw_usage] table if the primary key changes. The business rule creates a discovery model if none exist for that primary key.
Delete cached count results Software License [alm_license] Marks the software counter results to be recounted when one or more fields on a license have changed.

This script runs after a change to a field that a counter can be grouped on, such as location, department, company, cost_center, entitlement_condition, or assigned_condition. If one or more of these fields changes, then the script sets the Recount field to true on any cached counter results matching the previous value. When the counter runs, the results with Recount set to true are treated as non-cached results and are recounted. For example, if Location on a license was Americas and changes to EMEA, cached results for Americas will have Recount set to true for the next count.

Delete Cached row entry License Entitlement [alm_entitlement] When an entitlement is deleted:
  • Deletes all related software counter details.
  • Clears the Cached check box on the related software install.
Drop counter Cache Software Counter [sam_sw_counter] Clears the Cached check box for the software counter if the grouping, license type, contract, or installs per license change in a software counter. Added enforce field changes to the conditions
Flag counter to reprocess Software Upgrade and Downgrades [cmdb_m2m_downgrade_model] Clears the Cached check box for all related software counters if the upgrade parent or downgrade child values are changed or deleted.
Flag counter to reprocess Software Suite [cmdb_m2m_suite_model] Clears the Cached check box for all related software counters if the suite parent or suite child values are changed or deleted.
invalidate sw install cache Computer [cmdb_ci_computer] Uncaches all install and usage records referencing a computer when the computer's processor field is changed.
Limit license metric License [alm_license] Limits software licenses to a single license metric value.
Limit license metric combinations Hardware [cmdb_ci_hardware] Rejects license metric combinations of the same type, such as CAL (user) and CAL (devices).
Link to Model Software Discovery Model [cmdb_sam_sw_discovery_model] Finds and sets the model field to the model that best corresponds to the record when a software discovery model is created.
Mark install for suite omission License Entitlement [alm_entitlement] Searches for any matching installs and marks them for suite omission.
One and only one default mapping Processor Mapping [sam_processor_mapping] Ensures only one default mapping by resetting the last resort flag for modified records and setting it to false for new records.
Process cache reset Software Installation [cmdb_sam_sw_install] Resets the install of any counter information when it becomes uncached.
Process suite component deletion Software Installation [cmdb_sam_sw_install] Updates all other members of an install's suite if the install is deleted.
rebind processor definitions Processor Mapping [sam_processor_mapping] Refreshes processor definitions when a processor mapping changes.
Rebuild Cache Software Discovery Model [cmdb_sam_sw_discovery_model] Clears the Cached field on the software counter if the associated software model is modified on the software discovery model record.
Rebuild inferred suite and cached Software Discovery Model [cmdb_sam_sw_discovery_model] Clears the cached flag and inferred suite field on records referencing this discovery model, when the matched model changes.
Remove cached flag Software Installation [cmdb_sam_sw_install] Clears the corresponding cached software counter details if a software installation is deleted or if the configuration item on which it is installed changes.
Remove cached flag Software Usage [cmdb_sam_sw_usage] Clears the corresponding cached software counter details if a software usage record is deleted or if the configuration item from which the software is accessed changes.
Remove caches from detail Software Counter Detail [sam_sw_counter_detail] Clears the Cached check box on the related entitlement, installation, and usage records if they exist.
Reset counter info on suite change Software Installation [cmdb_sam_sw_install] Uncaches and resets counter information on the install if its inferred suite changes.
Reset Installs per License Software Counter [sam_sw_counter] Clears the Installations per license fields if the counter license type is not per user.
Retrieve PVU Mapping Processor Definition [cmdb_processor_definition] Finds a matching processor mapping based on the information of the processor definition.
SAM: Core Process Global [global] Not used for any processing.
Set Display name Software Counter Result [sam_sw_counter_result] Sets the display name of the counter result to the counter name with the grouping type.
Set normalized fields Software Usage [cmdb_sam_sw_usage] Sets normalized fields on insert to be copies of discovered fields.
Set normalized fields Software Installation [cmdb_sam_sw_install] Copies the given values as their normalized values when a software install is inserted.
Sync Software Package Software Discovery Model [cmdb_sam_sw_discovery_model] Creates a row in the package table to reflect the row in the discovery model table.
Update Cache Software Installation [cmdb_sam_sw_install] Updates all corresponding cached software counter details if usage metrics for this installation change.
Update Cache Software Usage [cmdb_sam_sw_usage] Updates all corresponding cached software counter details if usage metrics for this software usage change.

References

Software Asset Management plugin adds the following references.
Table 8. Software Asset Management plugin references
Name Description
Processor Definition Activating the Software Asset Management plugin IBM PVU Process Pack after activating Software Asset Management plugin adds a reference to the processor definition to the Hardware [cmdb_ci_hardware] table.