DDD – Part 2: One language to rule them all


In a previous post we discussed communication being key if we want to apply Domain-Driven Design into a project. Let’s dig a bit deeper on that, shall we?

We said that a model of a domain is consciously selected information from the domain itself, this information can have multiple shapes, let’s enumerate some of them:

  • A diagram using UML
  • A text document
  • A conversation recorded in a tape
  • A video of a domain expert talking about a subject related to our domain
  • A photo taken from a sketch in a blackboard
  • A wireframe of a user interface
  • and finally our code and artifacts

Often, a team that works together to solve a problem is composed of several people, but there are two roles that have a lot to say in terms of DDD: domain experts and developers. People in these roles use their own jargon when they speak to their equals. For instance, developers talk in terms of classes, methods, properties, tables, columns, rows, fields and so on while domain experts use the jargon of their field of expertise. A project can be at risk if its team do not use a common language and instead different members use their own specific terminology. The domain model is the common language and is what Eric Evans baptised as the Ubiquitous Language for the team.

The ubiquitous  language is something that has to evolve during the whole lifecycle of the software. At the beginning it will be difficult, because there are terms that domain experts are not used to because they are quite technical and the same for the developers because of the lack of knowledge about the domain. But we must persevere and the team will benefit from it.

So how can we capture this new lingo? Vaughn Vernon proposes some options as first steps:

  • Draw pictures of the physical and conceptual domain and label them with name and actions.
  • Create a glossary of terms with simple definitions. List alternative terms, including the ones that show promise and the ones that didn’t work, and why.

 



About The Author

Jordi Ruiz

I’m extremely passionate about knowledge; wherever I go, you will always find a book inside my trusty rucksack - it could be a technical book, a novel, essays; anything that broadens my mind and understanding.

Post a Comment

Note: Your email address will not be published.
Note: You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Subscribe

Logo

A software company with a simple goal: write good software to help our clients solve their domain problems.

We are people who are passionate and pragmatic with the job that we do.

Our Contacts

Amelia House
Crescent Road
Worthing
West Sussex
BN11 1QR
United Kingdom
Email: info@comment-it.co.uk