One of the central insights from Domain-Driven Design is the role of language and domain-specific terminology in both understanding the problem and designing the solution. But what do you do when customers don't share a language?
In 2015, we launched an innovative new product into the Australian Fintech landscape - a healthcare & disability insurance claiming platform to simplify life for support providers, recipients and insurers.
It was intended that a heterogeneous group of support providers and insurers would engage with the platform - from doctors to physiotherapists to disability support workers on one side, and private insurers and state or federal government departments on the other.
Although the high-level process for each of these groups was similar, the extant rules, terminology and UX scenarios varied.
In this talk, we'll do a deep dive of the domain-modelling journey we went on, starting with aligning the model with our first customer, evolving it with our second, and radically reinventing it with our third. We'll explore how Domain-Driven Design helped in the system design and how we balanced the tradeoffs between specificity and genericness.