Running Head: SALESFORCE MIGRATION STRATEGY
1
Strategies guide to migrate to Salesforce from legacy CRM in telecom domain
By Subrata Mukherjee
Class: ITEC 630 9044 Information Systems Analysis, Modeling and Design UMUC Graduate School of Management and Technology
Abstract: In the absence of a comprehensive strategic guideline, legacy CRM to Salesforce migration becomes enormously painstaking and error prone operation. Migration to Salesforce is primarily a two-step process, which includes data migration and enterprise system integration. This paper defines the best-practice
strategies by comparing and contrasting the pros and cons of each approach in data migration and system integrations, along with risk and benefit-cost analysis. Even though this strategic guide primarily focused on telecom domain; however, it can be used as a foundation to develop the domain agonistic Salesforce migration strategy.
Strategic guide to migrate to Salesforce
2
Executive Summary This paper illustrates an in-depth view of the migration process from legacy CRM system to the cloud computing based Salesforce. Lack of unified customer view and absence of interoperability with the other enterprise systems makes legacy systems expensive to maintain and suboptimal to operate. As a result, organizations lose their valuable customer base and revenue to their competitors. Salesforce as a platform appears to be the savior. Migration of legacy to Salesforce entails acquiring the software license (based on the usage), migration of the legacy CRM data, and integrating Salesforce with the other enterprise systems. The migration process requires a profound analysis and design to establish a best practice guide for the telecom industry. Migration from legacy to Salesforce is a composite process, which consists of two primary activities, viz. – legacy data migration and enterprise systems integration. Data migration deals with identification, extraction, cleansing, transformation, and loading of the legacy data to Salesforce. Whereas, integration of Salesforce with other enterprise systems encompass establishing a homogenous and automated data flow among various systems. The enterprise systems integration involves analysis and design of data-flow diagrams (DFD), Use Cases, and the choice of integration technologies. The extraction, loading, and transformation (ETL) part of the data migration can be achieved in two ways, viz. - custom SQL along with file feed (XML or flat file), and commercial ETL tool. Each of the forgoing methodologies have pros and cons. Selection of the right methodology is a multi-variable optimization problem, where variables are data volume, complexities in transformation logic, security, enterprise risk appetite, cost of the migration, and resources. Similar challenges are encountered in selecting the enterprise application integration (EAI) technologies for establishing communication between various enterprise systems and Salesforce. A comprehensive best practice strategy is needed to optimize the migration process. Best practices contain technical know-how and optimal solution for each case based on the academic principles and documented knowledge base (lesson learned). As the best practice guide is built on documented knowledge base, which has years of industry wisdom, it can also be used a risk mitigation planner. Additionally, the best practice guide can be useful in the effort estimation or sizing of any future Salesforce migration. Use of the best practices will reduce the occurrence of wrong doing in the process; hence process efficiency will be increased. As a result, more enterprises will drift towards Salesforce to remain competitive in the marketplace.
Strategic guide to migrate to Salesforce
3
Table of Contents Table of Contents.............................................................................................................................3
List of Figures: Figure 1: Data migration system setup..........................................................................................15 Figure 2: System integration physical setup..................................................................................15 Figure 3: Published reduction in TCO by using Salesforce (Perry, Hatcher, Mahowald, & Hendrick, 2009).............................................................................................................................16 Figure 4: Saving comparison (Perry, Hatcher, Mahowald, & Hendrick, 2009)............................16 Figure 5: Data flow diagram of integrated system.........................................................................17 Figure 6: System integration cause-effect diagram.......................................................................17 Figure 7: Data migration cause-effect diagram.............................................................................18
Strategic guide to migrate to Salesforce
4
List of Tables: Table ............................................................................................................................................18 Table ............................................................................................................................................19 Table .............................................................................................................................................19
Strategic guide to migrate to Salesforce
5
Introduction Customer Relationship Management (CRM) is a quintessential platform to manage the greatest money churner of a telecom line of business (LOB) - customer management. With the contemporary waves of globalization and advent of cloud computing, number of organizations have decided to migrate from the legacy Customer Relationship Management (CRM) solution to ‘Platform as a Service’ (PaaS) based Salesforce platform (Asbe, 2011) to enhance profitability by increasing operational efficiency. The advantages of using Salesforce are already proven to be remarkably valuable to a variety of companies. However, inadequacy of comprehensive migration strategies makes the migration process complicated and error prone. In order to design a strategic migration guide, analyst must conduct a systematic analysis of each process in Salesforce migration through expert judgment and industry-academics knowledgebase. What does Salesforce migration entails? Salesforce migration encompasses of two processes, viz. - existing legacy data migration to Salesforce, and integration of Salesforce with the other enterprise platforms. Legacy data migration ensures existing customer data, and in-flight order will be treated seamlessly before and after the migration. On the other hand, integration of Salesforce with the other enterprise systems enables automated data flow among enterprise systems, viz. - billing, provisioning, inventory, ordering, and enterprise product catalogue. End-to-end (E2E) integration also reduces the requirement of human supervision or manual swiveling. Replacing the labor-intensive manual tasks by automated tasks prunes down the total cost of ownership (TCO) by reducing operating cost . An enticing statistic published by researchers shows organizations that adopted Salesforce, reported an average savings of 56% in TCO in the first three year (Perry, Hatcher, Mahowald & Hendrick, 2009). Despite all these great values, the astounding complexities and the inherent risk of the process combats its astronomical popularity, which advocates of having a unified migration strategy to make the legacy to Salesforce migration efficient and cost-effective.
Analysis and Discussion Defining migration strategies: The migration process commences with the analysis and design phase. In the analysis phase, requirements discovery takes place by interviewing the key stakeholders. The interview explores what data need to be migrated, what transformation rules are needed, what type of validation logic are required, how much cost is incurred, how data will flow across the enterprise systems, and the governance of the integrated system. Defining the Salesforce migration strategies involve analysis of the following –
Strategic guide to migrate to Salesforce
6
Optimal choice of software development life cycle (SDLC)
How much data needs to be migrated from legacy platform and the nature of data
Is there a need to integrate with the other enterprise systems to perform the up-stream and down-stream sync?
What are the risks lurking in the migration process?
What type of security measures and governance limit?
What is the business benefit of migration of legacy platform to Salesforce?
How the quality of the deliverables would be maintained?
Last but not least, what type of licensees does an enterprise need to procure? Table-2 in Appendix-2 shows the survey questionnaire to decide whether an organization needs Professional license or Enterprise license. If any of the questions turns out to be affirmative then Enterprise license is needed.
Legacy data migration: Migration best practices: During the analysis phase, the source of truth for each data entity is discovered. Not all the legacy system data go to cloud, e.g. – finance, product catalog, etc. are not meant to be part of the data migration. Identifying the right entities and profiling the respective data can be performed by exploring the answer to the following questions (Khizhnyak, 2007) –
Which are the data entities need to be migrated?
What are the data extraction and transformation strategies?
Is ETL preferred over manual scripting? Even after data discovery phase, not all the legacy data can be seamlessly migrated to Salesforce,
because of difference in data structure between legacy schema and Salesforce. Core CRM entities, such as – contact, address, prospect, opportunity, campaign, survey, and account are easy to migrate. On the other hand, complex entities, e.g. – user tasks, system tasks, installed services, and multi-site accounts require complex transformation rules to migrate them. During the JAD session analysts assess the existing state of the data and compare it with the Salesforce data structure to determine the required transformation
Strategic guide to migrate to Salesforce
7
rules (Levin, 2008). From best practice perspective, extraction-transformation-load (ETL) tool is a preferred approach over the custom developed SQL for Telecom industry; because the use of commercial grade ETL saves time and reduces defects by eliminating the uncertainties from the process. Figure-1 in Appendix-1 shows the strategic setup of the data migration system. Barring available human resources, data volume and cost are two primary drivers in the migration tool selection process. Most of the contemporary ETL tools are good for high volume data transfer. Tools also provide user friendly drag & drop based user interface (UI) to perform the visual transformation of the data. As a best practice, simple rules should be using UI based transformation logic; however, the complex transformation rules require custom SQL scripting. Table-1 in Appendix-2 shows a qualitative comparison among leading ETL tools (Levin, 2008). In the Salesforce data migration process, ETL tool is used for extraction of the selected set of data from the operational database and applying the transformation rules on them before transmitting to Salesforce. During transmission phase the transformed data from staging schema moves to the cloud. Salesforce out of the box equipped with lightweight and platform independent tools: data-loader and bulk-loader. As a best practice, any small migration, where number of record less than 1million dataloader is a good choice. However, bigger migration requires bulk-loader (Anonymous, 2010). This paper will primarily concentrate on bulk-loader as telecom industry deals with terabyte of data. Bulk-loader uses customize schema mapping between sources (legacy) and sink (Salesforce) to determine the placement of the data in the cloud (Anonymous, 2010). This tool is efficient enough to transmit 5 million records per day (depends on the license type). Salesforce internally splits any given batch into smaller transaction units; each unit contains 10,000 records (Khizhnyak, 2007). On successful completion of every transaction, Salesforce acknowledges the caller system with ACK message (Khizhnyak, 2007). Integrity of the transaction and data is taken care by the Salesforce platform .
Risk mitigation strategies in data migration: The cause-effect diagram in Figure-6 in Appendix-1 illustrates various root cause of the issues pertinent to data migration. The remediation of the issues are given below -
Staging schema: Performing transformation logic on an operational database is an extremely error prone and high risk operation. It may lead to loss of existing data, data corruption, and poor user experience. As a best practice, staging schema is utilized for the data loading and transformation. Figure-1 in Appendix-1 shows the data migration system setup.
Strategic guide to migrate to Salesforce
8
Market by market rollout: As a best practice, migration should be a phased approach, not a flash cut to minimize the risk. In case of phase approach, if the migration is unsuccessful, business will not be strangled. Impact of failure is localized as oppose to enterprise wide.
Connectivity: This is one of the major operational issues IT industry ever encountered. As a best practice, connectivity between various data-sources in different sandboxes needs to be validated. This will reveal the requirements of ant Firewall port opening as well.
Security: In data migration process, data traverses over the public internet (red zone), which may poses security threat. Bulk-loader out of the box equipped with two factor authentication, which consists of a dynamic token with specified time-to-live and login/password. As a best practice, use of DMZ proxy is mandated. The proxy will terminate all the inbound traffic based on the specified IP range. Also transmission of the data requires using 128 bits encryption, e.g. – HTTPS, to ensure data integrity. Figure-1 in Appendix-1 shows security schema .
Monitoring: Unsupervised operation is considered as a main source of risk. Best practice suggests that the migration should be monitored and controlled. Salesforce’s Bulk-loader has a configuration based monitoring facility, which is capable to send out SMS and emails in the event of exceptions.
Governance: Salesforce as a hosted platform to prevent the denial of service (DoS) attack, it does not allow unlimited data loading in 24 hours period. As a practice, Salesforce has restricted the number of transactional batches to 250,000 per day.
Integration with enterprise systems: Systems integration best practices: Defining the system integration strategies requires profound understanding of the various Use Cases and the data flow among them. Table-5 in Appendix-1 shows the data flow diagram and Table-3 in Appendix-2 shows various Use Case impacted by migration. Like any CRM systems, Salesforce need to be integrated with the other enterprise systems to establish automated data sync between the upstream and downstream systems. Integration between two systems means, two systems will communicate/notify each other on occurrence of the specified events, e.g. – on successful completion of order completion, phone number will be release from the ‘TN’ inventory service. Integration not only reduces the TCO of the
Strategic guide to migrate to Salesforce
9
system, it also curbs the source of manual error infiltration to the system. There are quite a few established enterprise application integration (EAI) methodologies exists, such as – real time Webservice based point-to-point integration, messaging based asynchronous integration, and batch feed (Linthicum, 1999). In telecom parlance, major enterprise systems require to communicate with the CRM are - billing, provisioning, inventory, ordering, finance, accounting, and enterprise product catalogue. Figure-2 in Appendix-1 shows the system integration setup. Selection of EAI methodology is context specific, which considers the following factors in selection criteria -
Business criticality of the data: Some of the data are business critical; they need to be synced up with the other system in real time. Also, this data set characterized by low volume data.
Life span of the data: Some of the data are time sensitive by nature, which means with time this dataset changes. In the event of time sensitive data change, all the downstream consumer of this feed needs to be notified in real time .
Asynchronous communication: If caller system does not wait for the processing of the record, it delegates the responsibility to the processing system to push the result on completion on the processing.
Synchronous communication: In this model caller waits still the complete response is received.
Guaranteed delivery of the data: Ascertain the data delivery in guaranteed fashion.
Size of the data to be uploaded: Enterprises may require large volume of data to be transmitted among the systems, as well as small volume.
In the above mentioned scenarios, if the two systems need to know data in real time, synchronized Webservice is the right EAI methodology, e.g. – order management system requires obtaining the telephone number for the new customer from inventory upon order completion. Webservice can be further divided from SOAP based and RESTful Webservice (Linthicum, 1999). If the caller systems need to be notified asynchronously then service bus is a better option (Linthicum, 1999). e.g. – during order completion, customer credit checking is performed as a background process. On completion of the credit check, the credit analysis system pushes the result to the service bus for the order management system to process.
Strategic guide to migrate to Salesforce
10
On the other hand, if a large chunk of data needs to be transmitted between the system and in non-real time, then batch feed would be ideal way (Linthicum, 1999), e.g. – update of enterprise product catalogue. Table-3 in Appendix-2 shows various Use Cases in the telecom domain that requires EAI implementation.
Risk mitigation strategies in enterprise system integration: The cause-effect diagram in Figure-7 in Appendix-1 illustrates various root cause of the issues pertinent to system integration. The remediation of the issues are given below -
Service delivery guarantee: Messaging based systems use service bus to establish communication between the systems. To immune the message from any system failure persistence guaranteed messaging is employed. Also as part of the best practice, whichever messages are unable to process needs to be move out to error queue.
Failover and load balancing: Due to high transaction volume associated with the telecom business, a load distribution among the servers is required to meet the response time SLA. Also to increase the uptime of the service availability a fail-over mechanism need to be place. As a best practice, Farm based active-passive server configuration is a preferred approach .
Security: Salesforce integration with the other enterprise systems often requires communicating outside the corporate DMZ proxy, which call for additional security. Any incoming traffic should always go through the proxy. Internal end-point for all sorts of services will be abstracted at the proxy layer from the external world. This will substantially reduce the chances of intrusion. Each of the integration call from inbound traffic needs to be validated using two factor authentication.
Services backed by batch: To ensure delivery of the data and a fall out mitigation strategy, a batch in a specified time interval should be running. This batch will carry past hour worth of Webservice call data to avoid any data loss.
Server virtualization: OS level server virtualization will enhance the system usage; in addition to reduce security concerns and other privacy threats.
Strategic guide to migrate to Salesforce
11
Choice of SDLC The choice of SDLC of a project varies according to many factors, such as - type, size and time. Like any other cloud computing platform, migration to Salesforce tends to have short release cycle, which supports agile methodology. Unlike traditional SDLC, agile is not ardent advocate of the process. It is more of an iteration based small release cycles, where user community continuously validate and provide the feedback about the product and maintain backlog. The agile methodology has five phases, viz. – exploration, planning, iteration, productionizing, and maintenance (Kendall & Kendall, 2008). In agile cycle, main emphasize is on unit testing and user acceptance. As a result, formal review and documentation process generally gets lower priority. Salesforce out of the box provides a development platform - Force.com, which takes care of the boiler plate code; it also enforces the quality criteria, unless 75% of the test cases are passed it does not allow to promote the codebase to production. Developing an application becomes much high-level activity; as a result, gap between SME and developers narrows down.
Business benefit by migrating to Salesforce Globalization changed the business model in every vertical in the marketplace. Focus of the industry shifted from local to global market, which promotes fierce competition and survival challenges. This accelerating pace of globalization has profound effect on telecom industry too, because of rapid introduction of the latest technologies, sky rocketing operational cost, and competitors around the world entering to the marketplace. Organizations are striving to reduce the TCO to optimize their return on investment (ROI) (Nash, 2008) to rein the market. The virtual MSP model of Salesforce provides five distinct business benefits – better performance, high customer satisfaction, low time to market, agility in the enterprise operation, and short release cycles (Perry et al, 2009). Salesforce provides configuration based out-of-box functionalities, which expedites release cycles over custom coding. Another major benefit of Salesforce is using AppExchange it provides selected features from other apps to the user without stretching end-users budget. Companies migrated to Salesforce were able to reduce the labor costs per application by 76%, which translate to average saving of $262,000 per application per annum (Perry, Hatcher, Mahowald & Hendrick, 2009). Figure-3 and Figure -4 in Appendix-1 shows the reported annual savings after migrating to Salesforce.
Strategic guide to migrate to Salesforce
12
Results The objective of this term paper is defining a comprehensive Salesforce migration strategy for telecom domain. By systematic analysis all the major processes involved in Salesforce migration have been identified, viz. – ETL process for data transfer from legacy to cloud platform, and enterprise system integration. Each of the process has been analyzed further in detail by deep-diving technique to illustrate the best practices associated for each of the steps of the processes. The migration initiative begins with selection of type of license an enterprise requires to buy. Table-2 in Appendix-2 documented the license selection criteria. First process in the Salesforce migration is ETL process. Identification of the best practices in ETL process is outline below –
Is ETL tool is better than custom developed SQL? For high transaction domain ETL tool with custom written transformation logic is the best direction.
Which ETL tool is best suited for this purpose? Table-1 in Appendix-2 defines the selection process. Also, “Migration best practices” section describes in detail.
An infrastructure setup best practice for data migration has been depicted in Figure-1 in Appendix-1.
Risk identification and mitigation best practices for data migration have been illustrated in “Risk mitigation strategies in data migration” section. Figure-7 in Appendix-1 has the corresponding Fishbone diagram.
Next process in the Salesforce migration is enterprise systems integration. Identification of the best practices in system integration process is shown below
Infrastructure setup best practices for system integration have been presented in pictorial format in Figure-2 in Appendix-1.
EAI methodology best practices have been illustrated in “Systems integration best practices” section.
Identification of risks and corresponding mitigation strategies discussed and concluded in “Risk mitigation strategies in enterprise system integration” section.
Strategic guide to migrate to Salesforce
13
Next, selection of SDLC has been identified by step-by-step analysis and documented in “Choice of SDLC” section. The work breakdown structure (WBS) has been shown in Appendix-3.
Conclusion Migration to Salesforce empowers the end-user with the multifaceted advantages, such as centralized unified view of the customer at every enterprise-customer touch points, reduce time-to-market by employing configuration based solution, lowers TCO by eliminating of high data center cost, and boost in ROI by lowering TCO. However, the astounding complexities of the migration process and lack of available comprehensive knowledge-base overshadowed the benefits of the Salesforce migration, which advocates the need of a strategic guideline for migration. Generation of best practice guide for Salesforce migration is a two-step process - selection of the right ETL tool along with designing the legacy data migration strategy, and an optimal choice of EAI for enterprise system integration. In order to build a comprehensive best-practice guide, a careful side by side evaluation of each of the approaches has been made using respective pros and cons along with risk and cost analysis to yield the best of breed migration solution. In conclusion, this strategic guideline can be treated as a Salesforce migration Bible for the future migrations. It will eliminate the unknowns in the migration process; as well as, it will provide a reusable cost estimation template to the leadership.
Strategic guide to migrate to Salesforce
Reference: Anonymous, (2010). Dream more with winter ’10, Salesforce White Papers. Retrieved from http://www.salesforce.com/community/assets/docs/Winter10_ReleasePreview.pdf Asbe, S. (2011), Siebel to Salesforce Migration - Benefits, Challenges and Best Practices. Tata Consultancy Services. Retrieved from - http://www.tcs.com/SiteCollectionDocuments/ White%20Papers/HiTech_Whitepaper_Siebel_to_Salesforce_Migration_06_2011.pdf Hofer, C., & Karagiannis, G (2011), Cloud computing services: taxonomy and comparison. J Internet Serv Appl. doi: 10.1007/s13174-011-0027-x Kendall, K. E., & Kendall, J. E. (2008). Systems Analysis and Design (3rd ed.). Upper Saddle River, NJ: Prentice Hall Khizhnyak, A. (2007, November), Dump your legacy CRM systems for Salesforce.com using open source tools. NetworkWorld. Retrived from http://www.networkworld.com/news/2007/110507-apatar.html Linthicum, D. S. (1999). Enterprise Application Integration. New York, NY: Addison-Wesley Professional Levin, J. (2008, March), ETL Tools Comparison. Pentaho Corporation. Retrieved from http://www.pentaho.com/docs/ Nash, K. (2008, April), TCO versus ROI. CIO. Retrieved from http://www.CIO.com Perry, R., Hatcher, E., Mahowald, R. P., & Hendrick, S. D. (2009), Force.com Cloud Platform Drives Huge Time to Market and Cost Savings. IDC White Papers. Retrieved from https://www.salesforce.com/assets/pdf/analysts/
14
Strategic guide to migrate to Salesforce
Appendix 1:
Figure 1: Data migration system setup
Figure 2: System integration physical setup
15
Strategic guide to migrate to Salesforce
Figure 3: Published reduction in TCO by using Salesforce (Perry, Hatcher, Mahowald, & Hendrick,
2009)
Figure 4: Saving comparison (Perry, Hatcher, Mahowald, & Hendrick, 2009)
16
Strategic guide to migrate to Salesforce
Figure 5: Data flow diagram of integrated system
Figure 6: System integration cause-effect diagram
17
Strategic guide to migrate to Salesforce
Figure 7: Data migration cause-effect diagram
Appendix 2: Table
18
19
Strategic guide to migrate to Salesforce
Qualitative comparison of ETL tools (Levin, 2008) Talend
Pentaho
Informatica PowerCenter
Inaplex Inaport
Cost Ease of use Data quality Risk Monitoring Connectivity Most preferred-
2nd choice-
Least preferred -
Table
Sr #
Selection of Salesforce license type (Hofer & Karagiannis, 2011) License selection questioners
1.
Does company have different groups with distinct sales processes customer and product?
2.
Does the company have a lead generation or service team that relies on a call script when initially speaking with customer?
3.
Does the company have a plan to integrate other enterprise systems with Salesforce?
4.
Does the company require complex data migration into Salesforce?
5.
Does the company require specific workflow or approval steps to automate processes?
6.
Does the company need greater control over user role and permissions?
Table
Use Cases in telecom domain requires integration with CRM system
Use Case
EAI preference
Strategic guide to migrate to Salesforce
Present offer to customer
Real time Webservice callout
Refresh product catalogue
Batch feed
Product pricing information
Real time Webservice callout
Order submission
Real time Webservice callout
Order completion
Real time Webservice callout
Order Rejection
Real time Webservice callout
Customer credit check
Real time asynchronous Webservice callout
Customer discount calculation
Real time synchronous Webservice callout
Update inventory record (Telephone#, Webhosting, etc)
Real time synchronous Webservice callout
Obtain Telephone# back
Real time synchronous Webservice callout
Setup Customer account in billing system
Real time synchronous Webservice callout
Update customer account in billing system
Real time synchronous Webservice callout
Provisioning of services
Real time asynchronous Webservice callout
Add/Change/Disconnect of existing user services
Real time synchronous Webservice callout
Appendix 3:
20
Strategic guide to migrate to Salesforce
WBS.mpp
The work breakdown structure
21