The Ubiquitous Language (UL) is a strategic pattern 𧩠coming with Domain-Driven Design (DDD). It aims to align people’s β all stakeholders β understanding regarding the business domain(s) implied. π¨βπΌπ©βπΌ
For instance, the business analyst could use the term “User” π§, the marketing person “Customer”, and the developer “Client” β all talking about the same thing!
And you know β ultimatelyβ the final product is based on the developer’s understanding. π»
Having a Ubiquitous Language will help to tackle any misunderstanding. Discovering or defining your Ubiquitous Language could be challenging and requires domain experts π΅οΈ around to make the “rich domain model” clear to everyone.
Once identified, it should be used by everybody, from everywhere β marketing documents π, code (classes, events, etc.), user interface and any communication.
Furthermore, be clear, sometimes the same term can be used in two different contexts (domain/bounded) but with different meanings. From the code perspective, it should be distinct “entities” living in their context. βοΈ
Workshops like EventStorming π©οΈ, could help identify your Ubiquitous Language and more with other DDD strategic patterns β it will soon be a post on my blog. π
Don’t forget clear communication π¨οΈ is often the key to any collaborative project.
Does the domain drive your developments?