"Is this change a configuration or customization?" This is one of the most popular questions during requirements gathering for a software implementation.
This is especially true when you are talking to someone familiar with older software. In the "old days", a configuration could take minutes and a customization took hours. It made a big difference in your decisions during requirements gathering.
I am from the old days, these young people have no idea how easy they have it now. :)
Low Code Development
Customizations are much easier to do than they were 10 years ago. This is due to advancements like drag-and-drop functionality, expression building, workflow, and other low-code/no code development. When you can build an entire app in one hour without code...this means low code development has really changed the config or customize debate.
This doesn't mean life is easier for the development team, people have a lot more expectations than ever before. People believe software should be as easy at work as it is at home. I mean if Facebook has it, ServiceNow should too!
Another advancement that has really changed is "Personalization". It used to be that you only allowed people to change their list view. Now they can change the form too, make reports, adjust their notification preferences, add themes, change how fields look, and all kinds of other features. This "user enablement" along with Self Service, Service Catalog, and Knowledge Management have instilled a "DIY" approach to issue resolution at many companies.
How to Classify Code Changes
Customization, Configuration, and Personalization can be vague especially in flexible and customizable products like ServiceNow.
This is my current breakdown:
- Accessibility and Themes
- UI Look and Functionality
- Date Time Look, Timezone, and Format
- Form Fields, Tabbed Forms, Related List Loading
- Notification Preferences
- Reports, Filters, Gauges, and Homepages
- Favorites and Tagged Records
- Adding Data Elements like Groups, Users, Departments, Users to Groups
- Adjusting Properties Files
- Creation of Fields, Field Layout, List Layouts, Views
- Service Catalog Items
- Home Page Changes
- Metrics and SLAs
- UI and Data Policies
- Style Sheets
- Business Rules
- Client Scripts
- UI Actions
- Script Includes
- UI Macros
- UI Scripts
- Major Data Changes
- New Tables
- New Applications
- Complex Security
- Access Controls
- Grey Areas (Kind of easy, but can be complex)
- Transform Maps
- Email Notifications
Questions to help mark as a customization:
- May affect future upgrades
- Maintenance requires experienced developer