Manual Person Merge
SUMMARY
The Manual Person Merge functionality is designed to empower administrators by facilitating the identification and merging of duplicate records within the People model in a controlled manner. Key features include on-demand and user-initiated duplicate record identification, focusing specifically on the person object. The system adeptly manages cascading effects on related objects like company person and relationship person. Users have the flexibility to select records for merging, distinguishing winning and losing records at the person level. The process includes an impact analysis phase, providing users with insights into dependencies related to their choices.
MY ROLE
As the project designer, I worked on creating a better process for users to merge duplicate person data. I tackled complicated edge cases to ensure the process ran smoothly without errors. Our changes resulted in a significant 90% decrease in questions about merging, making things much more manageable for the support team. My focus was on improving the user experience and making operations run more efficiently for everyone involved.
PROBLEM OVERVIEW​
​
Due to persistent data ingestion and synchronization errors, the product dataset becomes contaminated with duplicate person records. While an automated solution for bulk person merge is under development, there is an immediate need for an interim tool to address and mitigate the influx of duplicate records, ensuring the cleanliness and integrity of the dataset.
​
What Pain Are We Solving For?
-
Duplicate records in the system database
-
Merging identified duplicate person records
-
Not able to identify winning record
-
Reduce the dependency on support
How Did We Validate The Pain and Develop a Proposed Solution?
-
Conducted interviews with customers 1-1 and through VCAM
​
What Are The Details of The Solution?
-
Person Merge feature that aims to help the admin search for duplicate records in the People model and merge within a limited scope
​
1. UNDERSTANDING MERGE
3 weeks
​
Research on Merge
Ideal User Journey
Merge Technicalities
Users
2. DESIGN
4 weeks
​
2 Approaches
Proposed Workflow
Lo-fi Wireframing
User Feedback
High-fi Wireframing
Final Design
3. DEV SUPPORT
​
​
Engineering Refinement
Dev Support
1. UNDERSTANDING MERGE
RESEARCH: SALESFORCE DUPLICATE CONTACT MERGE​
​
Referring to Salesforce, a leader in data management and integrations, I studied their duplicate person record merging process. Salesforce employs a person data merge pattern, empowering administrators to uphold record hygiene efficiently. By drawing insights from Salesforce's practices, we aim to incorporate effective strategies into our approach, ensuring a robust and streamlined process for merging duplicate person records within our system. This learning from industry leaders enhances our commitment to delivering a top-notch data management solution to our users.
Users employ a search bar to identify potential duplicate records within the system. Once identified, they have the flexibility to select the specific records they wish to merge, streamlining the process and allowing for a more targeted approach to resolving potential duplications. This user-initiated selection mechanism ensures a hands-on and customizable experience, empowering users to address duplicate records in a manner that aligns with their specific needs and preferences.
After users select the records for merging, they have the option to choose custom data fields they want to retain in the new merged record. This selection process allows users to tailor the merged record by choosing specific data fields that are relevant and necessary. Once the customization is completed, a new merged record is generated, incorporating the selected data fields from the original records. This user-driven customization ensures that the merged record aligns precisely with the desired information and meets the specific needs of the users.
IDEAL USER JOURNEY​
​
-
Admin lands on the Person Merge screen.(This is housed under the People admin section)
-
Admin feeds in the search parameters to get a list of records.
-
A list page displays the search results.
-
The admin selects the dataset to be merged and chooses the winning record from the same. Admin can select all the records or a subset from the total list of records shown.
-
The admin requests for Impact analysis for the chosen dataset. Impact analysis is an asynchronous process and will take time to produce the results.
-
The admin revisits the Person Merge page to view the impact analysis result.
-
The admin reviews the impact analysis and can change the winning record or enrich the winning record.
-
The admin submits the dataset for final merge and reparenting. This too being an asynchronous process will take time to produce the results.
-
The admin can visit the execution logs to view the status and details about the merge activities.
MERGE TECHNICALITIES: UNDERSTANDING PERSON RECORD MERGE​
​
The person data is structured into three distinct objects: 'person,' 'company person,' and 'relationship person.' Each of these objects is equipped with associated fields that hold pertinent data specific to the respective categories. This structured organization allows for a comprehensive representation of person-related information, covering individual details, company affiliations, and relationship dynamics within a unified framework.
CASCADING EFFECT OF MERGE AND REPARENTING IN THE PEOPLE DATA MODEL
​
When selecting a winning record at the Person object, it becomes the focal point for reparenting all other duplicate records across Company Person, Relationship Person, and other applications. The reparenting process, while resolving duplicates, may inadvertently create new duplicates at the Company Person (CP) and Relationship Person (RP) levels. This cascading effect is a natural outcome of the merge and reparenting actions, requiring careful consideration and management to maintain data integrity throughout the process.
​
How is the cascading effect handled?
​
Consider the table below
In the above table, Ronald and Ron are dupes in the person object, if the admin selects Ronald Weasley as the winning record, then during the reparenting process in the CP object, Ron Weasley will be reparented with Ronald Weasley. That is the PersonID value for 333 changes to 111 resulting in dupes in the CP object.
In the solution designed, the system will consider the record with PersonID 111 as the winning record even in the Company person object and will discard the record with PersonID 333.
​
In the above case, the admin does not lose any important data from the discarded duplicate record as the system will allow the admin to enrich the winning record at the Company Person level with attributes from the losing record.
​
IMPACT ANALYSIS
​
The impact analysis phase provides a detailed breakdown of dependencies for each selected record in the merge process. This includes dependencies like Company Person records, Relationship Person records, and external app associations such as Timeline and Cockpit entries. While the attributes of Company Person and Relationship Person records are displayed comprehensively, application dependencies show the number of associated entries.
Admins have the flexibility to enhance the winning record across Person, Company Person, and Relationship Person objects. During impact analysis, admins can modify the winning record based on the analysis results. The finalized dataset, along with reparenting, can be submitted for the ultimate merge.
A log screen is available for admins to track and review all merge activities, offering transparency and comprehensive insights into the merging process.
​
UNDO MERGE
​
There is no provision for the admin to undo any merge activity from the app. The duplicate records that get merged are deleted with only the winning record being retained.
STATUSES & NOTIFICATIONS
​
Email Notifications: Admin will be notified of the following:-
Impact Analysis : Successfully completed
Impact Analysis: Failed
Merge: Successfully completed
Merge: Failed
​
FAILED MERGE
​
Admin will have to reinitiate the merge process from the start. Admin will be provided with a quick action to restart. It will consider the same data set, winning record and enrichment data as was chosen.
CHALLENGE
​
I designed an illustrative example to address edge cases involving the maximum number of company duplicates. The focus was on developing a system that effectively merges these duplicates while ensuring a visually intuitive user interface. Special consideration was given to handling lengthy lists of fields, making them visible to users upon request. This approach aims to provide a scalable and user-friendly solution, accommodating various scenarios and maintaining clarity in presenting information, even in instances with extensive data.
USERS
​
Administrators emerge as the primary users of this feature, leveraging it as an integral aspect of their responsibilities in maintaining record hygiene. This tool empowers admins to efficiently manage and merge person data, ensuring data accuracy and consistency across the system. With a user-centric design, the feature streamlines the admin's tasks, enhancing their ability to handle record hygiene effectively within the organization.
Sarah
Gainsight System Administrator
Sarah is an experienced Gainsight System Administrator responsible for maintaining data integrity and hygiene within the platform. With a background in system administration and a deep understanding of Gainsight's capabilities, she plays a pivotal role in ensuring a seamless and accurate customer data environment.
Goals:
-
Data Integrity: Sarah's primary goal is to uphold data integrity by identifying and resolving duplicate person records within the system.
-
Efficiency: Streamlining processes is crucial for Sarah. She seeks efficient tools that simplify the merging of duplicate records, saving time and minimizing errors.
-
User-Friendly Interface: As a seasoned admin, Sarah values an intuitive and user-friendly interface. She needs the merge feature to be easily navigable and visually clear, allowing her to make informed decisions.
-
Flexibility: Sarah works with diverse datasets. The merge feature should be flexible, accommodating various scenarios, and allowing customization based on specific data needs.
Challenges:
-
Handling Large Datasets: Dealing with extensive customer data and multiple duplicates can be overwhelming. Sarah needs the merge feature to handle large datasets efficiently.
-
Cascading Effects: During reparenting, potential cascading effects in creating new duplicates at the Company Person and Relationship Person levels are a concern. Sarah needs a solution that addresses and mitigates these cascading effects.
Tech Savvy Level:
Highly proficient in using Gainsight and similar systems, Sarah is comfortable navigating complex data structures and managing administrative tasks.
​
Preferred Feature Attributes:
-
Customization: Sarah values the ability to customize merge actions and select specific data fields for retention.
-
Impact Analysis: A robust impact analysis tool is crucial for Sarah to understand dependencies before making decisions on merging records.
-
Logs and Tracking: Detailed logs and tracking functionalities are essential for Sarah to review and audit merge activities.
Preferred UI Elements:
-
Clear Visualizations: Visual representations of data dependencies and merge results aid Sarah in making informed decisions.
-
Request Visibility: When handling long lists of fields, Sarah prefers the option to reveal additional information upon request, maintaining a clean and accessible interface.
​Motivations:
Sarah is motivated by the prospect of maintaining a clean and organized customer data environment, enabling Gainsight users to make strategic decisions based on accurate and consolidated information.
2. DESIGN​
​
TWO WAYS OF EXECUTION
In implementing the Person Record Duplicates Merge feature within the Gainsight Person module, we considered two distinct approaches:
​
OPTION 1: Integrated within the Person List
​
We have the option to seamlessly integrate the feature into the person listing as a bulk action. This not only minimizes development efforts but also optimizes the module footprint, providing a streamlined user experience within the existing interface.
PROS
​
-
Directly accessible from the existing Person List, offering a seamless experience.
-
Users can search and select duplicates efficiently within the familiar environment.
CONS
​
-
The feature might need to coexist with other actions in the Person List, requiring thoughtful integration
OPTION 2​
​
Alternatively, we can introduce the merge feature in a dedicated space—a new "Person Merge" tab within the person settings. This not only allows for the maintenance of comprehensive logs but also ensures synchronization with other modules in Gainsight, providing a centralized and cohesive solution for managing person record merges.
​
PROS
​
-
Creates a dedicated space for logs, enhancing visibility and tracking of merge activities.
-
Allows for a new search window, potentially offering a specialized interface for duplicate identification.
CONS
​
-
Users may need to navigate to a different space, potentially impacting workflow efficiency.
-
Requires clear communication and training for users to adapt to the new space.
We decided to go ahead with option 2.
Decision Factors:
​
-
User Experience: Considering the impact on user experience and how seamlessly users can perform tasks within their existing workflows.
-
Visibility: Based on evaluating the visibility of logs and the ease of searching for duplicates in each approach.
-
Training Needs: Assess the training requirements for users to adopt either approach effectively.
-
Resource Utilization: Consider the allocation of resources and potential impacts on system performance and future releases
-
User Feedback: Based on internal and external user validation
FINALIZED WORKFLOW​
​
Recognizing that Customer Success Managers (CSMs) encounter duplicate records more frequently than admins, we devised a workflow to enable CSMs to notify admins about existing duplicates. Additionally, we are planning to automate the merge process. However, these enhancements are earmarked for the upcoming iterations in both Phase 2 and Phase 3 of the development cycle.
​
LO-FI WIREFRAMES​
I initiated the design process using low-fidelity wireframes to meticulously refine the workflow. The primary focus is on minimizing clicks and interventions, ensuring a simple and efficient user experience. This approach aims to streamline the interaction flow, making the entire process intuitive and user-friendly for seamless navigation.
I conducted multiple iterations to identify the optimal way of presenting scalable information in the user interface. Through these iterations, I aimed to refine the design to ensure that the UI effectively accommodates and displays varying amounts of information in a clear and user-friendly manner. This iterative process allows for continuous improvement, resulting in an interface that seamlessly scales to different data scenarios.
Horizontally Stacked tabs
Vertically Stacked tabs
FINAL DESIGNS​
​
The ultimate design achieves a seamless user experience, involving a fluid process of searching for users and selecting individuals for merging. Subsequently, the system conducts analysis and recommends a stronger record. Alternatively, it allows administrators to make an informed decision by choosing the preferable record themselves. This user-centric flow aims to simplify the merging process, providing flexibility for both automated suggestions and manual selection based on admin discretion.
1. Merge Home - Log screen
2. Search for Duplicates
3. Select Potential Duplicates and quick Merge
4. Select Winning Record in Quick Merge
5. Alternate Path - Impact Analysis
6. Review Person Data
7. Review Company Person and Relationship Person Data
8. Merged Log Screen
OUTCOMES​
​
The Person Merge project culminates in a sophisticated solution tailored for efficient data management within Gainsight. By seamlessly integrating the feature into the Person module, users can effortlessly identify and merge duplicate records directly from the familiar Person List. This not only reduces developmental efforts but also optimizes the module's footprint.
​
The design intricacies, refined through multiple iterations and low-fidelity wireframes, ensure a user-friendly experience. The final design streamlines the process, allowing users to search, select, and merge individuals effortlessly. The inclusion of a dedicated Person Merge tab within settings enhances log maintenance and synchronization across Gainsight modules.
​
Anticipating future needs, the project envisions empowering Customer Success Managers (CSMs) to notify admins about duplicates and automating the merge process in upcoming iterations. The outcome reflects our commitment to simplicity, efficiency, and scalability, aligning seamlessly with user workflows and enhancing overall data integrity within the Gainsight platform.
​
The implementation of the Person Merge feature led to a substantial reduction in the support team's workload, with a notable decrease of up to 90% in queries related to merging. This efficiency improvement signifies the success of the feature in empowering users to manage duplicate records independently, resulting in a more streamlined and self-sufficient process.