DDD and Microservices

http://gotocon.com/berlin-2015/presentation/DDD%20and%20Microservices:%20At%20Last,%20Some%20Boundaries!

Eric Evans

 

  • plus points for microservices
    • Autonomous teams with isolated implementation
      • Data sharing only through the queue
    • Acknowledge the rough and tumble of enterprises
      • The entire world will never be complete redesigned and tiny
    • "Cattle not pets" -> must serve and be tough
    • chance to think differently
  • How do different services understand each others messages?
    • context: The setting in which a word or statement appears that determines the meaning
    • bounded context: The conditions under which a particular model is defined and applicable
    • Translations needed:
      • partnership between teams ("partners")
      • Asymmetrical Relationship ("conforms")
      • Anti-Corruption Layer
  • "Models need to be clear, not big."
  • There are always multiple (smaller) models
  • "If I conform to a mess - what does it make me?"
    • Possible solution: introduce an AC Layer
  • Not all of a large system will be well designed
  • Contexts do not necessarily correspond to a single service - they might emerge from different services
  • Some people say, that microservices are mostly about creating logical boundaries
    • we've had decades to get that to work
    • sometines weak boarders are too tempting

 

Have a look at

  • BBoM: Big Ball of Mud

 

Ideas

  • Create Context Map