Friday 17 May 2019

Guidelines for Deployment to Production


Any time you deploy changes to a production environment, your users are directly affected. It’s a good idea to have guidelines for rolling out new functionality.

  1. Don’t break anything.
    1. Release your production functionality in a test environment first. If you successfully deploy and test in a full-copy sandbox, you can be fairly confident that your deployment to production will succeed.
    2. Back up all your metadata.
    3. Have a backup plan: One method is to create another sandbox as a backup. The backup sandbox contains change sets and scripts to revert as many changes as possible, plus the manual steps required.
  2. Schedule the release.
    1. Create and announce a maintenance window during which your organization is unavailable to most users. Try to make this time during off hours or in periods of low activity.
    2. Use profiles to control maintenance updates.
  3. Inform users of every change.
    1. Create detailed release notes that document the new functionality and behavior changes.
    2. Send an email announcing the main features with a link to the release notes.
    3. Create webinars and training sessions to educate users.

Use Profiles to Limit User Access
During a deployment window, you can use profiles to limit end-user access to the production organization.

  1. Alert all active users about the maintenance window using the email wizard. From Setup, enter Mass Email Users in the Quick Find box, then select Mass Email Users.
  2. Create a profile to lock users out during the maintenance window by editing the login hours. Be sure that system administrators or integration users have access if they need it.
  3. Roll out objects, tabs, and apps to different user profiles if you want to allow some users access for acceptance testing.
If your organization includes many profiles, use the following strategy for setting up a maintenance window.
  1. Create a profile named Maintenance with all login hours locked out.
  2. Use the Data Loader to extract and save a mapping of users and their user profiles.
  3. At the beginning of the maintenance window, use the Data Loader to change all user profiles, except the administrator’s, to the Maintenance profile. It is important to leave login access with the administrator. Otherwise, all users could be locked out of the system indefinitely. If integrations are going to run during the maintenance window, also don’t lock out the integration user.
  4. At the end of the maintenance window, use the Data Loader to reload the users with their original profiles.