1. Piktiv
  2. /
  3. Insights
  4. /
  5. News
  6. /
  7. Tackling technical debt with DDD
lunchtalkerik1

Tackling technical debt with DDD (Domain Driven Design)

Erik Lissel

At Piktiv, people are very good at writing “clean code” and suggesting refactorings. But which refactorings are important to make, and what parts of the code are the most crucial?

The presentation had a practical focus towards actual code. Firstly it was established why business logic is important, and then how it can be elevated and protected in the codebase. After that, examples were given of poor and good alignment between the codebase and the actual business logic (such as poor naming, and implicit concepts). Then the consequences of poor alignment were demonstrated: 100% guaranteed future bugs, because of poorly constructed language.

Finally, a few definitions of Domain Driven Design were given, and then some of the core tenets of it were explored. A specific focus was put on the importance of developers working together with business people to come up with (and maintain) a model over the business.

In conclusion - if something is an important concept for the business, it should be given importance in the code as well. It should exist as its own entity, perhaps as a class, a module, or a function.

“This is not an inconvenience. These are future bugs.” - Erik Lissel