You have been working on Salesforce implementation for a long time and as an Architect you need to do X-ray of Salesforce implementation because of
- Take a decision to decide brownfield vs greenfield implementation
- Can we bring new business capabilities to existing org
- Why does it take time to make even more minor changes
- Why new capabilities break existing functionalities
If your team is facing the above issues, chances are pretty high that you have technical debt in Salesforce, and it’s time to do a health check.
However, how can you do the health check, what are some essential aspects of reviewing your implementation?
In this blog post, I would share some pointers on how health checks can be done. If there are some other areas you think should be considered, please feel free to drop comments in this post.
1. Total Objects in Org
There is a limit of 3000 custom objects, if the total objects are more than 1500, it could be a hint that you have a complex org
2. Records in each org
If you are nearing the storage limit, it’s an indication of a large data volume, and you need to consider an archival strategy.
3. Total field on each object
Check how many objects have used 80% capacity of fields. Make sure to run an analysis to see how many fields are used. You can use AppExchange tools like a field trip to know if fields are used or not.
4. Salesforce Classic Org
5. Identify objects having many sharing rules
Sharing rules could impact org performance. There is a limit of 300 sharing rules per object but that does not mean we have to use a limit. If total sharing rule is above 150, its time to think about similification
6. Workflow & Approval Rules
There is a limit of 500 rules per object, identify the object which has most of the active rules and plan to remove inactive rules.
It is best to know how many flows we have in the org and compare them against the limit.
8. Validation rules
Too many validation rules on objects could impact performance. If there are any inactive, make sure to clean them.
9. Inactive rules
I already mentioned above but it’s worth focusing on this area. Get the list of all inactive approval processes, validation rules, workflow rules, process builders, etc, and plan to clean them.
10. Process Builder
Process builder should be moved to Flows because of better performance. if your org still has some old process builders, make sure to plan to migrate them as a Flow.
If your org still has attachments, plan to migrate them as Salesforce files. There are utilities that could be used to migrate attachments to files.
12. Unused Reports & Dashboard
Run a report to identify unused reports, that’s fancy. This is one of the major technical debts that I see for most of our customers. Over a period of time, we create thousands of reports. If reports were not run in the last 1 year, you can assume it’s safe to delete them.
13. Unused Page layouts & Record Types
Identify how many page layouts are just sitting there but not mapped to any profile or record types are not mapped to any profile. Plan to clean them up
14. Unused Profiles
Do some analysis and identify if there is any custom profile that was created previously but does not have any user assigned. If there are few users, investigate if the permission set can be used or not.
Check your org that what % of customizations are done. Anything above 70% means the org is complex. Make sure to run code analysis using PMD & security analysis using Checkmarks and make sure you have optimal code quality.
16. Visualforce pages
There are still a few features like render as PDF or email template that needs Visualforce pages. However, check if there is possibilities of replacing visualforce pages with lightning components or change its style to support the lightning experience.
17. Aura Components
Aura components could drag the performance of your overall applications. Make sure to plan to replace the Aura component with LWC.
18. Admin Permissions
Identify how many profiles have permissions like Modify All Data, View Setup, etc, and make sure only a few users have those profiles assigned. Salesforce implementations should follow the Zero trust policy.
19. Use Salesforce Health Check
Run the Salesforce tool for a health checkup and make sure you have a plan to address the recommendations.
20. Find Unassigned Roles
Identify how many roles have no user assigned and see if that can be cleaned up
Do you think I missed something important? please feel free to drop comments in this post & I could add that tips from you highlighting your contribution.