Introduction:
In the intricate tapestry of information systems, Domain APIs emerge as critical enablers of seamless read, command, and event processes. As we continue our exploration of digital transformation in different industry sectors (with insurance domain as our common example), it’s imperative to address the complexities that arise when multiple systems—old and new—coexist, particularly when managing dual masters
These scenarios are not uncommon in industries, where legacy systems operate alongside modern solutions, each potentially mastering the same entity – especially when the organisation is going through digital transformation
This post builds upon our previous discussion around the pivotal role of domain APIs and focuses on the strategies for navigating the dual master dilemma.
Options for managing information across multiple systems within a single domain:
Multiple systems within a domain can master the same entity or different entities. When business users operate these systems the create or change information related to either the same concept or different concepts related to the broader domain. For example, consider a domain where Case Management related information is handled – here we may have multiple other entities including Application Management (a draft case), Document Management etc
In the special case of coexistence during a digital transformation the old and new systems manage the same entity and we hit the dual master scenario. There are 3 key strategies for handling this challenge:
- Designating a True Master with Secondary Copy
- Bi-directional Synchronization Between Masters
- Managing Part of Entity Across Systems (state transfer)
Below we discuss these strategies in more details
1. Designating a True Master with Secondary Copy
Understanding the Strategy: In this model, one system is designated as the ‘true master,’ holding the primary record for an entity, while the other system maintains a secondary, read-only copy. This approach is particularly useful when clear ownership of data is required for core business operations, regulatory compliance, or when one system is more advanced in terms of data handling capabilities.

Pros and Cons: The primary advantage of this strategy is its simplicity and the establishment of a single source of truth, which greatly simplifies data governance and integrity. It reduces the complexity associated with data synchronization and conflict resolution. However, the downside includes the risk of data staleness in the secondary system and the potential for a single point of failure. Additionally, if the secondary system requires the ability to mutate data, this strategy could impose significant limitations.
2. Using Bi-directional Synchronization Between Dual-Masters
Understanding the Strategy: When both systems need to actively master and mutate data, bi-directional synchronization becomes necessary. This strategy allows each system to operate independently while ensuring that data remains consistent across the domain.

Pros and Cons: Bi-directional synchronization offers greater flexibility and resilience, as each system can continue to operate even if the other is down. It’s particularly beneficial in environments where systems are being gradually phased in or out. However, it introduces complexity in maintaining data consistency, especially in high-volume transaction environments. Conflicts may arise that require resolution, and the overhead of keeping systems in sync can be significant.
3. Managing part of the entity across Systems (state transfer)
Understanding the Strategy: Partitioning involves dividing the lifecycle of an entity across systems, with each system mastering different stages. For example, one system may handle the initial stages of an insurance application, while another takes over once the application is submitted.

Pros and Cons: This strategy allows systems to specialize in certain parts of the entity lifecycle, potentially optimizing performance and user experience. It can also ease the transition from old to new systems by clearly defining their respective domains of responsibility. The main challenge, however, lies in managing the handover points between systems, which can become complex and require robust integration mechanisms. Additionally, it may be difficult to obtain a unified view of the entity across its lifecycle.
Conclusion:
The coexistence of old and new systems within a single domain necessitates careful consideration of how entities are mastered and synchronized. By selecting the appropriate strategy—whether it’s establishing a true master, enabling bi-directional sync, or partitioning entity states—businesses can mitigate the challenges posed by dual masters. It’s crucial for organizations to evaluate their specific operational needs, data workflows, and the overarching goals of their digital transformation journey when deciding on a path forward.
In our subsequent discussions, we will delve deeper into the nuances of these strategies and how they can be effectively implemented to ensure a seamless and coherent operational environment during the transition period.