Salesforce Migration Testing with iceDQ

Case Study

Summary

The acquisition of a large Brokerage Firm by one of the largest Bank in US, involved migrating millions of customers to a single Salesforce instance. Ensuring proper testing and certification was paramount for business continuity, regulatory compliance, and seamless customer experience.

iceDQ, an automated data testing platform, played a key role in the data migration testing. It had the native data connectivity and reconciliation capabilities to compare data across different environments of Salesforce, SQL Server, Data Lake, and Snowflake. It enabled automated data migration testing by not only performing complex checks but also ensured data accuracy at scale.

Automating with iceDQ led to impressive results:

TSB Drawing-03

figure 1

Background

In recent years, a large Brokerage Firm, with over 5 million customer accounts merged with one of the largest Bank in the US. Post merger the bank identified Salesforce CRM as one of the many redundant systems. It was decided to sunset one of the Salesforce systems and migrate to a single instance. It consisted of 5 million customer records with IDs, communications, and other essential data.

The Salesforce Migration Project

A major part of the project was sunsetting and migration of Salesforce instance, however there were additional projects that involved archiving legacy SF data and re-testing the impacted downstream systems.

TSB Drawing-03

figure 2

The scope of the Salesforce migration project involved the following 4 key sub-projects:

A. Sunsetting of the Brokerage Firm’s Salesforce instance and migrating its data to the Bank’s Salesforce Instance.
B. Archive and verification of the Firm’s Salesforce data to a SQL Server database.
C. Data reconciliation testing of the new data from Salesforce to Hive in Hadoop.
D. Data reconciliation testing of new Salesforce data from Hive data lake to Snowflake cloud.

Data Reconciliation Testing With iceDQ

Testing was required to reconcile the migrated data across the various target environments, ensuring data consistency and integrity. The migration spanned multiple platforms, including the Firm’s Salesforce instance, Bank’s Salesforce instance, and various target environments Bank’s SQL database, Hive Data Lake, and Snowflake cloud.

figure 3

iceDQ’s data reconciliation testing scope:

A1. Salesforce vs. Salesforce reconciliation.
B1. Salesforce vs. SQL Server database reconciliation.
C1. Salesforce vs. Data Lake (Hive) reconciliation.
D1. Data Lake (Hive) recon vs Snowflake reconciliation.

The project had additional data testing requirements such as:

1. The tool should offer native connectivity to Salesforce.
2. The data testing tool should be able to connect and reconcile across systems and cloud environments.
3. It should generate proof of testing necessary for regulatory compliance.
4. The tool should scale with the increasing data volume without creating performance and stability issues.
5. For test automation it should support low-code / no-code by automating the test creation, execution, and integration with test management tools such as JIRA.

A. Testing Salesforce to Salesforce Migration

iceDQ offers native support for Salesforce SOQL, allowing the testing team to write Salesforce’s custom query language within iceDQ. This enabled efficient and accurate testing by leveraging the team’s existing Salesforce expertise. The project involved migrating, testing, and certification of the following Salesforce objects:

Salesforce Objects Description
Case Customer support cases
Case Milestone Milestones associated with cases
Account Customer accounts
Opportunity Sales opportunities
User Salesforce users
Contact Customer contacts
Task Tasks associated with accounts or opportunities
Event Events associated with accounts or contacts
Email Message Email messages sent or received
Case Comment Comments added to cases
Additional Plan Detail Additional details related to plans
Attachments Attachments associated with various records

For the above SF objects, iceDQ was responsible for automating testing and verifying:

  • Object mapping for accounts, contacts, opportunities, etc.
  • Data mapping between both Salesforce systems.
  • Identifying, mapping, and translating reference data.
  • Assign new IDs for Firm’s accounts in the Bank’s Salesforce, while preserving legacy IDs in custom fields for historical reference.
  • All relationships needed to get mapped accurately. For example, when emails get migrated, Firm’s email IDs were replaced with the Bank’s contact IDs.
  • Creating documentation and testing proof for regulatory compliance and future audits.

Native Salesforce SOQL Support

iceDQ simplified data reconciliation by offering native Salesforce support. As illustrated in Figure 4, this functionality empowers users to leverage their existing Salesforce knowledge.

  • Section A: Sample snapshot of the familiar Salesforce workbench application.
  • Section B: Writing custom SOQL queries directly within the iceDQ interface.

This user-friendly approach streamlines the process, allowing you to quickly query Salesforce and conduct reconciliation tests tailored to your specific business needs.

TSB Drawing-03

figure 4

FIRM Salesforce to Bank Salesforce Data Reconciliation

iceDQ was able to connect two environments with their respective credentials. Figure 4 illustrates the data reconciliation process between Brokerage Firm Salesforce and Bank Salesforce.

  • In section A, the CONTACT_TABLE from Brokerage Firm’s Salesforce is selected as source.
  • In section B, the CONTACT_TABLE from the Bank’s Salesforce is selected as target.
  • The column “modid” is chosen as the diffjoin type.
  • In section C, the result type check is set to “A-B” and “B-A”. This ensures that all records in the Firm’s Salesforce CONTACT_TABLE are present in the Bank’s CONTACT_TABLE, and vice versa. This process verifies that the tables are exact replicas of each other after migration.

TSB Drawing-03

figure 5

B. Testing Legacy Salesforce to SQL Server Archive

To ensure data preservation, a crucial step involved backing up key data objects from the Firm’s Customer Service (CS) Salesforce instance to a dedicated Bank SQL database. Figure 5 illustrates this process:

  • Section A: The Firm’s “CONTACT_TABLE” is selected as the source data in Firm’s Salesforce.
  • Section B: The Bank SQL table is selected as the target where the data is migrated
  • The column “modid” is chosen as the diffjoin type.
  • Section C: Only the “A-B” result type is selected. This verifies that all data from the Firm’s Salesforce table (source) has
    been successfully migrated to the Bank SQL table (target).

TSB Drawing-03

figure 6

C. Testing Salesforce to Hive Data Lake Sync

To maintain data alignment post-migration, Bank’s Salesforce instance synchronizes key objects with the Bank Data Lake (HIVE). This includes user information, customer contacts, tasks, and account information cards, ensuring both environments reflect the latest data. Figure 6 illustrates this process:

  • Section A: The Bank Salesforce Instance table is selected as the source data.
  • Section B: The Hive Data Lake is selected as the target where the data got migrated. Here, “id” is chosen as the diffjoin type.
  • Section C: Only the “A-B” result type is selected. This verifies that all data from the Bank’s Salesforce instance (source) has been successfully migrated to the Hive Data Lake (target).

TSB Drawing-03

figure 7

D. Testing Hive Data Lake to Snowflake Migration

Comparison of Salesforce data in the Bank’s Data Lake (HIVE) with the Snowflake environment to ensure data consistency. Figure 7 illustrates this process:

  • Section A: The Hive Data Lake table is selected as the source data.
  • Section B: The Snowflake Salesforce table is selected as the target where the data got migrated. Here, “id” is chosen as the diffjoin type.
  • Section C: The result type check is set to “A-B” and “B-A”. This verifies that all data from the Hive Data Lake (source) has been successfully migrated to Snowflake (target).

TSB Drawing-03

figure 8

iceDQ’s Implementation Outcomes on Overall Testing, Compliance, and Integration

Data Reconciliation Across Systems and Cloud: To achieve seamless integration, iceDQ integrated with various data sources and destinations through its built-in connectors. These include source Salesforce instances, target environments like Bank SQL, Data Lake, and Snowflake, and existing team interfaces.

Data Volume Testing: The migration involved a massive volume of data, including millions of customer records, communications, and other entities. Full volume testing was crucial to validate the accuracy and completeness of the migrated data.

Proof of Testing & Regulatory Compliance: For highly regulated financial firms, ensuring regulatory compliance and audit readiness is paramount during major data migrations. iceDQ successfully documented the testing activities:

  • It met the data privacy, security, and integrity regulations.
  • It generated audit trails demonstrating compliance.
  • It maintained operational resilience and business continuity.

Data Test Automation: Leveraging iceDQ’s user-friendly interface, customizable data checks and automated testing ensured accurate data migration and streamlined workflows. Let’s delve deeper into these benefits:

  • 1. Seamless Adoption: iceDQ’s support for Salesforce query language enabled quick adoption by the QA team already familiar with Salesforce tools.
  • 2. Advanced Validation: Powerful features like Expressions and User-Defined Functions (UDFs) empowered the team to perform advanced data checks, data clean-up, and precise data element validation beyond basic manual testing.
  • 3. Customization: The team implemented custom validation rules based on business needs and data quality standards, tailoring iceDQ to their specific requirements.
  • 4. Automated and Integrated Workflow: iceDQ seamlessly integrated with existing interfaces, enabling automated data checks triggered from familiar environments and streamlining exception handling and discrepancy review.
  • 5. Efficient Testing: Parameterized testing capabilities facilitated efficient testing for year-based batch migrations by modifying a single parameter instead of repetitive rule creation.

iceDQ’s Impact on the Project

In an M&A, the efficient integration of acquired entities unlocks faster synergy realization, giving you a competitive edge. By leveraging iceDQ’s automated data migration testing, the bank was able to:

  • Minimize disruptions to ongoing business operations.
  • Maintain a positive customer experience.

Achievements and Gains:

100% Data Testing Automation Automation with iceDQ freed up QA resources from repetitive tasks, allowing them to focus on higher value activities.
100% Test Coverage The bank achieved 100% test coverage, ensuring every data point was rigorously checked against predefined business rules. This eliminated the need for reliance on sample data testing.
66% Reduction in Project Timelines Automated testing with iceDQ streamlined the process, resulting in a 66% reduction in project timelines (from 6 months to 2 months).
40% Less QA Resources QA resources required for the project reduced from 5 resources to 3 resources.
$172,800 Direct Savings Direct cost savings calculated based on reduction of 2 resources at $90 per / hr.

About iceDQ

iceDQ empowers organizations to ensure data trust and reliability throughout the data life cycle.

Our comprehensive platform combines data testing, data monitoring, and data observability into a single solution, enabling data engineers to proactively manage data quality and eliminate data issues before they impact business decisions.

Leading companies across industries, including prominent players in banking, insurance, and healthcare, rely on iceDQ to continuously test, monitor, and observe their data-driven systems. This ensures trustworthy data that fuels informed decision-making and drives business success.

iceDQ Use Cases

  • Data Testing
  • ETL & Data Warehouse Testing
  • Cloud Data Migration Testing
  • BI Report Testing
  • Big Data Lake Testing
  • System Migration Testing
  • Data Monitoring
  • Data Observability

TSB Drawing-03

figure 9

About the author

Sandesh Gawande

Sandesh Gawande is the Founder and CEO of iceDQ, a unified Data Reliability Platform for automated data testing, monitoring, and observability. With over 25 years of experience in data engineering and architecture, Sandesh has led large-scale data initiatives for Fortune 500 companies across banking, insurance, and healthcare, including Deutsche Bank, JPMorgan Chase, and MetLife.

Know More

Sandesh Gawande - CTO iceDQ

Sandesh Gawande

CEO and Founder at iceDQ.
First to introduce automated data testing. Advocate for data reliability engineering.

Share this case study