How Ubiquitous Language Can Solve Your Miscommunication Issues
When someone asks me what Domain-driven design is for, I always tell a story that happened to me once. I joined a new project and had long onboarding meetings where I was told what was already in p...

Source: DEV Community
When someone asks me what Domain-driven design is for, I always tell a story that happened to me once. I joined a new project and had long onboarding meetings where I was told what was already in place and what should be done. The language of communication was English. I am not a native English speaker, but by that time, I hadn't had any issues in communication. I was trying hard to understand the current system infrastructure, architecture, and future requirements. There was no documentation, and the only source of truth was verbal discussion. Soon, I've noticed something unclear. First, I've discovered a tenant as a part of a multitenancy setup - a customer who owns a dedicated instance of software. Then another meaning of "tenant" emerged: a person or company who rents an apartment. Both, also, could occasionally be called users, which confused me even more. When I finally understood what was happening and pointed out that we have this ambiguous naming, the person I was speaking to