How to de-duplicate hardware models <!-- .SOKMKBArticle div.margin { padding: 10px 40px 40px 30px; color: #283d40; font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; font-size: 10pt; } .SOKMKBArticle div.fed{ background-color: #f5f8fa; border: 1px solid; border-color: #bfbfbf; padding: 10px; } .SOKMKBArticle .FedRestricted{ background-color: #c00000; color: #ffffff; padding: 10px; margin-top: 10px; text-align: center; font-size: 14pt; font-weight: bold; } .SOKMKBArticle .CustRestricted{ background-color: #ff0000; color: #ffffff; padding: 10px; margin-top: 10px; text-align: center; font-size: 14pt; font-weight: bold; } .SOKMKBArticle .SNRestricted{ background-color: #ea700d; color: #ffffff; padding: 10px; margin-top: 10px; text-align: center; font-size: 14pt; font-weight: bold; } .SOKMKBArticle .SNConfidential{ background-color: #ffc000; color: #ffffff; padding: 10px; margin-top: 10px; text-align: center; font-size: 14pt; font-weight: bold; } .SOKMKBArticle .Public{ background-color: #00b050; color: #ffffff; padding: 10px; margin-top: 10px; text-align: center; font-size: 14pt; font-weight: bold; } .SOKMKBArticle table.tocTable { border: 1px solid; border-color: #f2f2f2; background-color: #f2f2f2; padding-top: .6em; padding-bottom: .6em; padding-left: .9em; padding-right: .6em; } .SOKMKBArticle table.noteTable { align: left; border: none; border-color: #81b5a1; background-color: #f2f2f2; width: 100%; border-spacing: 2; font-size: 11px; } .SOKMKBArticle table.internalTable { border-top: 1px solid; border-left: 1px solid; border-color: #81b5a1; width: 100%; border-spacing: 1px; } .SOKMKBArticle .sp td { border-bottom: 1px solid; border-right: 1px solid; border-color: #81b5a1; background-color: #ffffff; height: 20px; padding-top: .5em; padding-bottom: .5em; padding-left: .5em; padding-right: .5em; } .SOKMKBArticle .sphr td { border-right: 1px solid; border-bottom: 1px solid; border-color: #81b5a1; background-color: rgb(245, 245, 245); padding-top: .5em; padding-bottom: .5em; padding-left: .5em; padding-right: .5em; height: 20px; } .SOKMKBArticle .sh td { border-bottom: 1px solid; border-right: 1px solid; border-color: #81b5a1; background-color: #81b5a1; color: #ffffff; height: 20px; padding-top: .5em; padding-bottom: .5em; padding-left: .5em; padding-right: .5em; } .SOKMKBArticle th { padding-top: .5em; padding-bottom: .5em; padding-left: .5em; padding-right: .5em; border-bottom: 1px solid; border-right: 1px solid; border-color: #646464; background: #646464; font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; font-size: 10pt; color: white !important; height: 20px; } .SOKMKBArticle td { border-color: #646464; margin: 5px 5px 5px 5px; padding: 5px 5px 5px 5px; font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; font-size: 10pt; color: #283d40; } .SOKMKBArticle p { color: #283d40; font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; } .SOKMKBArticle li { color: #283d40; font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; font-size: 10pt; line-height: 1.5; } .SOKMKBArticle pre { font-family: Courier New; } .SOKMKBArticle div { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; } .SOKMKBArticle hr { border-top-width: 1px; border-top-style: solid; border-top-color: #81b5a1; } .SOKMKBArticle a { color: #81b5a1; } .SOKMKBArticle a.two:link { padding: 15px 45px 15px 45px; margin-top: 20px; color: #ffffff; text-align: center; background-color: #1F8476; border: 1px solid; border-color: #1F8476; } .SOKMKBArticle a.two:visited { padding: 15px 45px 15px 45px; margin-top: 20px; color: #ffffff; text-align: center; background-color: #1F8476; border: 1px solid; border-color: #1F8476; } .SOKMKBArticle a.two:hover { color: #ffffff; background-color: #259b8a; } .SOKMKBArticle .button { padding: 15px 45px 15px 45px; margin-top: 20px; color: #ffffff; text-align: center; background-color: #1F8476; border: 1px solid; border-color: #1F8476; } .SOKMKBArticle .title { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #81b5a1; font-size: 30pt; } .SOKMKBArticle .hd1 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-size: 20pt; border-bottom: 1px solid; border-bottom-color: #81b5a1; text-decoration: none; } .SOKMKBArticle h1 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-size: 20pt; font-weight: normal; border-bottom: 1px solid; border-bottom-color: #81b5a1; text-decoration: none; } .SOKMKBArticle .hd2 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #68a1af; font-weight: bold; font-size: 16pt; text-decoration: none; } .SOKMKBArticle h2 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #68a1af; font-weight: bold; font-size: 16pt; font-weight: normal; text-decoration: none; } .SOKMKBArticle .hd3 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: normal; font-size: 14pt; text-decoration: none; } .SOKMKBArticle h3 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: normal; font-size: 14pt; text-decoration: none; } .SOKMKBArticle .hd4 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: normal; font-size: 12pt; text-decoration: none; } .SOKMKBArticle h4 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: normal; font-size: 12pt; text-decoration: none; } .SOKMKBArticle .hd5 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: bold; font-size: 10pt; text-decoration: bold; } .SOKMKBArticle h5 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: bold; font-size: 10pt; text-decoration: bold; } .SOKMKBArticle .hd6 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: normal; font-size: 10pt; text-decoration: underline; } .SOKMKBArticle h6 { font-family: Century Gothic, Verdana, Helvetica, Arial, sans-serif; color: #283d40; font-weight: normal; font-size: 10pt; text-decoration: underline; } .SOKMKBArticle details { font-size: 10pt; } .SOKMKBArticle details[open] summary ~ * { animation: sweep .5s; margin-top: 0; padding-top: 10px; } @keyframes sweep { 0% {opacity: 0; margin-top: -10px} 100% {opacity: 1; margin-top: 0px} } .SOKMKBArticle summary { cursor: pointer; outline: none; margin-bottom: 3px; } .SOKMKBArticle .summary { background-color: #81b5a1; font-size: 10px; color: white; cursor: pointer; padding: 5px; width: 100%; border: none; text-align: left; outline: none; vertical-align: top; } --> Product Success Playbook How to de-duplicate hardware models A step-by-step guide to analyze and remediate Model data Table of Contents Summary Goal of this Playbook Audience Problem Overview Executive Summary How this playbook can help you achieve business goals How this playbook is structured Problem Analysis Upstream Causes Downstream Consequences Impact on Your Business Engagement Questions Remediation Plays Summary Play 1: Review your data Play 2: Analyze the Duplicate Hardware Model records Play 3: Analysis Play - Content Service Play 4: Fix Play duplicates models Play 5: Fix Play for customers using the Asset plugin Data Governance Summary Goal of this Playbook The goal of this playbook is to help you manage and resolve (remediate) duplicate hardware asset models. Details about this playbook Author Mario CassaniReviewer Daniel W. SlocumDate 11/02/2021Addresses HSD # HSD0010679Applicable ServiceNow Releases All ReleasesPrerequisites Asset Management Plugin (Asset), which is a component of an ITSM subscription and the Hardware Asset Management (HAM) Application, which requires an additional subscriptionTime Required Varies, depending on the instance customization level. Audience Configuration Manager or Configuration Management teamAsset Manager or Hardware Asset ManagerServiceNow Administrator or Discovery Administrator Problem Overview When hardware models are duplicated within the cmdb_hardware_product_model table, it becomes difficult to track and manage accurate counts and costs of a particular asset type. The primary function of an Asset Management practice is to identify where assets are, who is using them, and the cost of the asset estate to the organization. When we cannot easily track counts and costs for a segment of our asset estate, we reduce the value provided by Asset Management. Not having trustworthy data in the Asset Management Database (AMDB) impacts consumption of asset information during HR Planning, Strategic Decision Making, and other executive decision and management processes. Executive Summary How this playbook can help you achieve business goals When we have an accurate inventory of our assets, we can confidently support the charter of the Asset Management practice within our organization. Some functions common to asset practices are: Managing the asset lifecycle inclusive of the procurement, fulfilment, and retirement of assets.Providing maintenance, procurement, and usage cost data of the components that comprise a business service to executive leadership in support of Strategic Planning.Input into Vendor Management. Having accurate model information helps us to keep our devices covered by manufacturers support contracts.In organizations where some or all assets are leased, accurate model data is crucial to managing the Lease Return process. How this playbook is structured This playbook guides you through three plays. The first play (a review play) shows you how many duplicate Hardware Model records you need to remediate. The second play (an analysis play) shows you how to analyze the findings from the first playThe third play (an analysis play) helps you use the Asset Management Content Service Program. The fourth play (a fix play) helps you fix duplicate modelsThe fifth play (a fix play) helps you fix duplicate models with asset plugin Problem Analysis Upstream Causes The asset management content service program may not have been an option at the time of your asset management implementation.At the time of implementation the asset management content service program was not acknowledged or opt-ed in to.A legacy system had dirty/duplicated data and the migration implementation team decided to bring it to the system as is.A re-structure of models from a provider.There may be a gap within your asset onboarding process that allows incorrect or incomplete records to be created.Some devices do not respond to Discovery with valid or complete model information, resulting in incomplete or duplicate records. Downstream Consequences Data Consequence Unnecessary complexities in data.Duplication of data.Multiple models of the same type linked to asset records, where assets of the same model type be linked to a distinct model. Operation Consequence Ambiguity on the data when trying to use the assets associated with the duplicated model. Unnecessary investigation time searching for the correct asset based on the model. Additional time may be wasted developing custom reports or workarounds to compensate for duplication within the model table. You may be unaware that many of your workstations are outside their warranty period and/or heading towards end of life. App Consequence Upcoming functionality or newer applications may not see the data correctly.Data will not be accurate on the baseline reports, dashboards and features.Overhead maintaining process to keeping the duplicate data. Impact on Your Business Financial Optimization Incorrect model information will introduce increased costs based out of missed support contract dates, incorrect warranties, etc Ability to feed data into other systems and processes is made more difficult. Lease management processes efficiencies are degraded. Risk Compliance Ambiguity of model data could introduce compliance issues with business policies regarding assets. Duplication of model records impacts other applications such as Software Asset Management, Vendor Management, IT Service Management, and Contract Management. Increase Operational Visibility Data can be wrongly selected based on duplicate or inadequate data severely impacting asset visibility. Engagement Questions: Consider the answers to these questions: Is it important to your business to be aware of the types and models of assets and configuration items? How do you decide when a new model is introduced to the Model Inventory? Do you have a Model Management Process? Is there a governance team helping make informed decisions? Governance can include an approval process for model onboarding and offboarding. Typical stakeholders include representatives from Procurement, Risk Management, Network Security, Asset Management, Vendor Management, and Configuration Management. Remediation Plays SummaryThe table below lists and summarizes each of the remediation plays within the playbook. Ultimately the plays will help you identify and remove duplicated model records. Play Name Play 1 :Review your data What this play is about Review the number of duplicates within your Hardware Model tables. Required tasks Download and execute the fix script Play2 : Analyze Play What this play is about Analyze duplicate hardware model records Required tasks Perform the steps provided in the play Play 3: Analyze Play What this play is about HAM customers using the content service to perform analysis Required tasks Perform steps provided in the fix play Play 4: Fix Play What this play is about Guideline on how to approach the data correction Required tasks Perform steps provided in the fix play Play 5:Fix Play What this play is about Guideline on how to approach the data correction with asset management plugin Required tasks Perform steps provided in the fix play Data Governance What this play is about Includes guidelines and processes for preventing duplicates Required tasks Incorporate the guidelines as part of your process Play 1 - Review your data In this play you will review the number of duplicates within your Hardware Model tables. Required tasks Download and import the Duplicate Hardware Model Fix scriptRun the Fix scriptUpon successful completion, review the output from the queryNote the actual model numbers and counts will be different, but a sample of the output is below: Play 2 - Analyze your Duplicate Hardware Model records Do we have positive duplicates and not false positives? The display name on hardware model records are a concatenation of the manufacturer, name and model number. You may have models where the model name or the model number are blank which can create false positive duplication. Another situation that will contain duplicate models will be opt out HAM resource categories, which is one of the flags that utilize the normalization engine to organize the data. Are there true positive duplicate model records where the "name" and "model number" attributes are populated? In the case of HAM customers, is the model fully normalized? Play 3 - Analysis Play - Content Service What this Play is about This play is for HAM customers. If you have not opted-in to the Content Service, doing so will enable the anonymous upload of not fully normalized models found in your instance, to the ServiceNow Content Data Service (CDS) server for review by the ServiceNow ITAM Content team. Choosing to opt-in will increase normalization accuracy within your instance over time. Fully normalized models provide, manufacturer model details, lifecycle, and UNSPSC classification data useful to ITAM and other business processes within your organization. Normalization data is found on the "Normalization" tab of both hardware and consumable model records. Normalization itself will not deduplicate your model data. However, it will inform your decision-making process. If you have two model records that are for the same model but after normalization one of them isn't fully normalized, you should consider keeping the fully normalized model. Normalization should be just one input into your decision to keep a model. There are no steps needed to enable content download. The content download feature is enabled automatically during HAM plugin activation. However, you must choose to opt-in to the service to send ServiceNow data for models that aren't fully normalized within your instance. 1.Opt-in to the Hardware Asset Content Service. To opt-in, go to the Asset--> Content Service Setup application on and check the "Yes" checkbox shown on the below graphic: 2. Once the checkbox is selected, you'll be presented with the types of data that can be anonymously uploaded to ServiceNow. Enable the sliders next to the data types you wish the ServiceNow ITAM Content Team to evaluate for inclusion in the content library. With each choice you enable, you are improving the content library for your organization as well as other ServiceNow customers. Play 4 - Fix Play duplicates models What this Play is about 1.Once you have identified duplicates models, start by making sure you have the complete information populated into key data attributes on the hardware model's "General" tab. This next list represents the basic information needed to fix model duplication. The list also represents data utilized by the normalization engine to match models to the downloaded content library. ManufacturerNameModel number * This fields are part of the default creation of the display name. 2. A quick note to customers on the San Diego release. Within the Hardware Asset Workspace, you will find a Model Management dashboard where model records that are missing key data have "Important Actions" cards at the top of the screen. Clicking into a card takes you to the associated records. 3. Before you start this step, please understand that opting-in to a HAM License Resource Category will increase your HAM subscription costs to manage the assets covered by that Resource Category. If you wish to deduplicate hardware models but do not wish to opt-in to a specific HAM Resource Category, you can do so using the instructions found in Play 5. Once we have ensured your data is accurate and is as complete as possible, make sure you opt-in to the HAM resource category for the product types you wish to have normalized, by clicking on the Opt-In button. The HAM application will not normalize hardware models that are not related to an opted-in HAM Resource Category. You can find the HAM Resource Category module on your left Navigation by locating the Asset --> HAM Resource Categories application. Form more information on HAM License Resource Categories, use this link to search the ServiceNow Docs site. 4. Normalization will automatically run upon saving a hardware model record. After normalizing the hardware model determine if one record of a duplicated model is fully normalized. If it is, you should consider keeping this model instead of duplications that are not fully normalized. In this step you will move related asset records from model that we will delete to the model that is going to remain. Required tasks Review your hardware model records and make updates to the Manufacturer, Name, and Model Number attributes as needed to complete the records. When you save each record the Display name will update. This will help you to remove false positive duplicate records. Download and import the Relocate Model Data Fix scriptAdjust the Fix script <correct MODEL> and <incorrect MODEL> tags Run the Fix scriptUpon successful completion, review the output from the queryRepeat as necessary to clean up the duplicate models.Remove the models you've identified as incorrect. Play 5 - Fix play for customers using the Asset plugin What this Play is about 1. Once you have identified duplicates models, start by making sure you have complete information populated into key data attributes on the hardware model's "General" tab. This next list represents the basic information needed to fix model duplication. ManufacturerNameModel number * This fields are part of the default creation of the display name. 2. Update your model records ensuring the data elements identified above are as complete as possible. Required tasks Review your hardware model records and make updates to the Manfuacturer, Name, and Model Number attributes as needed to complete the records. When you save each record the Display name will update. This will help you to remove false positive duplicate records. Download and import the Relocate Model Data Fix scriptAdjust the Fix script <correct MODEL> and <incorrect MODEL> tags Run the Fix scriptUpon successful completion, review the output from the queryRepeat as necessary to clean up the duplicate models.Remove the models you've identified as incorrect. Data Governance What this Play is about It is recommended that the Asset Management owner, in partnership with the CMDB Owner, Procurement stakeholder, and representatives from Risk Management should approve model additions to your ServiceNow instance. Having a review process will ensure no hardware is introduced that represents a security risk or is not from an approved vendor enters your corporate computing landscape. You should also consider review of proposed custom field additions to the model table. Lastly, you should regularly review your model records for duplications that should be remediated as well as identifying how they were created so you can set policy and process to prevent future creation of duplicate models. Required tasks Required tasks Document an internal policy that outlines a model approval process. Document an internal policy to prevent the creation of Hardware Mode attributes without approval from a qualified person or team.Institute a review process that watches for new models coming into the system through the different import/discovery processes instead of the process defined in your model management policy.Create a report that shows any new asset hardware models created after the last clean up was performed. Review periodically with Stakeholders.Regularly review IT Asset Management release notes for announcement of new attributes and processes Congratulations You have completed this Product Success Playbook.