Rethinking Domain Management — From Risky Actions to Safe Flows

This project focused on designing a domain management system within a CMMS platform, where domains are used to organise maintenance operations and are directly linked to interventions. Managing domains is not just a configuration task — changes to domains impact existing data and workflows, making it critical to handle actions like deletion, merging, and restructuring carefully.

Context

Domains and subdomains define how maintenance activities are categorised across the platform. As the platform evolved, users needed more flexibility to restructure these domains without losing or corrupting existing data.

The system needed to support operations such as merging domains, transferring associated interventions, and managing hierarchical structures — all while maintaining clarity and preventing unintended data loss.

Details
Company:

B Desk (2025)

Role:

Solo Product Designer

Tools:

Figma

Domain selection in the settings

Problem

Users needed to modify domain structures after data was already in use, but existing actions like deletion could lead to loss of associated interventions.

The challenge was to design a system that allows users to safely restructure domains — including merging, transferring, and deleting — while preserving data integrity and making the consequences of each action clear.

On top of that, users also needed more flexibility in managing domain translations. They wanted to be able to view all language versions at once and easily edit them without navigating away or losing context. This introduced an additional layer of complexity, requiring the interface to support multi-language management alongside structural changes.

Challenge

The complexity came from the relationship between domains and interventions. Actions such as deleting or merging a domain had cascading effects across the system.

This required handling multiple edge cases, including:

  • transferring interventions between domains
  • creating new domains during restructuring
  • managing nested subdomains
  • ensuring users understand the impact of irreversible actions

At the same time, the interface needed to remain clear and usable despite this complexity.

Design Process

Mapping system logic

I worked closely with the CPO to understand how domain structures interact with interventions and what flexibility users needed when restructuring them. Based on this, I mapped out different scenarios and edge cases — including merging domains, transferring data, and handling deletion — to ensure all possible outcomes were accounted for before moving into design.

Designing safe operations

I focused on turning complex system behaviours into clear user actions. Instead of allowing direct deletion, I introduced safer alternatives such as merging domains or transferring associated interventions. Confirmation states were designed to clearly communicate the consequences of each action, guiding users through decisions rather than exposing raw system complexity.

Handling hierarchy and structure

Managing domains and subdomains required designing for nested relationships and scalable structures. I introduced expandable lists and clear hierarchy indicators to help users understand how domains are organised and how changes at one level impact the rest of the system.

Translations & multi-language management

To address the need for managing domain translations, I introduced a way to view and edit all language versions within the same context.

Users can switch between languages and update translations directly without leaving the flow, reducing friction and preventing context loss. This approach keeps multi-language management tightly integrated with domain configuration, rather than treating it as a separate task.

Collaboration & Validation

Throughout the project, I collaborated closely with the CPO to define product logic and validate different scenarios.

During the design process, I formed hypotheses around how users would understand and interact with domain restructuring and translation management. These were tested with real users through the CPO, who gathered feedback and shared insights that informed further iterations.

During implementation, I worked closely with developers to ensure that all edge cases — such as data transfer, validation, and system constraints — were handled correctly. This involved refining flows based on technical considerations and aligning on how complex operations should behave in real conditions.

Outcome

The final solution transforms a complex and potentially risky set of operations into a structured and safe system for managing domains, hierarchies, and translations.

Users can restructure domains without losing data, merge or transfer associated interventions with clarity, and manage nested relationships through a clear, scalable interface. At the same time, translations are integrated directly into the workflow, allowing users to view and edit multiple language versions without breaking context.

By making system behaviour explicit and guiding users through key decisions, the experience reduces the risk of errors while maintaining flexibility. The result is a cohesive system that supports complex operations while remaining clear, predictable, and scalable as the platform evolves.