Project organization is integral for effective collaboration. When related design files are siloed from each other, it restricts the sharability of repeated assets and data. This means there’s lots of time spent duplicating content and managing a workspace vs more time for design. This planted the seed for Domains - a new way to organize your workspace in Voiceflow.
The Workspace Investigation
We found that most Teams organized their workspace in 2 ways:
Case 1: Organizing by Line of Business (LOB) or Channel
Teams created different workspaces based on LOB or Channel, which might look like:
Example 1: Organizing by Channel
Workspace 1: IVR
Workspace 2: Webchat
Example 2: Organizing by LOB
Workspace 1: Cellular Services
Workspace 2: Internet Sevices
A core pain point for this case: content is split up across projects, even when files ladder up to the same Assistant experience. Unlocking cross-sharing of content (NLU, Responses, Components) becomes a major focus for maintaining consistency across projects.
Case 2: One workspace wonder
Teams might put all their work, regardless of channel or LOB, into a single workspace. Design files are usually organized by workflow status and dashboard columns function as a Kanban board. This is typical of Teams that work on various portions of broader automation initiatives.
While using the dashboard as a Kanban board helps categorize a project’s current state, the workspace itself can quickly become overwhelming to navigate - particularly for new Teammates or stakeholders.
Domains: Unlocking Team Efficiency
Domains help resolve the pain points in both of these cases by letting you consolidate multiple siloed designs into a focused Assistant (Project) file - all while maintaining groupings for your Topics. You can think of Domains as folders that let you organize Topics into subject areas (e.g. Billing, Order Inquiry).
With Domains, your new organization hierarchy will look like this:
- Project = Assistant (Line of Business, Channel)
- Domain = Subject area / bundle for Topics
- Topic = Use cases / themes within the subject area
- Intent = Granular/specific flow within a Topic
Lets walk through a before and after example for a banking chat assistant:
In your current workflow:
You may have a workspace called ‘Banking Chat Assistant’, within it, you have discrete projects like Welcome Flow, Load Funds, Account Balance, Cancellations
Within a project, you might create granular Topics. For example, the Account Balance project may house Topics like: Check Balance, Last Month’s Bill, Last 30 transactions etc…
With the new addition of Domains:
Your project becomes the Banking Chat Assistant which would nest Domains like: Welcome Flow, Load Funds, Account Balance, Cancellations.
Each Domain houses a set of Topics, similar to how projects bundle Topics today. Components and NLU data (Intents, Entities, Variables) are shared across all Domains in the Banking Chat Assistant and eliminates duplicate effort for management and maintenance.
Domains let you centralize your Assistant experience as a single design file - one that shares Components and NLU data, and has unified canvas search and cross-Domain navigation actions (Go-to Block, Go-to Intent). This reaps major team efficiencies as there’s less time copying and pasting across multiple project files and more time collaborating on what matters. Moreover, you’re able to import bulk NLU data and have the data be available across Domains - improving the robustness of your design, prototyping, and testing experience.
How to Use Domains
In your canvas-view, you’ll see a dropdown in the header that shows all the existing Domains in your Assistant. Clicking on a Domain will let you view its Topics on canvas.
Here are some items you can configure for Domains:
- Rename: relabels ****the ****Domain
- Duplicate: clones the Domain in the project
- Draft/Live mode: Controls whether the Domain is accessible to end-users in your production Assistant (Doesn’t impact in-app tests and shareable prototypes)
Two-click Migration Workflow
For existing projects, there’s a 2-click method to help you quickly merge your files.
On the dashboard, select the “Convert to Domain” option in the project’s options menu. You’ll see a modal with all the destination projects you can potentially merge with.
Note: You can only merge projects of the same type/modality (e.g. Chat with Chat, Voice with Voice etc…)
Once the merge is complete, the content and data from your original project is cloned inside the destination project file. We recommend you delete the old file to avoid confusion and duplication.
Guide to Getting Started with Domains
Here’s a quick 1-2-3 guide on getting started with Domains and overall best practices for workspace organization.
Challenge your current structure
- How are you grouping / organizing your projects today?
- Which of your projects share components or NLU data?
- Do an internal audit of your team style and document what’s working and not
Choose your destination design file
- Think of how you want to migrate your projects
- Nested as a Domain
- Starting fresh (net new & bucket)
- Maturity of data / design size
- Stakeholder visibility
- Use the conversion workflow to merge projects as Domains
- Review your design files to make sure data and content has merged correctly
- Review this new structure with your team and start building!
With these latest improvements, Domains add a middle layer of organization in the Voiceflow workspace, improving share-ability, eliminating project siloes, and management work. You can read more about this release here.
Give it a try and let us know what you think!