What is a customization?
A customization is any change to code that is part of the baseline install of a ServiceNow instance.
What is a configuration?
A configuration is tailoring an instance using ServiceNow best practices and API to meet your requirements without making changes to code that is part of the baseline installation of an instance.
Examples to highlight the difference between a configuration and a customization
Example of a customization:
- You are in the process of implementing the Service Catalog and have a requirement to add additional fields to gather data on the catalog checkout page.
- The catalog checkout page is a UI Macro that is part of the baseline installation of an instance. A change to this code would be considered a customization.
- Someone builds a new "custom" feature into the product (e.g. custom applications, 3rd party widgets, etc.). ServiceNow support will provide troubleshooting guidance, but the customer is responsible for ownership of maintaining and fixing the feature.
Example of a configuration:
- Before an incident is submitted, the resolution code must be a mandatory field. If it is not completed, the record should not be updated.
- A UI Policy can be used to meet this requirement which is one of the many tools within the platform that are used to tailor specific functionality to meet specific requirements.
What if you decide to customize code that is part of a baseline installation?
Since the code is part of the baseline installation and has been customized, the following would occur:
- You would need to maintain that code going forward
- You would be responsible for making sure that functionality still works after an upgrade
Can you still receive support on a customization?
Yes, however, if during a support call it is determined that the customization that was made is the cause of the issue, the support team would advise you to revert back to the code that was part of the baseline installation so that the support team can assist you.
What are the ramifications of performing a customization?
The ServiceNow platform is extremely flexible and can fulfill a wide range of requirements. However, the ServiceNow platform uses a framework that supports these different applications in how they process tasks, how forms are rendered in multiple browsers and the overall user experience.
ServiceNow relies on the framework’s integrity in order to develop and provide support in a consistent manner. If you have requirements and ideas for enhancements, you can submit an Enhancement Request to the ServiceNow development team. Each request is evaluated and, if approved, will be incorporated into a future release.
It is critical to understand what a customization is, and how it can impact before deciding to carry it forward.
Customizations should be made to baseline objects where necessary, so that conflict resolution and decision making can be appropriately recorded in the updates. Hidden customizations may cause administrators to overlook updates in future assessments in case reverts or merges are necessary.
If it is essential that a customization be made, you should adhere to the following process:
- Export the original record before the customization, as a backup maintaining the OOB sys_id for future restore if needed.
- Make sure this is the only update that is made to the original record. Refer to these useful articles:
- Not every record in the system has an Active flag, for example, UI Pages. If a customization needs to be made here, you would own it and need to maintain it going forward.
- Administrators are responsible for verifying that the performed customizations work after an upgrade, and for keeping track of what customizations were made.