Multi-Entity for Sitecore Search
From Vision to Scalable Design
Background
Reflektion’s platform initially managed products as a single entity type. With Sitecore’s acquisition, the team faced the challenge of shifting to support multiple entity types in the content realm. As the designer leading this project, I collaborated closely with product managers and engineers to ensure the platform scaled effectively while maintaining a user-friendly experience.
The Challenge
Adding Content Entity Support to a Product-Centric Platform
When Sitecore acquired Reflektion, integrating content entities alongside products brought a significant challenge. Originally, the platform was product-centric, with all attributes tailored around products. The shift to multi-entity support required accommodating a broader range of entities such as blogs, videos, images, and sometimes products as well, each with unique attributes, relevance criteria, and presentation requirements. The goal was to reimagine the platform in the new multi-entity world while ensuring usability for our users: tech admins. While they understood the technology, these users needed tools that could handle growing complexity efficiently without adding unnecessary friction.
Designing for Multi-Entity: A Rapid, High-Fidelity Approach
I tackled the challenge of designing for this multi-entity world with a high-fidelity-first, demo-driven, rapid prototyping approach called the “Mental Model Approach.” This method focused on developing high-level concepts first, followed by detailed prototypes to spark imagination, explore challenges, and refine solutions iteratively throughout the project lifecycle.
The Process:
- Mental Model Prototyping: High-level prototypes were developed to explore how existing features could adapt to the multi-entity framework. These concepts “looked final” but were not exact representations, encouraging stakeholders to visualize possibilities and uncover challenges early on.
- Internal Review: Mental models became the focal point for discussions with stakeholders—including the CTO, PMs, engineers, and customer success teams. These reviews helped identify gaps, refine priorities, and align the team’s vision.
- Golden Thread Demos: Detailed, iterative prototypes addressed specific user workflows and scenarios. These demos ensured continuous validation and refinement, emphasizing critical interactions while leaving less pressing questions for future exploration.
- Final Design Specification: After multiple rounds of validation, a final design document was delivered. It included nitty-gritty details, such as error reporting, to ensure usability at a granular level and provide engineers with a clear, actionable blueprint for implementation.
Visualizing the Multi-Entity Future
The goal was straightforward: reimagine the current product’s features to support multiple entities. Initial conversations with stakeholders helped identify three key areas:
- Supporting multi-entity widgets on end-user websites.
- Enabling feature configuration and global settings for multi-entity scenarios.
- Displaying analytics for multiple entities in a clear, actionable way.
This mental model was a collaborative effort with another designer. I focused on two key areas: supporting multi-entity widgets and enabling feature configuration and global settings.
Early-stage mental model showcasing multi-entity search results with facet-like entity selection and attribute browsing.
Aligning Stakeholders on the Multi-Entity Vision
The mental model demo became a catalyst for stakeholder engagement. Walking through the prototype with the CTO, PMs, engineers, and customer success team sparked discussions, clarified priorities, and shaped the project’s scope.
Key Insights:
- Navigation between entities should remain simple and universal, like a dropdown menu.
- Entity switching shouldn’t disrupt light users who don’t need multi-entity support.
- A straightforward flow for entity creation and management was critical to reducing complexity.
The mental model demo also validated that placing entity switching higher in the hierarchy would be too cumbersome. Instead, switching entities at the feature level kept the interface lightweight and intuitive, minimizing engineering overhead while preserving flexibility for advanced users. Internal users agreed that this approach struck a balance between development resources and system capabilities, as it did not require significant front-end rework. Additionally, it ensured that light users who did not interact with multiple entities retained the same interface, avoiding unnecessary complexity for them.
Iterating Towards a Scalable Multi-Entity Experience
Addressing the Easy Wins
Using insights from the mental model stage, I moved into detailed prototyping. Two key decisions were validated quickly:
- A universal dropdown for entity navigation across all features.
- Tabbed layouts for search widgets and other multi-entity components.
These elements expanded naturally to areas like attribute management and feature configuration, simplifying the user experience while maintaining functionality.
Universal dropdown and tabbed layout for preview search widget on the Sitecore Documentation site.
Tackling the Hard Problems
The area that required the most effort was the flow to introduce multi-entity functionality to users, allowing them to build and manage their own entities. I created a detailed flow for full customization of entities, including their creation and management. This served as a conversation starter, similar to the initial mental model demo, and allowed me to gather real requirements from internal users. Key insights included:
- Over-customization could lead to data management issues; users needed clear guidance and guardrails.
- Users required visibility into the attributes included within each entity, even during the creation stage.
- Technically, entities could not be left incomplete, presenting a constraint that influenced the design.
Based on this feedback, I iterated rapidly to incorporate the following solutions:
- Default Entities: Introduced as a baseline setup to reduce user workload while still allowing customization. This concept extended to the original Product realm and was adaptable to the e-commerce side of the platform.
- Attribute Visibility: Designed an interface to show attributes during the creation and management of entities, improving transparency.
- Validation Constraints: Ensured that custom entities included basic attributes, such as name and ID, upon creation to minimize user effort and meet technical requirements.
These solutions balanced user needs with technical constraints, simplifying workflows for products and content while maintaining flexibility. Attribute previews provided clarity, and default setups reduced friction during the entity creation process, all of which were validated through rounds of discussions and demos with internal users.
Entity creation and management interface.
Results and Validation
The golden thread demos served as a continuous validation process, with feedback sessions held weekly over three weeks. Stakeholders and internal users praised the proposed solutions, noting their balance between flexibility and simplicity.
Outcomes:
- Streamlined navigation across all features through a universal dropdown.
- A scalable foundation for multi-entity support via optimized entity management flows.
- Extended multi-entity support to major features such as rules, widgets, pages, and recipes, further broadening the platform’s functionality.
Â
Expanding multi-entity support to include recommendation widgets and recipes.
A snapshot of parts of the scope and final deliverables.
Key Takeaways
- Start Big: High-fidelity mental model prototypes helped align stakeholders and sparked meaningful discussions.
- Iterate Rapidly: Weekly validation through golden thread demos kept the project grounded in real-world needs.
- Understand the User: Considering the tech admins’ mental models ensured the design met their needs without overwhelming them.
- Simplify: Small changes, like a universal dropdown, can have an outsized impact on user experience.
- Adapt: Listening to users’ needs led to impactful features like default entities and attribute previews.
Next Steps
The project laid a strong foundation for multi-entity support, but there’s more to come. The next phase includes building a dedicated onboarding flow for the initial setup with multi-entity support, which includes an introduction to the major features in the multi-entity world—using the same mental model and rapid prototyping approach to ensure continued success.