There are multiple ways to build an integration with ServiceNow. Depending on your company needs, budget, and timeframe, there is an integration that can meet your needs.
When deciding on your integration plan, there are some important factors to consider.
1. Integration Method
Choosing a method of data transfer is the most important design decision. Fortunately ServiceNow offers various methods to accomplish this task:
ServiceNow provides plugins that integrate ServiceNow with other programs. These plugins often use webservices as part of the plugin, or vendor specific probes. Plugins can require some configuration to meet your needs, but are a helpful start to building your integration.
If there is a plugin available, that is the best choice for integration method in my opinion. You may be able to upgrade the plugin in the future and you may only need to "configure" the plugin, as opposed to building one from scratch.
You can use Webservices to transfer data between programs. This is my preferred integration method, however it can be dependent on your company knowledge of webservices.
You don't really need to understand webservices completely to utilize them in ServiceNow. ServiceNow makes them easier to use. However, understanding the basics of webservices is helpful.
Note: You can build a ServiceNow integration with Webservices without a ServiceNow plugin.
A CSV or XML can be placed on the Midserver or FTP server to import into ServiceNow. You can schedule the import of the XML/CSV file and ServiceNow imports it using an import set and transform map.
The FTP method requires a third-party integration, and I don't advise using that if possible. It isn't that the third-party FTP tools are bad, it is just that they are not completely supported by ServiceNow. ServiceNow is designed for Midserver file transfer and that should be used.
Note: You can build a ServiceNow integration with XML/CSV without a ServiceNow plugin.
You can use JDBC to connect to other databases through the ServiceNow midserver. This is through a scheduled job or script.
Note: You can build a ServiceNow integration with JDBC without a ServiceNow plugin.
You can create Inbound and Outbound Emails to/from ServiceNow to transfer data. This method works best with integrations with CTI applications and other services-based applications. It can have some issues with reliability and differences
You can access ServiceNow through URL both to query data and even create data. There are may possible integrations that can be done this way. You may have issues with cross-site scripting violations, but I have seen some elaborate integrations built this way.
This method works best with integrations with CTI applications and other services-based applications.
SSO and LDAP
You can build an integration using various methods for SSO Authentication.
You can access readonly ServiceNow through ODBC. You can build reports using external reporting tools like SAP Business Objects or Cognos using a ODBC connection. You can also use ODBC as integration if you are just creating a one-way data flow to other applications.
Some larger integrations can have significant scope creep. CMDB integrations in particular can have this issue, so focus on scope is a must. For every type of record you bring over, there is form, list, and dictionary design. If you can keep it limited, that helps a lot.
3. Field Map Deadline and Workshop Times
In some of these integration projects, the discussion of what fields to use and map can take a long time. Be aware of this, and attempt to setup deadlines and role responsibility of the Field Map and workshops.
4. Number of Records
Have to plan out how many records you are bringing over and how that affects ServiceNow. For example, ServiceNow can handle a large number of CIs, but the issue is that people search CIs all the time within Incidents, Changes, etc.
Someone has to be able to maintain this integration once is completed. This issue is often out of my control, because sometimes companies just need complicated integrations for their daily operations. I work on creating good notes and keeping it as straightforward as possible.
Hope this helps with your ServiceNow integrations!