What is the importance of continuously monitoring and maintaining a cleaned up Salesforce instance? To me, it’s a Nirvana stage. Most of the Salesforce projects are implemented with an agile approach with multiple releases happening simultaneously. For enterprise system, there are multiple teams working on the same objects sets, implementing and testing varied functionalities.
While a collaborative and non-conflicting development can be attained by an efficient release management layer, however, one of the highly prevalent issues in majority Salesforce org’s that goes unaddressed is the ability to ensure the data is cleaned up for a frequent and large scale usage.
One of the examples from a project I worked on came up due to not ensuring data sanity in a Sandbox environment. With releases every month from different tracks, the data was corrupted to a level that UAT testers could not create a single quote successfully. Friends, this is the extent to which ensuring a clean data environment not just in prod but even in the lower instance becomes important.
Below is the set of best practices that when followed, will help you established a clean, simplified and easily extendable Data inventory within your Salesforce Org.
Data Completeness and non-duplicate data:
Start with identifying the sources for data in your org. and enable constraints to ensure data completeness and accuracy. Leverage duplicate identification rules or use AppExchange based solutions to identify duplicates within your org. Tools like ‘Duplicate Check for Salesforce’ can be leveraged to find, delete and merge duplicate records.
Control who can create the data:
Enterprise systems tend to have multiple teams requiring a different level of access for the objects. System admins should make sure that the OWD sharing within your Org Is set to the most restricted levels and the objects are opened up only for users/profile/roles that are supposed to be updating/creating records
While many focus on enabling the idea of ensuring clean data with technical users, only a few make sure of enabling the end-users who are actually creating the data. One of the ways you can enable end-users to add accurate data is by creating system guides and enforcing restrictions while data entry (E.g. Making the fields required to ensure a strong Lead mandatory while Lead creation or identifying if the Account created by a user is already existing in the system and asking users to use the existing Account instead)
It always helps to schedule regular checks on the way changes are being added to your Salesforce org. Are there 10+ record types created on a single object? Are there a high number of custom fields created on objects? Are there page layouts and record types not being used in the last 6 months? All these checks help in identifying how simplified your org data model is and the improvements that can be made.
It all starts with imbibing the culture of practicing these steps in your org. It is recommended to having quarterly checks on your Org data health so that you can always identify small data issues before they turn into show stoppers.