Discovery vs Integration

Many companies have the decision of either using ServiceNow Discovery or building an integration between ServiceNow and another Discovery application like HP uCMDB, BMC ADDM, IBM TADDM, etc.  This article talks about that decision and the ramifications of that choice.

What is ServiceNow Discovery?

From the ServiceNow Wiki on Discovery:

The ServiceNow Discovery application finds computers and other devices connected to an enterprise's network. When Discovery finds a computer or device, it explores the device's configuration, provisioning, and current status and updates the CMDB accordingly. On computer systems, Discovery also identifies the software that is running and any TCP connections between computer systems. Discovery creates all the relationships between computer systems (such as an application on one server that uses a database on another server).

Discovery is available as a separate subscription from the rest of the ServiceNow platform and can be installed by making a request to ServiceNow Technical Support using the Request Plugin Activation module from HI.

Advantages of using ServiceNow Discovery

Here is a collection of possible advantages of using ServiceNow Discovery over other CMDB/Discovery applications:

  • Uniform Platform. All ServiceNow applications use the same PaaS platform.  No integration is needed to use ServiceNow Discovery.
  • Production Issues. With no integration to another Discovery application, there is no integration disconnect and less production issues
  • Upgrade Process. With ServiceNow, upgrades do not impact your customizations or system availability.
  • Mobile Accessibility. ServiceNow has mobile accessibility to Discovery configuration.  This isn't always the case with other Discovery applications.
  • Cost.  With no integration and no other discovery application, the only cost the subscription to ServiceNow Discovery.
  • Maintenance.  It may not be be easy as the rest of ServiceNow, but If you already have a ServiceNow admin, ServiceNow Discovery can be maintained.  If you use a different discovery application and an integration, the company admin must also know those other programming architectures.
  • Reporting.  With the data within ServiceNow, you can create reports as needed.  For highly complex reports, you can use the ServiceNow ODBC Driver with third-party reporting tools like SAP Crystal Reports.

Issues with an integration with a different Discovery application

You can integrate ServiceNow with a different Discovery application like HP uCMDB, BMC ADDM, IBM TADDM.  However that brings on new issues that should be considered.

  • Data Size.  Other CMDB databases have a lot of data and importing that into ServiceNow can be difficult if there is gigabytes or terabytes of information.
  • Field Map.  Mapping to another datasource can take a lot of time.  Especially if there are a lot of opinions.
  • Bandwidth.  When you are transferring a lot of data, you are often limited by the constraints of the network.
  • Transfer Method.  ServiceNow can transfer data via File, JDBC, XML through the midserver and can also use web services.  Other methods like FTP file transfer are not as desirable, as they are not designed for ServiceNow.
  • Form Design. When you transfer data from another data source, it is expected to redesign each form for each CI imported so that you can show the data.  That can be a project in itself, as there can be many CI types imported.
  • Implementation Timeline.  Implementing another discovery application may be shorter than ServiceNow discovery, however writing the integration will extend this time.  

What are you trying to discover?

Discovery applications can discover billions to trillions of CIs in a large organization. You don't want that many CIs in your database for various performance and maintenance issues.  Since you don't want to discovery everything, what are the important CI types you want to discover.

Once you know what CI types you are trying to discover, what are you trying to discover that ServiceNow is not able to? ServiceNow can discover many different types of CIs and what it doesn't discover you can write scripts to discovery more CIs. 


I think it is a good idea to know the possible issues with an integration and benefits of ServiceNow Discovery before the decision is made.  Hope this helps with your implementation choice,