I was recently asked a question about following best practices while implementing a Salesforce Service Cloud solution. The question was specifically about any defined guidelines to follow while implementing a Customer Service solution on the Salesforce platform. I couldn’t find any specific document which helped me lay down the best practices to be followed, so I decided to create a document which lists down the phase wise best practices one can follow to make a Service Cloud implementation a success.
Typically, a Salesforce implementation project is divided into six phases
Plan Phase Best Practices
|Channels||Identify multi-channel support options.||Builds loyalty by allowing customers to engage support through their channels of choice. Email, Web, and social options offer call deflection and reduced telephony costs and cost per case.|
|Business logic||Prioritize context-specific support by leveraging declarative logic, starting with business critical scenarios, then working toward more general use cases.||Assigns the right agent to the right case at the right time by using queues, assignment rules, validation rules, escalation rules, workflow rules, process builder and visual flows.|
|KPIs||Identify and align your solution design to the client’s Key Performance Indicators (KPIs).||Keeps project efforts aligned with the client’s priorities. Ensures buy-in and participation of project stakeholders. Allows the client to assess the business value of the project.|
|Rollout||Apply a phased rollout approach for large implementations.||Allows you to identify process improvements and apply an iterative approach to subsequent phases.|
|Knowledge||Enable the same knowledge base for partners, customers and internal staff, and allow new content to be added by each of these channels.||Reduces the overhead of creating multiple versions of the same information for distribution to different groups.|
|Scope, Processes||Understand the client’s end-to-end case management process from multiple channels during the scoping effort.||Avoids scope creep later in the project by anticipating potentially complex case management processes, including assignment rules, escalation, sharing, etc.|
|Scope, Customization||Scope any custom functionality separately with the help of a Senior Technical Architect.||Avoids scope creep by anticipating possible needs for Apex classes/triggers to automate specific business processes or for a custom look and feel using Visualforce pages.|
|Scope, CTI||Identify CTI testing resources and requirements early in the scoping process.||Ensures early engagement of the CTI adapter vendor and client resources since testing is typically not included in scope from the CTI vendor.|
|Scope, Global||Identify as many global requirements as possible early in the scoping effort.||Encourages keeping the client’s global counterparts and systems in the loop at all stages of the project to ensure worldwide success of the implementation. Anticipates the common gotchas of emails in multiple languages and the definition of global business hours.|
|Integrations||Keep the client’s initial integration as simple as possible and understand the demands of the process that requires integration.||Allows for iteration over time and helps the client clarify what type of integration is needed and what technology will provide it. Helps the client to align the integration with planned initiatives, ensure integration fit with native infrastructure, and accommodate corporate security standards.|
|Communication||Develop a Communications Plan that focuses on early and often communications, active involvement of the end user audience, and honest messaging around the true value of Salesforce, and shares a clear and accessible support plan with end users.||Provides the foundation for a solid Change Management plan that ensures user adoption, usability, and process improvement.|
|Training||Develop a Training Plan that addresses scope, audience, schedule, and delivery. Include quick guides or steps that cross-reference the old task with the new task.||Ensures a smooth transition by bridging the gap from old to new. Addresses the challenge of taking agents off the phones for live training. Training increases user adoption and confidence. A clear plan and training content establish and clarify expectations.|
|Discovery||Provide a requirements preparation questionnaire to the client, gather existing materials from the client, and conduct discovery interviews.||Prepares you for the Requirements Workshop in the Analyze phase and for understanding Support’s current pain points, process gaps, and needs.|
|Discovery||Shadow the end users in their day-to-day tasks.||Sheds light on the “as is” processes. Informs your recommendations that you bring to the Requirements Workshop in Analyze.|
Analyze Phase Best Practices
|Business processes||Capture all use cases from the client’s project steering committee.||Allows you to identify how the existing “as is” processes would map to the new “to be” processes to meet the client’s requirements, especially for migrations from legacy case management systems to Salesforce.|
|Business value||Discuss opportunities for business value throughout the Analyze phase.||Keeps the team’s efforts aligned with the client’s priorities and encourages buy-in and participation of client stakeholders throughout the project.|
|Out-of-scope||Identify useful requirement variables that are typically found outside of Salesforce.||Helps determine case assignments based on agent workload, schedules, skill level, etc. Telephony systems provide metrics related to call volumes, average handling time, and peak times.|
|Collaboration||Discuss collaboration requirements and resource options.||Chatter allows support reps to follow and engage experts, and to use Chatter groups to work closely with other agents working on similar case types.|
Design Phase Best Practices
|Change management||Establish and implement a Change Management Plan that addresses user adoption, usability, and process maintenance concerns.||Sets expectations, eases concerns, and reinforces a culture of open communication. A solid Change Management plan will focus on continuous improvement, encourage feedback, and prioritize accountability. Align goals with measurable behaviors to track impact on KPIs.|
|Usability||Always look for design options that provide users with an application that is quick, user friendly, and easy to navigate.||Increases agent productivity and reduces call time. Usability is crucial to the focus of most call center metrics, like improving customer satisfaction or reducing cost.|
|Related objects||Think about the other objects that relate to the case object and leverage them as part of the solution.||Helps determine case assignments based on agent workload, schedules, skill level, etc. Telephony systems provide metrics related to call volumes, average handling time, and peak times.|
|Collaboration||Discuss collaboration requirements and resource options.||Entitlements can help keep customer satisfaction high through efficient management of service level agreements, and Salesforce Knowledge can empower agents with immediate access to and collaboration on case resolutions.|
|Data Entry||Use record types and page layouts to help the agent capture only the data that they need based on the type of case.||Reduces clutter and the need to scroll to find data on the case and account objects by using page layouts to get rid of unnecessary fields.|
|B2C||For B2C call centers, know the visibility impacts and sharing requirements of your client before assuming you need to use Person Accounts as part of the design, especially if the organization is used for SFA.||Keeps visibility simple and reduces data volume.|
|Email-to-case||Consider including email-to-case in your design to automate the process of generating low-complexity, low-priority cases.||Provides customers with the ability to seek support when and how it is most convenient for them.|
|Entitlements||Work with the client to understand or define the client’s process for managing entitlements.||Impacts multiple design decisions to create a solution that fits the business and is maintainable. Entitlements and milestones allow the client to track contract information and to more effectively meet service level expectations.|
|Entitlements||Identify how the client is tracking products and adapt your approach for entitlements to match the client’s product model.||Identify how the client is tracking products and adapt your approach for entitlements to match the client’s product model.|
|Entitlements||Identify how the client will manage their case load based on milestones.||Considers how entitlement information will be managed and displayed for users. Design of entitlements should be broader than just putting milestones on a case.|
|Entitlements||Identify the process that your will client follow if a customer is not entitled to support.||Uncovers important scenarios that will avoid agent confusion and improve the overall deployment.|
|Web-to-case||Consider using multi-select picklist in the client’s Web form.||Allows customers to report cases on several products, topics at a time.|
|Sharing||Design a sharing model that addresses organization-wide defaults, role hierarchy, and profile permissions appropriate for your client’s user access requirements.||Ensures information security and protects the quality and accuracy of case information.|
|Case teams||If your design includes case teams, consider using workflow alerts and assignment rules.||Saves time and creates visibility by automating notification and assignment processes for case team members.|
|Contacts||Before creating new records such as contacts, search first to ensure the contact does not already exist. Add cases to existing records if applicable.||Leads to better data integrity, less duplicate data, and more accurate reporting.|
|Profiles||Consider assigning each record type to a specific support user profile if the client has these specific access requirements.||Limits the types of cases a support user can create.|
|Queues||Limit the number of queues to a practical number and consider staying close to the number of queues in the inbound interaction methods. Queues should not outnumber agents or products.||Keeps the configuration consistent with the client’s business process.|
|Escalations||Limit the number of times case ownership changes. If the client is going to switch case owners more than 3 times, question the validity of the business process.||Indicates the maturity of the call center since case ownership is a critical design characteristic.|
|Escalations||Enable early triggers in the Support Settings for cases if appropriate.||Ensures escalation actions are triggered before the Age Over hour that you specify.|
|Process||Capture each interaction as a case, even if the customer is not calling about an issue or if it is a one-and-done call.||Standardizes the client’s case management processes and produces consistent and simple reporting. Capturing every call via a case allows reporting on the case object and fine-tuning the report by different case types and case statuses.|
|Service Cloud Console||Name the Service Cloud console application according to its function to the client.||Makes the user interface relevant to how the client uses the Service Cloud console.|
|Service Cloud Console||Pick the center of the client’s business process as a primary tab and related items as sub-tabs for the Service Cloud console.||Enables more efficient call handling.
Inbound call centers need the ability to search a record or create new records quickly. Outbound call centers need the ability to easily work through a list of tasks.
|Service Cloud Console||Use the Service Console Integration Toolkit.||Ensures that Visualforce pages will display correctly in the Service Cloud console.|
|Service Cloud Console||Configure the interaction log for the Service Cloud console.||Allows agents to write notes in call logs while entering and working on cases in the Service Cloud console.|
|Analytics||Identify key call center metrics and KPIs early and determine the source of those metrics.
Determine whether bringing a portion of data from the telephony system into Salesforce would be valuable for reporting.
Evaluate the use of a data warehouse and Business Intelligence tool to produce reports that represent a combination of CRM data from Salesforce and telephony data from other sources like ACD, IVR, WFM, etc.
Tailor reports and dashboards to support reps and management.
Establish base line metrics of success.
Establish periodic goals after initial go-live (1 month, 3 months, 6 months, and 1 year).
Determine what type of signage or manual leader boards in the call center can be replaced with a monitor that displays Salesforce dashboards.
|Ensures a successful implementation by defining and measuring the client’s KPIs. Metrics and dashboards are critical to any support center implementation.|
Build, Validate, Deploy Best Practices
|Build: Training||Involve the client’s training department in developing curriculum.||Leverages the client’s resources and terminology while sharing your expertise and product knowledge.|
|Build: Data preparation||Use data loader or an Extract Transform Load (ETL) tool for migration and transformation of the test set of data.||Prepares the sample set of data as part of the data cleansing, formatting, and mapping process before migration.|
|Build: Sandbox||Use the sandbox to build and test the solution design.||Avoids disrupting the client’s live production org.|
|Build, Validate: OOB||Keep application modifications to a minimum.||Leverages out-of-the-box features that are inherently flexible. Minimizing customizations and integrations eases ongoing administration tasks.|
|Validate: Data quality, Integrations||Review the data quality and exceptions of legacy or back-end systems before integrating with Salesforce.||Uncovers potential data quality issues during the process of preparing the integration test environment.|
|Validate: User acceptance testing||Use the client’s use cases for end-to-end testing (UAT).||Increases usability by grounding testing in the client’s business process.|
|Build, Validate, Deploy: Integrations||Integrations should not be part of any prototyping “phase” or deliverables.||Avoids risks to the quality and scalability of integrations.|
|Build, Validate, Deploy: CTI||Use the AppExchange to find and recommend a pre-built third-party CTI adapter.
Detail functional requirements with the CTI vendor.
Recommend the client signs a contract with the CTI vendor.
Anticipate testing access and environment issues.
Require onsite presence of CTI vendor.
|Saves time and frustration. The contract details ownership of testing responsibilities, ongoing support and maintenance, assumptions, and all related adapter costs. Preparing for the vendor’s requirements avoids access and network saturation issues.|
|Deploy: Training||Use the sandbox environment for all training.||Protects the client’s live production org and allows users to experiment without affecting critical data.|
|Deploy: Final migration||For an org that is already in production, send notification to all administrators to freeze configuration changes. Use the sandbox to do test loads prior to the final production load.||Minimizes the need to finalize the data load with new data created in legacy systems since the Build phase. Using the sandbox avoids disrupting the client’s live production org.|
|Deploy: Security||Show the client http://www.trust.salesforce.com.||Provides the client with information about online security threats and Salesforce-planned system downtime.|
I hope this article has been helpful — feel free to email me at the contact information listed below, and best of luck in implementing your Service Cloud solution.
Roshan Sahatiya – Salesforce Solutions Architect at Capgemini
Email – firstname.lastname@example.org