DDD — Notes from the big blue book. Part 4

Notes from chapters 7 & 8

Chapter 7

  • When implementing the model- first work out the entities
  • Association traversal direction represents insight into the domain
  • Transactional boundaries are allowed to influence the domain model a little
  • Create modules based on domain relevance
  • Use anti-corruption layer to translate external systems to ubiquitous language
  • Don’t let domain rules creep into the app layer

Chapter 8

  • Objects in the domain are not immediately obvious e.g. ship and container were implementation details of a more abstract concept
  • Example explains how an incoherent model was wrestled into a model driven design
  • Embrace knowledge breakthroughs and radically change the domain model to reflect it
  • The breakthrough may cause short term delay — but will most likely be massively worthwhile
  • Breakthroughs may come after many small refactorings toward deeper insight
  • Breakthroughs can be the most important part of improving the model design
  • Breakthroughs can lead to other breakthroughs — this causes development speed to pick up where normally it would drop off