Customer relationship is the key to Organizational growth and so it should be managed as efficiently as possible. Salesforce CRM can be leveraged to remain more connected to your customers while ensure better business performance.
The user can do some changes in their salesforce environment according to the requirement of the customer/client to ensure that it continues to run efficiently and to improve the business. These changes can be as small as the minor updates to existing features or can be as large as new application development project. All these changes have one thing in common i.e. deployment because once the development is done and tested, it will be deployed to production.
A salesforce deployment is essentially the final stage in any project, during which changes made to your instance are pushed live.
NEED
The changes made should be deployed to production once you are satisfied with the solution you have built (tested on UAT) but it can be challenging for the user if any of the followingis not found after deployment,
Any updated or a new Component or Class which is required.
Required permission is not assigned to any component or class or to any user after the deployment.
HOW TO CATER THE NEED?
To overcome the challenges, you must create a proper strategy and a deployment checklist. With the help ofa checklist, you can easily track the TO-DO changes that need to be done on production environment and it can be prepared during the UAT deployment.
UNDER THE HOOD AND TECHNICAL INSIGHTS
In order to make sure you have zero defects during deployment, there are a few best practices every business should observe and enforce to ensure the success of their Salesforce deployment. This would require usersto create two deployment checkliststo ensure smooth and hassle-free deployment
Deployment checklist should be prepared in two different ways:
Pre Deployment Checklist – Before Deployment
Ask the user/client– Before deploying any changes to production,users/ clients should be asked about system usage so that if any error occurs, they will not be affected by it. Mostly it is done on weekends to have minimum or zero impact and the users/clients are already informed about that.
Prepare excel sheet-While developing a new functionality or updating anexistingone in our sandbox which will be further moved into production,you can create an excel file where developer/admin can write the names of all the apex classes, visual forcepages, lightning components,apex triggers, validation rules, workflow rules, custom objects, fields etc. which have been created or modified for deployment. The following actions must be covered:
Creation of a User Profile
User Creation
Creation of Roles based on the user hierarchy provided by the customer
Creation of a Public group and provide access to the newly created user Roles
Creation of Lead Queues and provide access to the newly created Public group
Add Field value for the new Business in ‘Commercial Team’ field of Users, Campaign etc.
Ring Fencing of Data; Create Sharing Rules on Accounts, Opportunities, Campaign so that no other user outside the business can view the data
Creation of Price book based on the events; Share the price book with Public group
Creation the Price Rules and Product Rules, if the application is CPQ.
This sheet will reduce the risk of missing any above actions need to be done by the user during the deployment.
Create test scripts– During the deployment process,minimum 75 % coverageis required for the test class to deploy with its apex class or apex trigger. It is highly recommended that you create a test class just after the creation of apex class or apex trigger and try to achieve coverage of 75 % or as much as possible to avoid coverage error during deployment.
Backup of existing features – Take a full export of the production area where deployment has to be done. In case, something goes wrong,thenyou would have the backup to upload the data again.
Disable email deliverability – Mass changes can trigger lot of system mails and notification, so disable the email deliverability during deployment to ensure your users aren’t bombarded with an avalanche of mails.
Deactivate rules – Deactivate the validation rules, workflow rules, flows, process builders anything that might impact changes or prevent them from deploying correctly. Make a list of what you’ve deactivated so you can reactivate it once the deployment is completed. Make sure that you run tests afteryou’ve reactivated the previous ones andthe new ones to ensure a usergets a fully functioning environment.
Prepare training and documentation – Your users may end up getting confused if you continue making changes without updating them. To avoid any type of confusion, it’s better to organize training sessions and prepare necessary documents so that the changes can be easily understood by them.
Post Deployment Checklist – After Deployment
Reactivate-Reactivate the rules or flows that you have deactivated before the deployment.
CPQ Setup – If the deployment is of a whole new CPQ application then setup the CPQ configuration,create the Quote template and assign the permission to the users of this application.
Assign Permissions to users – Assign permissions sets/access to the users so that they can perform the required operations which they want to perform.
Visibility of Fields and Components – The fields and components which are deployed must be visible to the assigned users who should have the permission to access them.
Unit Testing – After reactivating the rules and flows and assigning the permissions to the users,it’s important to perform unit testing on production to make sure all the changes arein working mode.
Provide Support – If any functionality is not working or users want some changes, provide support to the users so that they can explain their concern to the support team.
BENEFITS:
Salesforce deployment is much more than just pushing a configuration. It isn’t complete until you’ve thoroughly evaluated it for quality assurance in production.You definitely don’t want to impact the business and the customer relationship.
The‘Deployment Checklist’ creates a reliable point of reference for testing and to not encounter any challenges in your deployment.
It will give you the probability of having no error on production andwill increase the efficiency of the projects deliveringand will make it more effective.
CONCLUSION:
Deployment can be a complex and time-intensive process. Rather than jumping into it, it’s prudent to scrupulously plan everything ahead to ensure that everything is accounted for before going LIVE. We should carefully consider the implications of the deployment and take sufficient time to build and test different scenarios before starting the actual deployment, and for that ‘Deployment Checklist’ comes up as a suitable solution.
About Girikon:
As a Salesforce consulting partner, Girikon is committed to deliver excellence by providing high-end Salesforce consulting, Salesforce implementation and Salesforce support services.